admin 发表于 2020-8-10 09:14:29

Discuz!X3.x全版本后台UC漏洞SQL注入写文件[截至X3.4 R20191201]

1、简述Discuz! X系列全版本 截止到 Discuz! X3.4 R20191201 UTF-8二次注入利用条件有限,还是挺鸡肋的。2、复现环境同上3、漏洞复现

报错注入:


写文件:


4、漏洞分析漏洞原因:经过addslashes存入文件中,从文件中取出字符,转义符号丢失,造成二次注入由前几个的分析已经明白了dz的路由形式,此处的路由解析如下:?action=xxx => ../admincp_xxx.php跟进source/admincp/admincp_setting.php,2566行,接收参数修改UC_APPID值。$configfile = str_replace("define('UC_APPID', '".addslashes(UC_APPID)."')", "define('UC_APPID', '".$settingnew['uc']['appid']."')", $configfile);

      $fp = fopen('./config/config_ucenter.php', 'w');
      if(!($fp = @fopen('./config/config_ucenter.php', 'w'))) {
            cpmsg('uc_config_write_error', '', 'error');
      }
      @fwrite($fp, trim($configfile));
      @fclose($fp);
成功写入恶意UC_APPID后,执行更新读取新的配置信息,3415行:if($updatecache) {

      updatecache('setting');
最后在uc_client/model/base.php的note_exists方法中触发注入function note_exists() {
      $noteexists = $this->db->result_first("SELECT value FROM ".UC_DBTABLEPRE."vars WHERE name='noteexists".UC_APPID."'");
      if(empty($noteexists)) {
            return FALSE;
      } else {
            return TRUE;
      }
    }

页: [1]
查看完整版本: Discuz!X3.x全版本后台UC漏洞SQL注入写文件[截至X3.4 R20191201]

创宇盾启航版免费网站防御网站加速服务