W_mingle
- 关注
0x01 前言
今天继续更新,今天的靶机是Pwned1。很有误导性的标题(一直以为是一个缓冲区溢出的靶机,找文件浪费了大量时间)。整体难度不高,但靶机名字太有误导性了。
0x02 过程
信息收集
还是用masscan对开放的tcp端口进行收集
masscan -p 0-65535 192.168.190.95 --rate=10000 -e tun0
目标主机开放了21,22和80端口
用nmap扫描端口服务
nmap -sC -sS -p 21,22,80 192.168.190.95 -oN nmap.txt
同时尝试用匿名用户登录ftp服务,但是登录失败。
现在将重点放在80端口上
在web首页有一段hacker的留言,但是意义不大
在网站上发现了robots.txt文件,发现一个/hidden_text目录
在该目录下还存在一个secret.dic文件,里面记录了大量目录,但是访问几个发现都是404页面。
对这些目录进行处理,然后用dirsearch进行扫描。
python3 ../../dirsearch-master/dirsearch.py --url="192.168.190.95/" -w /home/kali/Desktop/ProvingGroups/pwned1/dic
-w 用于指定文件
最后扫描到pwned.vuln目录进行了跳转
Getshell
访问该链接跳转到了一个登录页面。在尝试了弱口令过后,尝试是否存在SQL注入。
在重放数据包的时候发现注释的php代码,里面包含了用户名和密码
但是却无法登录。
根据用户名,去尝试ftp服务。发现能成功登录,还存在一个share的文件夹
得到一个私钥文件和一个note文件。
用私钥去登陆ssh,但是没有用户名。在note.txt文件中发现一个用户名ariana
用该用户名进行登录,能成功登录ssh
提权
查看sudo list发现有个sudo文件可以用selena身份无密码运行
运行该文件发现可以进行命令执行
sudo -u selena /home/messenger.sh
用bash来获取selena的shell
然后。
然后就思路了,尝试了所有的提权方法都没有提权的点。最后参考带佬的wp,发现selena用户属于docker用户组,可以把根目录挂载到镜像上去。
查看靶机上存在那些镜像
docker images
挂载到红框上的镜像上去
在GTFOBins上查看利用方法。
docker run -v /:/mnt --rm -it alpine chroot /mnt sh
成功提权
0x03 总结
该靶机虽然定级为中级难度,但整体上并没有绕太多的弯子,都是比较直接利用点。对我来说唯一的难点就是docker提权这里(毕竟以前没遇到过)。通过该靶机也让我学到了一个新的提权点。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)