靶机地址
一.进行信息收集
1. 使用nmap扫描,进行主机发现
nmap -sn 192.168.25.0/24
使用nmap扫描之后发现ip地址为:192.168.25.144
2.使用nmap进行端口扫描
nmap -p 1-65535 -T4 -A -v 192.168.25.144
发现其开启了80,7744端口
3.从网页访问192.168.25.144:80,发现无法访问
4.修改本机的hosts文件
添加一行 192.168.25.144 dc-2
5.查看web指纹,发现是一个wordpress的站,可以使用专用的扫描器wpscan扫描
6.在网站中看到flag1的提示,说明我们需要使用cewl拉取一个可能存在的密码字典
7.使用cewl拉取一个密码字典
cewl http://dc-2 -w passwd.txt
8. 使用dirsearch扫描一下敏感目录
dirsearch -u "http://dc-2"
扫描发现存在一个疑似登录页面的目录,进去看一下
发现存在一个登录框
二. 扫描
1.因为是wordpress站点,可以使用wpscan进行扫描
用wpscan扫描有哪些用户
wpscan --url http://dc-2/ --enumerate
扫描发现了三个用户
2.使用wpscan爆破密码
wpscan --url http://dc-2/ -U<用户名> -P<密码字典>
用户名为admin,jerry,tom,密码字典为cewl拉取的密码字典
这里我使用的是burpsuite进行密码爆破,使用wpscan会更方便一些,我这里是为了再练习一下burpsuite的使用
1.使用一个用户名,密码输入123456进行登录,用burepsuite抓包
2.在这里抓到了登录失败的包
3.发送至intrude模块,将用户名和密码设置为变量
4.选择密码字典,添加用户名条目,进行爆破
5.爆破完成后,得到了jerry和tom的密码
3.使用爆破出来的账户密码登录看看
登录tom用户后,并没有找到flag2,登录jerry试试
在jerry账户中找到了flag2
提示"如果你不能利用WordPress并采取一条捷径,还有另外一种方法"
4.之前扫描端口的时候,扫出来了一个ssh的7744端口
1.尝试使用ssh连接,这里用jerry连接不成功,用tom连接成功
2.查看当前有什么文件,发现了flag3.txt,用cat打开失败,尝试一下其他命令,用less打开后,提示"tom总是被jerry欺负,我们应该做些什么",应该是让我们提权
三.权限提升
1.由于rbash被限制了,我们查看一下有什么可用的命令
compgen -c //查看可以使用的指令
发现有vi可以使用
2. 这里我们可以试vi提权,在这里给大家推荐一个好用的网站
部分提权成功
3.进入jerry文件夹,发现了flag4.txt
4.用vi打开flag4.txt
没发现什么有用的信息
去root目录看一下,发现没有权限
切换用户也不行
5.尝试绕过
1.查看当前的环境变量
echo $PATH
我们当前的环境变量是在:/home/tom/usr/bin下面,我们的shell被限制了
2.添加一个新的环境变量
export PATH=$PATH:/bin/
3.发现已经可以切换jerry用户了
4.进入root目录,发现jerry也没有权限
6.继续提权
1.查看root权限的命令
find / -user root -perm -4000 -print 2>/dev/null
发现有sudo和su
2.尝试使用su提权,发现提权失败
3.使用sudo -l看看,有sudo权限的
sudo -l
发现git可以
7.git提权
1.里面的命令尝试使用
2.提权成功
3.据提示我们进入/root,ls查看目录下的文件
4.打开最终flag文件final-flag.txt