下载地址:DC: 2 ~ VulnHub
下载完成后直接使用虚拟机打开就可以了,注意把靶机设置为NAT模式
1、扫描局域网中的ip地址
arp-scan -l
根据自己的主机地址排除出来扫描到的IP,或者查看靶机的mac地址来找到对应的IP
此靶机的IP地址为192.168.50.137
2、知道IP后扫描一下靶机的开放端口有哪些,开放了80、7744端口,这里是将ssh默认端口号22改成了7744
Nmap -sV -p- 192.168.50.137
3、首先利用开放的80端口去访问它的web页面,打开浏览器输入ip地址,发现连接不上
4、这时要想到在本机的hosts文件添加解析IP的记录
打开 /etc/hosts 文件添加一条记录
5、再次访问,访问成功,得到flag1
旗帜
标志1:
你通常的词表可能不起作用,因此,也许你只需要成为cewl。
密码越多越好,但有时你无法赢得所有密码。
以个人身份登录以查看下一个标志。
如果找不到,请以另一个身份登录。
自豪地由WordPress提供动力
6、上面是机器翻译,大概的意思就是,下一步,需要登录来查看到下一个flag,也许你需要使用到cewl,cms是wordpress,
Cewl就是kali的一个字典生成工具,是一个 ruby 应用,
7、根据dc-2生成字典
cewl -w dc-passwd.txt http://dc-2
执行命令之后可以看到已根据指定的url生成了一个字典
7、还需要用户名才可以爆破密码,使用wpscan工具扫描用户
wpscan --url http://dc-2/ -e -u
8、上面这个方法一直报错,在网上也没有找到解决办法,所以使用下面的命令来解决
wpscan --ignore-main-redirect --url 192.168.50.137 --enumerate u --force
扫描到了三个用户
将这三个用户名写到文件中
9、开始爆破,用户名和密码文件在哪个目录下就在哪个目录下执行命令,否则会找不到文件
wpscan --url http://dc-2/ -U user.txt -P passwd.txt
爆破出了两个密码
10、接着开始找出网站的登陆界面,使用网站路径扫描工具dirb 或者目录爆破工具nikto进行扫描
Dirb
Nikto
11、输入登录界面地址进行登录
使用jerry登录
进来以后仔细找找发现flag2
查看flag2
标志2:
如果你不能利用WordPress并走捷径,还有另一种方法。
希望你能找到另一个切入点。
12、通过前面的信息搜集,可以想到还有一个开放的端口为被利用,被修改为7744的ssh(22)服务
尝试通过ssh连接,发现jerry用户登陆不上
13、试试另外一个用户,登录成功,查看目录得到flag3
13、查看flag3.txt,发现没有权限执行该命令
14、绕过限制,查看flag3.txt
可怜的老汤姆总是追杰瑞。也许他应该为自己造成的压力负责。
tom@DC-2:~$ BASH_CMDS[a]=/bin/sh;a
$ /bin/bash
tom@DC-2:~$export PATH=$PATH:/bin/
15、这个提示似乎需要换个角度思考一下,追jerry,就是切换到jerry用户。
16、查看jerry家目录,得到flag4
查看flag4
很高兴看到你走了这么远-但你还没回家。
您仍然需要获得最终标志(唯一真正重要的标志!!!)。
这里没有提示-您现在只能靠自己了。:-)
去吧-吉特,离开这里!!!!
17、发现这里并不是最后的flag,提示信息是说用git
查看可以使用root权限的命令,发现git可以使用,通过git提权
18、提权成功,实验结束
进入根目录查看,得到最后的flag
恭喜!!!
特别感谢所有给我发推特的人
并为我提供了反馈-这一切都非常棒
谢谢。
如果你喜欢这个CTF,请通过@DCAU7给我发一条推特。