
代码审计
R1ght0us
这个作者很懒,什么都没留下…
展开
-
TP诸多限制条件下如何getshell
2020_n1CTF的web题Easy_tp5复现总结 这个题在保留thinkphp的RCE点的同时,并且RCE中ban掉许多危险函数,只能允许单参数的函数执行。对于现在在网络中流传的文件包含的点也增加了限制。 smile yyds! 本文首发于公众号:酒仙桥六号部队 先说一下这个题限制条件: thinkphp版本:5.0.0 php版本:7 对于包含文件增加了限制 ban掉所有的单参数危险函数 设置open_basedir为web目录 设置仅在public目录下可写原创 2020-12-29 19:10:01 · 549 阅读 · 0 评论 -
Thinkphp5.0.x_RCE复现&5.0.24反序列化大礼包
环境部署 以TP5.0.22为例 + PHP 5.6.27-NTS + phpstorm2020.1 反序列化环境为:TP5.0.24 + PHP 5.6.27-NTS + phpstorm2020.1 漏洞成因 现在TP的RCE通常将其分成两类: Request类其中变量被覆盖导致RCE 路由控制不严谨导致可以调用任意类致使RCE 反序列化的应用(需要存在反序列化的地方) Request类其中变量被覆盖导致RCE 我们以这个POC为例,进行复现: 我们正常的代码逻辑已经简单的写在了前文,如有代码执行疑原创 2020-08-07 16:10:38 · 6767 阅读 · 3 评论 -
ThinkPHP5底层代码逻辑梳理
梳理一遍TP代码底层逻辑,为后面的漏洞总结做准备 环境部署 以TP5.0.22为例(为下次的TP-RCE环境做好准备)+ PHP 5.6.27-NTS 目录架构 根据类的命名空间可以快速定位文件位置,在ThinkPHP5.0的规范里面,命名空间其实对应了文件的所在目录,app命名空间通常代表了文件的起始目录为application,而think命名空间则代表了文件的其实目录为thinkphp/library/think,后面的命名空间则表示从起始目录开始的子目录,如下图所示: 框架流程 我们先进入到默认原创 2020-07-21 13:39:28 · 3063 阅读 · 0 评论