1.Discuz!ML 3.x任意代码执行漏洞之大佬分析之后我分析
2.泄露《GTA6》人员叫嚣R星,小表期待来一场交易谈判,哥源R星会如何应对?
Discuz!ML 3.x任意代码执行漏洞之大佬分析之后我分析
首先附上米斯特安全大佬们文章的表哥链接,刚开始有些东西我没看的小表太懂,于是哥源我就再添了点东西,希望像我一样的表哥twaver.js源码小白也能看懂。
一、小表漏洞综述
漏洞类型:代码执行漏洞
影响系统及版本:Discuz!ML V3.2-3.4
漏洞原因:Discuz!ML 系统对cookie中的哥源l接收的language参数内容未过滤,导致字符串拼接,表哥从而执行php代码。小表
二、哥源漏洞分析
根据米斯特大佬们提供的表哥报错界面,我对其中的小表三个报错点一一进行了分析,三个报错点如下图所示(还有米斯特大佬们的哥源水印)。
2.1 报错点一分析
发现首先是表哥caffe 源码编译portal.php函数出错,把这张图放大看,发现是对cookie中的language参数进行拼接而导致的报错,根据这个参数的语义判断应该是调用语言模板的时候因为找不到相应的模板而发生的错误,那么先定位portal.php报错的第行,该文件路径:
紧接着定位libfile函数,文件加载路径函数。
函数介绍:
libfile($libname, $folder = ”),包含2个参数:$libname 和 $folder,该函数读取source目录下的$folder子目录作为基础部分。
libfile函数源代码如下图所示:
DISCUZ_ROOT为定义网站根目录的常量,realpath函数为返回绝对路径函数,到此处第一个报错就已经分析完毕,原因是系统因为找不到一个php文件而报的错。
2.2 报错点二分析
还是getshell源码下载先根据错误定位到引用函数文件,文件路径source/module/portal/portal_index.php,然后定位到源函数所在的文件,引用的地方好定位,位置在/source/function/function_core.php,直接上图
然后这个函数写的还贼长,哎,没得办法,这个时候只能靠运气了,搏一搏,单车变摩托,首先百度,这个函数的作用也就是个调用模板的函数。
然而这个函数写了行代码,找个大表哥的kindle源码使用写的代码注释吧,先扔个参考链接 discuz.net/thread-...
此时我发现了思路有些繁琐,然后就去找第三个错误的提示内容,为了找到是哪里出了问题,我把这段代码放到了txt文件中,根据第三个错误提示的信息开始了全文搜索,终于,根据关键字tpl.php值搜索到一处与language这个函数语义有关的东西DISCUZ_LANG。
既然是语言参数出了问题,还是个常量,那就去找找常量定义的地方,全局搜DISCUZ_LANG,跟踪到/source/class/discuz/discuz_application.php
可以看到,将$lng的值给了DISCUZ_LANG,追踪$lng在何处定义,快租源码全局搜索$lng,找到了定义$lng的地方(图中第一个箭头)
到此为止,又出现个var,这是个啥,我只知道var[‘cookie’][‘language’]的意思就是cookie中的language的值。
以上可以分析出,从获取language到DISCUZ_LANG拿到值的过程中,并没有对其进行过滤。
那么现在必须确定报错问题是怎么出现的了,看下图:
出现了这样的代码,直接拼接,然后RCE
拼接单引号和'.phpinfo().'
按理来说可以RCE
总结下大概流程从cookie中获取了language的值,然后给了$lng,接着$lng又给了DISCUZ_LANG,系统通过template函数调用模板文件,template函数执行,执行到$cachefile的时候,执行构造的代码。
三、漏洞复现
访问站点www.***.com/forum.php,刷新页面抓包
*本文作者:xxx,转载请注明来自 FreeBuf.COM在language参数处'.phpinfo().'
返回内容:
复现成功。
看起来复现大佬们的漏洞还是挺有意思的,开心。
泄露《GTA6》人员叫嚣R星,期待来一场交易谈判,R星会如何应对?
R星发布声明表示没有太大影响,项目正常进行,并且追查泄露者的身份。本次的幕后黑手和泄露半条命二内容的黑客相比,显得更为狂妄。在曝出视频后不久,他便直接在社交媒体上公开喊话,声称自己手中有两代游戏的源代码和素材,威胁r星与他聊一聊,还对源代码明码标价,表示低于五位数绝不出手。魔幻的是,外网还真有冤大头上当,甚至找错了交易对象,白花十万美元买了个教训,疫情本就耽误了游戏制作进度,这场闹剧过后, gta6原本的开发计划可能会被完全打乱。
R星则是表示不会项目开发造成影响,虽然泄露的内容不少,但不代表能够破坏游戏的开发,gta系列是一个开放世界游戏,游戏的很大一部分乐趣是玩家和npc、地图的互动,不是那种闯关打怪的游戏,泄露出来的内容只是满足了玩家的好奇心而已,还达不到影响玩家的成程度,而且这个系列已经开发了那么多部,玩家对于游戏的玩法都很清楚,玩家对新系列比较期待的是新东西,这些是泄露内容无法完全展示出来的,也不影响玩家实际体验。
泄露视频,总数量高达多个G,内容也相当齐全,其中拉丁裔女性角色已失锤,另一名则为白人男子。视频中大部分应该为早期开发版本,主角较为低模,但能看出颜值都不差,男主持有特殊技能,可以高亮贵重物品,有些类似大表哥中的鹰眼能力。游戏支持角色切换,两者各有特色的服装,物理效果和人物设计,动作反馈等也得到曝光。勇闯便利店的部分内容玩法也有些致敬**,低俗小说内容,支持与npc良好互动。系统似乎对比上一代有所改善,蹲姿变得更加自然。