漏洞描述
Discuz ML! V3.X存在代码注入漏洞,攻击者通过精心构建的请求报文可以直接执行恶意的PHP代码,进一步可获取整个网站的服务器权限。
漏洞影响版本:
Discuz!ML v.3.4 、Discuz!ML v.3.2 、Discuz!ML v.3.3 product of codersclub.org
漏洞验证
本地搭建环境,进行请求报文的构建执行phpinfo()代码,成功的复现了该漏洞
无害化PoC自我检查代码(误报较高):
# -*- coding: utf-8 -*-
#Author: key
#Team: Mystery Security Team
#Blog: gh0st.cn
#Email: admin@gh0st.cn
#Usage: python poc.py url
import requests,sys
def poc(url):
u = url + "/forum.php?language=en"
r = requests.get(u,allow_redirects=False,headers={"User-Agent":"Mystery Security Team"})
if "language=en" in r.headers['Set-Cookie']:
print "{0} is vulnerable!".format(url)
if __name__ == '__main__':
poc(sys.argv[1])
使用方法:python poc.py 网址
自我检查
修复建议
目前官方未推出修复补丁,可时刻关注:https://bitbucket.org/vot/discuz.ml/commits/all,建议暂时关闭外网服务,暂时下线业务,等待官方补丁。