
HackVM_Convert靶机实战笔记
本文最后更新于 2025-06-06,文章内容可能已经过时。
HackVM_Convert靶机实战笔记
实验环境:
靶机下载地址:
https://hackmyvm.eu/machines/machine.php?vm=Convert
kali(vmware)
靶机(virtualBox)
kali配置了两张网卡,其中一张仅主机的网卡和靶机vitualbox相连。(eth1网卡)
virtualBox开启靶机
主机发现
nmap -sP 192.168.228.0/24
nmap扫描C段地址,排除主机31和1,2地址,扫描出目标靶机的ip地址为
192.168.228.9
信息搜集
扫描目标靶机开启的端口等详细信息
nmap -sV -A -p- -T4 192.168.228.9
扫描靶机开启了。22,80端口,可以看到80端口为nginx代理
22端口先放一边,访问80的web端口看看有什么信息
将网页转换为高精度的PDF文档,看起来是一个转换pdf文档的网页。
随便输入一个网址试试
就是把写入的xml转换成pdf的格式保存到upload目录下。
扫描下有没有其他目录。
gobuster dir -u http://192.168.228.9/ -x txt,html,bak,php -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt
将转换的pdf文件下载下来,查看下版本信息
从Producer可以看出使用的框架dompdf 1.2.0
漏洞利用
扫描漏洞:
awvs进行扫描
查看扫描出来的高危漏洞
CVE2022-28368漏洞利用
https://github.com/rvizx/CVE-2022-28368
或者搜索使用searchexploit,框架:
检查dompdf路径,确实存在,确定可以尝试dompdf这个方向
经过搜索,该网址存在RCE漏洞!
漏洞原理:
https://zhuanlan.zhihu.com/p/633071783
网上可以找到修改后的poc代码
修改后的poc见项目
https://github.com/Tw0-Y/THM.git
直接用里面的dompdf脚本,就可以接到反弹shell
nc开启监听
利用poc
python dompdf-rce.py --inject http://192.168.228.9/index.php?url= --dompdf http://192.168.228.9/dompdf/
也是成功连接
提权Getshell
执行whoami,查看权限
发现不是root权限,需要提权
sudo -l查看可以提权的命令
在最后一行发现用户home目录下的pdfgen.py脚本可以利用
查看这个脚本
简单分析这个脚本,就是会对传入url的界面转成pdf,但是对于url的格式没有过滤,只要不是本地文件开头即可,保存的目录不是/root /etc开头都可以
用pdfgen.py脚本读取root用户的私钥,保存至本地,就可以直接ssh连root。
# 靶机上创建pdf文件
sudo /usr/bin/python3 /home/eva/pdfgen.py -U /root/.ssh/id_rsa -O /var/www/html/1.pdf
下载到本地
创建一个root文件,将pdf中的密钥复制到root中,
提取数据保存至root文件中,整理私钥最后一行的格式,并修改文件权限600。
使用ssh连接
执行whoami,发现已经是root权限。
至此,提权成功,渗透整体全部完成。
查看flag
提交flag即可。
总结
靶机整体不难,但是要注意细节,尤其是遇到pdf文件时候,需要下载pdf文件查看具体版本信息才能查看使用到的是dompdf,至于提权都是些正常操作范围。
如果反弹shell连接不上,注意修改poc即可。
- 感谢你赐予我前进的力量