关于ThinkPHP framework 任意代码执行漏洞预警

所属分类: 软件教程 / 安全相关 阅读数: 1306
收藏 0 赞 0 分享

最近官方发布了一个安全补丁,官方表述是:该URL安全漏洞会造成用户在客户端伪造URL,执行非法代码。 

可是貌似大多数开发者和使用者并没有注意到此漏洞的危害性,应者了了,更不用说有多少人去升级了。随后我对其进行了分析,发现此问题果然是一个非常严重的问题,只要使用了thinkphp框架,就可以直接执行任意php代码。特此发帖预警各位。 

我们来分析一下官方的补丁: 

/trunk/ThinkPHP/Lib/Core/Dispatcher.class.php 

复制代码
代码如下:

125 - $res = preg_replace('@(w+)'.$depr.'([^'.$depr.'/]+)@e', '$var['\1']="\2";', implode($depr,$paths)); 
125 + $res = preg_replace('@(w+)'.$depr.'([^'.$depr.'/]+)@e', '$var['\1']='\2';', implode($depr,$paths)); 


这个代码是把pathinfo当作restful类型url进行解析的,主要作用是把pathinfo中的数据解析并合并到$_GET数组中。 
然而在用正则解析pathinfo的时候,主要是这一句: 

复制代码
代码如下:

$res = preg_replace('@(w+)'.$depr.'([^'.$depr.'/]+)@e', '$var['\1']="\2";', implode($depr,$paths)); 

这里明显使用了preg_replace的/e参数,这是个非常危险的参数,如果用了这个参数,preg_replace第二个参数就会被当做php代码执行,作者用这种方式在第二个参数中,利用PHP代码给数组动态赋值。 

复制代码
代码如下:

'$var['\1']="\2";' 

而这里又是双引号,而双引号中的php变量语法又是能够被解析执行的。因此,攻击者只要对任意一个使用thinkphp框架编写的应用程序,使用如下方式进行访问,即可执行任意PHP代码: 

复制代码
代码如下:

index.php/module/action/param1/${@print(THINK_VERSION)} 

由于是双引号执行,这里为了保险起见,不给出更有危害性的代码,利用这个还是需要点技巧的。 

总之这个问题非常严重,找了一下,发现目前没有修补漏洞的网站还是很多的。而ThinkPHP框架的特征其实非常好识别,有意者直接写个scanner进行扫描也未必不可能。 
为了不造成更大损失,特地发帖希望引起各位使用thinkphp做开发的同学关注。尽早升级官方的安全补丁 

作者:GaRY
更多精彩内容其他人还在看

腾讯电脑管家怎么下载和卸载软件?

腾讯电脑管家的软件管理功能是针对电脑中的软件,进行装机应用卸载升级等一些操作为一体的工具箱。那么腾讯电脑管家怎么下载和卸载软件?下面小编就为大家详细介绍一下,来看看吧
收藏 0 赞 0 分享

360安全卫士如何限制上传下载速度 360限制上传下载速度教程

很多人经常同时运行多个软件,有些软件会在后台自动执行上传和下载,这样就会使得网速变得很慢,那么360安全卫士如何限制上传下载速度呢?下面小编把解决办法分享到脚本之家平台供大家参考
收藏 0 赞 0 分享

腾讯电脑管家怎么给qq浏览器设置划词搜索功能?

腾讯电脑管家怎么给qq浏览器设置划词搜索功能?使用划词搜索是比较方便的,我们可以使用浏览器设置,同样也可以使用电脑管家设置,下面我们来卡看电脑管家设置的方法
收藏 0 赞 0 分享

360安全卫士清理电脑时怎么查看垃圾详情?

360安全卫士清理电脑时怎么查看垃圾详情?使用360清理电脑垃圾,但是为了防止误删除有用的文件,想查看垃圾的详细情况,该怎么查看呢?下面我们来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

360安全卫士高危漏洞开机就运行扫描该怎办?

360安全卫士高危漏洞开机就运行扫描该怎办?开机就开始扫描漏洞,导致其他软件打开很慢,想供禁止开机进行高危漏洞扫描,该怎么设置呢?下面我们来看看360安全卫士高危漏洞禁止开机扫描的教程
收藏 0 赞 0 分享

鲁大师迷你首页怎么关闭? 鲁大师两种取消弹出迷你新闻页的方法

鲁大师迷你首页怎么关闭?每次开机总是弹出窗口新闻,每次都手动关闭太麻烦,想关闭鲁大师弹出窗口,该怎么设置呢?下面分享两种鲁大师取消弹出迷你新闻页的方法
收藏 0 赞 0 分享

[下载]盘古团队发布XcodeGhost病毒检测工具:超800个应用被感染

由于通过非官方途径下载苹果 Xcode 被植入恶意代码,导致多款应用感染 XcodeGhost 病毒,以越狱出名的国内盘古团队发布 XcodeGhost 病毒检测工具,工具暂时不兼容 iOS7 版本,后续将进行更新。目前已经提供下载链接,大家快快下载试试吧
收藏 0 赞 0 分享

大揭秘!关于XcodeGhost病毒感染事件,你需要知道的十个问题

根据安全漏洞报告平台乌云报告显示,目前苹果应用商店中已有大量应用感染上了一种名叫XcodeGhost的病毒。这种病毒不仅会在应用运行时窃取用户信息,甚至还会模拟收费或帐号弹窗来窃取你的iCloud及iTunes密码。下面小编就为大家揭秘关于XcodeGhost病毒感染事件
收藏 0 赞 0 分享

迅雷澄清质疑:公布XcodeGhost病毒污染源的主要下载链接列表

xcodeghost病毒作者发表声明称,xcodeghost源于自己的实验,没有任何威胁性行为,同时公开了源代码。但依然无法消除众多用户的担忧,再加上iCloud账户密码被泄露事件时有发生,依旧弄得人心惶惶,现在迅雷公布XcodeGhost病毒污染源的主要下载链接列表,一起来看看
收藏 0 赞 0 分享

如何解决卡巴斯基KIS版6.0与金山词霸的冲突

我的卡巴斯基从5.0换为KAV版,再换为kis版,除了常被列入黑名单外,一直相安无事。昨日突然发飙,在卡巴运行时如果打开金山词霸2006则词霸立即没有响应,停进程也没有用。通过本篇文章把我的解决方案分享给大家
收藏 0 赞 0 分享
查看更多