Hello friends! Today we are going to take another boot2root challenge known as “DC-2”. The credit for making this VM machine goes to “DCAU” and it is another boot2root challenge in which our goal is to get root access to complete the challenge. You can download it from here.
信息收集
主机发现
kali ip:192.168.87.128
靶机 ip:192.168.87.141
端口发现
nmap -sV -p- 192.168.87.141
开放的服务有http和ssh,ssh的端口是7744
去网页访问80端口
目录探测
dirb http://192.168.87.141
web渗透
访问80端口
本地访问失败且自动跳转到 DC-2 (url)。应该是利用重定向!
修改本地DNS解决重定向
这时候需要设置hosts文件,添加一条:
192.168.87.141 dc-2
kali的hosts文件在/etc/hosts
用vi打开添加
添加完成之后可以成功访问了
看到有一个flag点进去看一看
提示我们需要用到cewl 生成字典
利用cewl获得密码字典
Cewl是一款采用Ruby开发的应用程序,你可以给它的爬虫指定URL地址和爬取深度,还可以添额外的外部链接,接下来Cewl会给你返回一个字典文件,你可以把字典用到类似John the Ripper这样的密码破解工具中。除此之外,Cewl还提供了命令行工具。
cewl http://dc-2/ -w /home/kali/Desktop/dict.txt
//:这里不能用 cewl http://192.168.87.141 -w xx.txt
//会没有任何输出,因为重定向,需要用域名
因为出现了重定向,我们需要重新目录扫描
dirb http://DC-2
http://DC-2/wp-admin/admin.php
试着访问一下
此时,有登录框,密码字典,需要寻找账号
我们需要用到Wordpress。
Wordpress有一个著名的扫描工具wpscan
利用wpscan枚举用户名
WPScan是一款专门针对Wordpress网站的漏洞扫描工具,它还可以实现获取站点用户名。
wpscan --url dc-2 -e u
得到的用户名:admin/jerry/tom
wpscan --url http://dc-2/ -U cd-2.txt -P dict.txt
// cd-2 账号字典 dict.txt 密码字典
发现两组用户名和密码
jerry/adipiscing
tom/parturient
尝试其他思路吧
端口7744-ssh还没有利用
利用WordPress的两组账号密码,finalshell尝试登录
注意端口号变成了7744
但是可以vi flag3.txt
获得flag3,提示:tom jerry su 暗示我们提权
绕过rbash
现在我们确定一下在rbash的限制下,有哪些命令是可用的
查看环境变量
查看环境下可用命令
rbash的逃逸
设置shell来绕过rbash
BASH_CMDS[r]=/bin/bash #设置变量r为一个shell
r #执行这个shell
添加环境变量
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin/
成功进入jerry,然后cd到jerry目录,ls查看,发现flag4。
翻译大概是”很高兴看到你已经走到了这一步,但你还没有回家。你仍然需要获得最终的标志(唯一真正重要的标志!!)。这里没有提示-你现在只能靠自己了。
git提权
从flag4里面的提示可以看得出来,这是个让我们拿root权限的意思,而且最后一句有提示git,那应该就是git提权。
发现确实有git,直接输入命令
sudo git help config
!/bin/bash
获得root权限,cat以下flag4
最后一个flag
cat /root/final-flag.txt