解决 ThinkPHP5 RCE 在PHP7下,不能使用包含的问题

Posted love17

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决 ThinkPHP5 RCE 在PHP7下,不能使用包含的问题相关的知识,希望对你有一定的参考价值。

今天朋友遇到一个Thinkphp5 _method 的RCE漏洞,环境是:tp5014开启debug,linux,PHP7,日志,Session都写不进去,没办法包含的情况。

思路就是使用反序列化,回调 unserialize 函数,是可以成功利用的。如图:

 

差不多就是这样,为了难得去写其他版本的pop链了,所以我直接把tp5024中修复漏洞的代码去掉了,并开启了debug

注意:server[REQUEST_METHOD]这个地方,因为你在复现的时候可能会遇到这个问题。

使用反序列化就是不同版本的POP链会有一些小的地方不同,需要对应具体的版本在看。

以上是关于解决 ThinkPHP5 RCE 在PHP7下,不能使用包含的问题的主要内容,如果未能解决你的问题,请参考以下文章

Thinkphp5.0.24 反序列化rce链学习

14-PHP代码审计——ThinkPHP5.0.23 RCE漏洞分析

14-PHP代码审计——ThinkPHP5.0.23 RCE漏洞分析

thinkphp5.x系列 RCE总结

[代码审计]ThinkPHP 5.0.x 变量覆盖导致的RCE分析

[代码审计]ThinkPHP 5.0.x 变量覆盖导致的RCE分析