Hack The Box - Meta
文章目录
整体思路
1.Nmap扫描
nmap全端口扫描,发现当前靶机只开启了22和80端口
80端口指向域名arptcorp.htb,我们将其写入hosts中
顺利登入arptcorp.htb页面,这个页面没什么可以利用的
我们尝试获取该域名的子域名,顺利得到一个子域名: dev01.artcorp.htb,尝试访问该域名(记得先写入hosts)
2.Exiftool远程代码执行漏洞(RCE)利用
在当前页面得到一个文件上传的入口,并且限定只能上传jpg/png格式
上传png格式文件后,得到该文件的详细信息,这个有点像工具exiftool的输出内容
我们尝试使用exiftool的相关漏洞
找到了exiftool的一个rce漏洞(CVE-2021-22204),试着用一下
这里注意,要利用这个漏洞首先保证图片的类型必须是jpeg,有些图片名后缀虽然是jpg,但是图片类型仍然是png
成功利用漏洞,以www-data权限执行ls -la命令
在目标系统中执行curl命令无效,且使用which curl没有返回命令位置,尝试使用wget命令下载shell文件并执行
成功得到webshell
使用命令
python3 -c 'import pty;pty.spawn("/bin/bash")'
退出当前shell,再使用命令stty raw -echo; fg成功升级切换交互式shell
3.ImageMagrick命令执行漏洞利用
ps -ef查看一下图像上传过程中使用的进程,这里可以看到exiftool程序在/usr/local/bin文件夹中,我们到这个文件夹中看一下
这里有一个更改图片名的shell文件,可能和图片上传时的随机文件名有关
再看一下mogrify程序,它是一个ImageMagrick程序,并且版本为7.0.10,我们去搜一下看有没有相关漏洞
找到了一个命令执行漏洞(CVE-2020-29599),下面这段代码可以输出id到0wned文件中,将反弹shell代码写入第一行中即可顺利横向提权(漏洞详细信息会附在文章最后)
按照刚才看到的convert_images.sh,进入到/var/www/dev01.artcorp.htb/convert_images文件夹新建一个poc.svg,并执行**/usr/local/bin/mogrify -format png *.***命令,顺利提权到thomas用户
进入.ssh文件夹下载私钥,使用ssh登陆thomas用户
4.SUDO提权
接下来尝试使用neofetch进行sudo纵向提权
使用gtfobins工具搜索neofetch具体提权步骤,这里将命令’exec /bin/sh’写入到环境配置中来提权
在刚才sudo -l命令的返回值我们可以看到,其他环境变量的值会还原,所以我们需要把要写入的命令添加到XDG_CONFIG_HOME的路径文件中,确保命令写入配置文件后顺利执行
写入命令并sudo执行,成功提权到root
工具汇总
Nmap
Gobuster
exiftool
gtfobins
漏洞利用
Exiftool远程代码执行漏洞(CVE-2021-22204)
ExifTool 7.44至12.23在DjVu模块中存在一个错误,该错误允许在解析恶意图像时执行任意代码,meta-data为MIME Type : image/jpeg"
,即jpg图片可以达成RCE,12.24版本更新后采用了硬编码的形式通过搜索和替换来处理C转义字符,并且删除了eval函数,彻底修复了此处的漏洞。
ImageMagrick命令执行漏洞(CVE-2020-29599)
ImageMagick 6.9.11-40版本和7.x版本和7.0.10-40之前版本存在安全漏洞,该漏洞源于错误地处理了-authenticate选项,该选项允许为受密码保护的PDF文件设置密码。用户控制的密码没有被正确地转义,因此有可能通过程序员的pdf.c注入额外的shell命令。