接着上回没有bypass disable_function
账户交易系统 | Y0ng的博客 (yongsheng.site)
这回发现上回那个站点开启了php-fpm,然后bypass
先写shell
验证:
蚁剑创建编码器:
'use strict'; |
连接:
无法执行系统命令
利用蚁剑的插件
这里fgi的地址需要找到
发现在/tmp目录下
直接利用,利用成功后会在shell目录下生成一个.antproxy.php
具体的原理:
蚁剑 disable_functions 研究 | 明天的乌云
蚁剑是有一个php-fpm绕过disable的插件
蚁剑的bypass插件他这里的话是通过
/bin/sh -c php -n -S 127.0.0.1:60049 -t /var/www/html |
起了一个 新的PHP Server
,-n就是不使用php.ini,从而实现了bypass disable_functions,然后在插件的源码可以看到,从133行起的exploit()函数里面,有一个生成扩展,上传扩展,然后最主要的部分是从197行开始构造请求包攻击使用php-fpm加载扩展,关键代码如下。
197 var payload = `${FastCgiClient()}; |
那么总结下来的整个攻击流程就是:首先生成扩展,攻击php-fpm执行扩展,然后就会在目标机器本地开启一个新的web服务器,通过antproxy.php转发到无disable的php server上,此时就成功达成了bypass disable_function
Shell创建副本,然后将新的shell名字改为.antproxy.php
进入终端 , 准备上线提权
发现disable没有mail函数等,尝试利用上传.so镜像进行bypass
上传两大件
访问:
好吧,没看到putenv也被ban了 无法利用