HTB Pilgrimage

发布时间 2023-11-23 21:47:03作者: kw13t

 nmap扫一下发现80和22端口开放。

 改hosts文件访问域名 pilgrimage.htb

 直接就是一个文件上传,尝试有没有文件上传漏洞。发现无论任何类型的文件,会将所有文件重命名并加上png或jpg后缀,但从从文件上传这个点突破是有点困难的。

尝试其他的方法,扫一下这个网站,看看有没有敏感目录。

 发现存在git泄露的问题,使用githack直接将整个网站的文件下载到本地

 接下来就是代码审计了,看了一番,感觉没有什么突破点,只发现了一个敏感文件   sqlite:/var/db/pilgrimage,估计是个数据库文件

 这里确实没啥思绪了,找了一下wp,发现突破点在他压缩图片用的工具上,搜一下这个工具相关的漏洞

 这个没啥好说的,到(https://github.com/voidz0r/CVE-2022-44268)这个上面去下载poc,按照他的流程即可读取任意文件的内容

结合我们之前获取到的敏感文件地址(当时没意识到,傻傻的用常见的敏感文件地址一个个试),获取到的文件内容如下:

 

 这里我就懒得把它保存为db文件然后sqlite打开了,直接猜一下,emily后面的字符串就是密码,试了几下之后就成功登陆了,直接获取user.txt。

下一步就是提权了,sudo -l 一下发现不能sudo, 那就ps -aux | grep root看一下当前有哪些root的进程

 这里发现了很眼熟的一个地址(/var/www/pilgrimage.htb/shrunk/),同时还有一个不知名的sh文件(/usr/sbin/malwarescan.sh)(要注意root执行的自定义脚本文件,通常都是突破点)

尝试读一下这个sh文件,发现可以读取

 说实话到这里也有点懵,好像就是binwalk将/var/www/pilgrimage.htb/shrunk路径下的文件都检查了一遍,检查文件类型是否在黑名单内,在则删除。

这里也忍不住看了一下wp,发现binwalk也存在漏洞,并且是命令执行。

 按照py脚本提示生成exp图像,上传到靶机即可。建议本地python服务器http.server,靶机wget。(nc传文件的速度很慢,不清楚为啥)

 这里要注意的一点是,需要提前在本地监听好端口,不然靶机接收到文件后malwarescan.sh都已经执行完毕了,此时在监听无法收到弹回来的shell

 至此,整个靶机pwn完毕。

总结一下这个题目吧,包含git泄露,使用两个漏洞组件,这三个漏洞导致root权限的丢失。

做题过程中存在的几个小问题:

1、最开始尝试死磕文件上传,但是这一题的环境说实话文件上传的可利用性很小,没有及时转战其他可能存在的漏洞位置。

2、没有关注到不安全组件的使用,这一题可以很难,只要将两个漏洞组件替换为未公开漏洞的组件,此时需要对其进行逆向分析时,题目的难度就上升很多了。最主要是我们要对这些不安全组件的使用有一定的敏感性,抓住问题的所在,节省时间。

3、对现有信息要有最大化的利用,在代码审计时,在没有找到可利用的代码漏洞后有些自暴自弃,就觉得源代码泄露没有带来较多的可用信息,没有及时收集到泄露的敏感文件地址这一信息,导致后期再利用任意文件下载漏洞时没有思路,只能傻傻的将所有敏感文件一个个试,在这又浪费了很多时间。(对现有信息的最大化利用)

4、提权的思路不足,查看root进程这一点没有考虑到。