内容简介:报告编号:B6-2018-121101报告来源:360-CERT报告作者:360-CERT
报告编号:B6-2018-121101
报告来源:360-CERT
报告作者:360-CERT
更新日期:2018-12-11
0x00 事件背景
2018-12-10 ThinkPHP5系列发布安全更新,该安全更新修复了一处严重漏洞,该漏洞可导致(php/系统)代码执行。
由于框架对控制器名没有进行足够的检测会导致在没有开启强制路由的情况下可能的getshell漏洞
0x01 影响范围
ThinkPHP 5.x
- 5.1.x ~ 5.1.31
- 5.0.x ~ 5.0.23
0x02 修复建议
官方在更新公告中的修复方案是
如果暂时无法更新到最新版本,请开启强制路由并添加相应未定义路由,或者参考commit的修改 增加相关代码。
0x03 漏洞验证
0x04 漏洞分析
在实际分析中,tp的结构和源码在各个分支版本中变化较大。此处仅以5.0.20版本的源代码作为示例进行分析
thinkphp/library/think/App.php
根据上述代码不难看出,tp在处理路由的过程中,使用了Config::get('var_pathinfo')来作为接收处理pathinfo,而这个值在默认情况下为s,那么就会形成一个调用过程:index.php?s=index/\namespace\class/method
经过初始化和处理后,如果你传递的path合理,那么经过check后是会返回为一个module,并且在接下来的exec处理中就会针对其做对应处理
通过invokeMethod进行构建出的class进行调用
调用至invokeFunction完成整个调用后返回执行结果
至此该漏洞在5.0.20的一种命令执行的方式已经实现。
0x05 时间线
2018-12-10 ThinkPHP官方发布公告
2018-12-11 360CERT发布预警分析
0x06 参考链接
ThinkPHP5系列发布安全更新 - ThinkPHP框架
声明:本文来自360CERT,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如需转载,请联系原作者获取授权。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 漏洞预警 | Adobe ColdFusion远程命令执行漏洞预警(CVE-2018-15961)
- 漏洞预警 | ThinkPHP5远程命令执行漏洞
- Influxdb 认证绕过漏洞预警
- 漏洞预警 | MetInfo最新版本爆出SQL注入漏洞
- 【漏洞预警】Coremail邮件系统配置文件信息泄露漏洞
- 【漏洞预警】Joomla!3.7.0 Core SQL注入漏洞
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
计算机程序设计艺术(第1卷)
[美] Donald E. Knuth / 清华大学出版社 / 2002-9 / 80.00元
第1卷首先介绍编程的基本概念和技术,然后详细讲解信息结构方面的内容,包括信息在计算机内部的表示方法、数据元素之间的结构关系,以及有效的信息处理方法。此外,书中还描述了编程在模拟、数值方法、符号计算、软件与系统设计等方面的初级应用。此第3版增加了数十项简单但重要的算法和技术,并根据当前研究发展趋势在数学预备知识方面做了大量修改。一起来看看 《计算机程序设计艺术(第1卷)》 这本书的介绍吧!