前言:
DC靶场是前面逛论坛的时候,看到有大佬在打的靶场,恰好新换了的硬盘,空间也够了,也就部署下来,尝试进行测试。
DC靶场系列会涉及到拿到flag,DC-1共有5个flag。
本次靶场的测试,也让我获益良多,最主要的还是对以前一些遗忘的操作的回忆。
官网地址: https://download.vulnhub.com/dc/DC-1.zip
一、环境搭建
攻击机:kali IP:192.168.244.128
受害机:DC-1 IP:192.168.244.130 虚拟机网络配置为NAT模式
二、复现过程
1、信息收集
nmap扫描网段,查看有哪些IP开放:
nmap -sP 192.168.244.0/24
扫描目标开放了哪些端口:
namp -sS 192.168.130
可以看到,目标开放了80(http),22(ssh),111(rpcbind)端口
先访问80端口,查看详情
可以看到,web页面是一个Drupal的CMS,并且知道了版本为Drupal-7
2、漏洞查找及利用
1)、百度查找
2)kali工具searchexpolit(这个工具我也是看了大佬的文章,才发现的,它是真的🐂!!!!)
可以看到上面有很多的poc,按照前期信息收集到版本信息,进行比对,然后进行尝试。
比如我这里利用这个poc进行尝试
可以看到这个poc存储的位置,进行利用尝试
这里需要注意一点:34992.py这个poc需要python2打开,如果默认python3打开的话,将会报错
具体原因是因为:
python2.X版本与python3.X版本输出方式不同
在python3.X输入内容时都要带上括号print(),而在2.X中直接输出没有问题
print "------软件测试自动化:登录界面测试用例------" #2.X版本
print ("------软件测试自动化:登录界面测试用例------") #3.X版本
继续利用
python2 /usr/share/exploitdb/exploits/php/webapps/34992.py -t http://192.168.244.130/ -u test -p 123123
可以看到,通过该漏洞,成功创建了管理员账户:test/123123
拿到flag3
通过searchexploit查到的利用方式还有很多,这里我就演示这一种。
3)msf利用
msf当然也会有利用方式,这里通过对比searchexploit的结果,use 1
根据show option设置参数
配置好参数之后,进行exploit
成功拿到meterpreter
进入shell
通过:python -c 'import pty;pty.spawn("/bin/bash")'进行美化shell
在当前目录下进行信息收集
可以看到当前目录下存在flag1
拿到flag1
根据flag1提示,查看Drupal配置文件,成功拿到flag2
拿到flag2
到这里,我们其实可以很清楚的看到,前面的三个flag,每一个里面都指向了通往下一步的方法,根据提示,我们自然能够找到每一个flag,这一点也是我觉得很值得称赞的地方,真的对新人学习太友好了。
4)提权
目前为止,已经拿到了三个flag,继续进行信息收集,然后进行提权,最终拿到一个root权限的反弹shell。
在查看/etc/passwd的时候发现了flag4,查看flag4
拿到flag4
到现在已经很明显了,需要提权,然后查看root下面的flag
这里采用的提权方式是根据flag3得到的提示,find命令,进行提权,具体find命令的用法,见
通过执行whoami,确定了find命令具有root权限,然后就可以执行反弹一个具有root权限的shell了。
到此就算是结束了。
拿到finalflag
三、总结
先讲一下收获吧:
1、熟悉namp信息收集;
2、熟悉searchexploit操纵,实操上手;
3、熟悉msf操作;
4、学习提权;
不足之处:
1、我能知道最后的提权是利用find命令去进行提权,但是在这个过程中,我没能明白该怎样去查找拥有root权限的命令,去进行提权,这个是我接下来的学习方向;
2、DC-1靶场环境适合学习,巩固知识,真正对应到现实环境中,还是欠缺了很多;
3、前期信息收集的时候还知道开放了111端口,但是我没有去进行后续的跟进操作,这个是需要反思的;