1.漏洞描述
Discuz!ML是一个由CodersClub.org创建的多语言,集成,功能齐全的开源网络平台,用于构建像“社交网络”这样的互联网社区。
2019年7月11日, Discuz!ML被发现存在一处远程代码执行漏洞,攻击者通过在请求流量的cookie字段中的language参数处插入构造的payload,进行远程代码执行利用,该漏洞利用方式简单,危害性较大。
2.原理
由于Discuz! ML对于cookie字段的不恰当处理造成的
cookie字段中的language参数未经过滤,直接被拼接写入缓存文件之中,
而缓存文件随后又被加载,从而造成代码执行
3.影响版本
Discuz! ML v.3.4
Discuz! ML v.3.3
Discuz! ML v.3.2
4.利用过程
简而言之,通过cookie传入payload,构造好的payload被写入template文件中:
注意这是国际版的,不是国内的那种,一般要有语言选择的才行,大部分都是国外的论坛
类似于有这种的
问题出在
XXXX_language=
测试PAYLOAD
XXXX_language='.phpinfo().';
XXX自己改一下