FineCMS SYS_KEY未初始化导致任意文件写入

颓废 2019年5月19日10:10:49评论480 views字数 1398阅读4分39秒阅读模式
摘要

文件:finecms/dayrui/controllers/Api.php 文章来源:0day5.com/archives/4421/

文件:finecms/dayrui/controllers/Api.php

/**  * 自定义数据调用(新版本)  */ public function data2() {       $data = array();       // 安全码认证     $auth = $this->input->get('auth', true);     if ($auth != md5(SYS_KEY)) {         // 授权认证码不正确         $data = array('msg' => '授权认证码不正确', 'code' => 0);     } else {         // 解析数据         $cache = '';         $param = $this->input->get('param');         if (isset($param['cache']) && $param['cache']) {             $cache = md5(dr_array2string($param));             $data = $this->get_cache_data($cache);         }         if (!$data) {               if ($param == 'login') {                 // 登录认证                 $code = $this->member_model->login(                     $this->input->get('username'),                     $this->input->get('password'),                     0, 1);                 if (is_array($code)) {                     $data = array(                         'msg' => 'ok',                         'code' => 1,                         'return' => $this->member_model->get_member($code['uid'])                     );                 } elseif ($code == -1) {                     $data = array('msg' => fc_lang('会员不存在'), 'code' => 0);                 } elseif ($code == -2) {                     $data = array('msg' => fc_lang('密码不正确'), 'code' => 0);                 } elseif ($code == -3) {                     $data = array('msg' => fc_lang('Ucenter注册失败'), 'code' => 0);                 } elseif ($code == -4) {                     $data = array('msg' => fc_lang('Ucenter:会员名称不合法'), 'code' => 0);                 }             } elseif ($param == 'update_avatar') {                 // 更新头像                 $uid = (int)$_REQUEST['uid'];                 $file = $_REQUEST['file'];                 //                 // 创建图片存储文件夹                 $dir = SYS_UPLOAD_PATH.'/member/'.$uid.'/';                 @dr_dir_delete($dir);                 if (!is_dir($dir)) {                     dr_mkdirs($dir);                 }                 $file = str_replace(' ', '+', $file);                 if (preg_match('/^(data:/s*image//(/w+);base64,)/', $file, $result)){                     $new_file = $dir.'0x0.'.$result[2];                     if (!@file_put_contents($new_file, base64_decode(str_replace($result[1], '', $file)))) {                         $data = array(                             'msg' => '目录权限不足或磁盘已满',                             'code' => 0                         );                     }

FineCMS SYS_KEY未初始化导致任意文件写入

FineCMS SYS_KEY未初始化导致任意文件写入

文章来源:0day5.com/archives/4421/

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
颓废
  • 本文由 发表于 2019年5月19日10:10:49
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   FineCMS SYS_KEY未初始化导致任意文件写入http://cn-sec.com/archives/68432.html

发表评论

匿名网友 填写信息