thinkphp6.0反序列化利用链审计

2021-02-20 19:19

阅读:721

标签:serial   top   轻松   href   师傅   手动   gadget   pip   一起   

前言

这几天在忙实验室纳新,然后就是实验室准备创办公司,需要准备好多资料233截止到今天晚上终于把tp6的手册看完了,不得不说确实看一遍就有新的收获,上次看tp5手册遗漏了很多细节或者自己忘了233.看完手册就开始审计吧。
先上参考文章,大师傅就是大师傅啊。

https://www.anquanke.com/post/id/187393#h2-1

https://www.anquanke.com/post/id/194036

环境

tp6安装:

composer create-project topthink/think=6.0.x-dev v6.0

手动设置漏洞点:
别问为什么这样写。。这个反序列化漏洞想要触发就得有内容完全可控的反序列化点,例如:?unserialize(可控变量)。
得有程序员这样写才能触发。。

将?application/index/controller/Index.php?代码修改成如下:

反序列化利用链

根据师傅们的文章

在?ThinkPHP5.x?的POP链中,入口都是?think\process\pipes\Windows?类,通过该类触发任意类的?__toString?方法。但是?ThinkPHP6.x?的代码移除了?think\process\pipes\Windows?类,而POP链?__toString?之后的?Gadget?仍然存在,所以我们得继续寻找可以触发?__toString?方法的点。
这里5.2.x版本函数动态调用的反序列化链后半部分,还可以利用。
可惜我没审计过5.2x的tp链,不过看了一下和tp5.1的链子很像,松了一口气,不然我就是一起审计2个版本了。。

等把所有链子审完再写吧,写多少发多少,这样后续更新会轻松些--

thinkphp6.0反序列化利用链审计

标签:serial   top   轻松   href   师傅   手动   gadget   pip   一起   

原文地址:https://www.cnblogs.com/wangtanzhi/p/12913807.html

上一篇:HTML

下一篇:00005-js 获取uuid


评论


亲,登录后才可以留言!