Discuz ML! V3.X 代码注入漏洞复现

一、漏洞概述

2019年7月11日, Discuz!ML被发现存在一处远程代码执行漏洞,
攻击者通过在请求流量的cookie字段中的language参数处插入构造的payload,
进行远程代码执行利用,该漏洞利用方式简单,危害性较大。
本次漏洞是由于Discuz! ML对于cookie字段的不恰当处理造成的
cookie字段中的language参数未经过滤,直接被拼接写入缓存文件之中,
而缓存文件随后又被加载,从而造成代码执行

漏洞影响版本:
Discuz!ML v.3.4 、Discuz!ML v.3.2 、Discuz!ML v.3.3 product of codersclub.org


二、漏洞复现

本地搭建Discuz!ML 环境

在主页进行抓包,修改Language的值,添加 '.phpinfo().'
成功复现该漏洞


三、漏洞修复

由于代码包含的原因,所以注入到缓存文件中的恶意代码直接执行,其中首页就有包涵,
全局搜索一下的话,应该有不少地方有进行包含可以直接利用,危害很大。
VulkeyChen师傅的建议:单看语言这个点,在/source/class/discuz/discuz_application.php
第338行之后341行之前加入该代码暂缓此安全问题:

$lng = str_replace("(","",$lng);
$lng = str_replace(")","",$lng);
$lng = str_replace("'","",$lng);
$lng = str_replace('"',"",$lng);
$lng = str_replace('`',"",$lng);

参考文章

Discuz ML! V3.X 代码注入漏洞深度分析
Discuz ML! V3.X 代码注入漏洞


   转载规则


《Discuz ML! V3.X 代码注入漏洞复现》 dylan 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
dedecms V5.7-UTF-8-SP2 命令执行漏洞复现 dedecms V5.7-UTF-8-SP2 命令执行漏洞复现
一、漏洞概述 二、漏洞分析环境搭建这里不再赘述,搭建好后访问网站主页 dedecms默认的后台是/dede,没有修改直接访问登陆 根据公开的漏洞知道tpl.php里面251-281行存在代码执行漏洞,打开tpl.php文件 代码分析 (1
2019-07-23
下一篇 
Github分支备份hexo Github分支备份hexo
一、前言使用hexo搭建个人博客框架,配置起来有些消耗时间,管理起来也不是特别方便。特别是有时需要在其他电脑上写博客时,就让人头疼。所以我们就利用Github的分支,来备份hexo,方便快速搭上手写博客。 二、创建本地分支目录1. 新建文
2019-07-05
  目录