Think PHP 5.0.x Rce分析

Think PHP 5.0.x Rce分析

摘要: TP5 漏洞

0x01 写在前面

尝试复现些老漏洞积累下经验。

0x02 漏洞

缓存类导致RCE

利用版本:5.0.0<=ThinkPHP<=5.0.10

利用条件:

  • 使用Cache::set进行缓存
  • 在利用版本范围内
  • runtime目录可以访问

修改以下代码:

用以下payload打过去:

1
?username=Hn13%0d%[email protected]($_GET[_]);//

漏洞分析:

写入语句有问题,在thinkphp\library\think\cache\driver\File.php第152行

更正后(5.0.22)为:

data也就是用户输入被置于外处,从而避免写Shell。


评论