靶机实战:DC-2
前提准备
攻击机:Kali
IP地址:10.9.23.193
靶机:DC-2(linux)
IP地址:10.9.23.110
DC-2下载地址:https://download.vulnhub.com/dc/DC-2.zip
网络:两个主机须在同一局域网下,所以虚拟机的网络配置器必须相同(NAT或者桥接)
目标:找到flag,提权root
难度:中等
一、信息收集
1.探测主机存活,找到靶机
nmap -sn 10.9.23.0/24
2.打开80网页端发现显示了dc2,却打不开
3.用hosts本地解析
因为设置了不能通过ip的方式进入网站,所以进不去,要本地解析
vim /etc/hosts
编辑的时候按i进入插入模式,输入下图的ip和域名,shift+:输入wq保存退出
编辑完查看一下
4.进入网页
发现它使用的是WordPress。下面还有一个flag。
5.网页信息收集
打开网页发现第一个flag1,它提示我们用cewl爬取网页的信息生成一个密码字典
cewl -v http://dc-2/ -w dict.txt
cewl工具的功能就是能够爬取网站上的信息并自动生成字典,然后就可以使用该字典配合hydra去进行暴力破解。
6.敏感目录扫描
生成了字典,我们还需要找可以登录的后台界面。试着来找找敏感目录。
dirb http://10.9.23.110/
7.wpscan工具
进去发现是WordPress后台管理的网站,但还不知道用户名或邮箱地址,密码是上面生成的字典。
用wpscan工具枚举一下网站的用户名
wpscan --url dc-2 -e u
爆破出来三个,创建这样一个用户名字典。
8.暴力破解
继续使用wpscan工具进行登录爆破
wpscan --url dc-2 -U /root/user.txt -P /root/dict.txt
爆破出来两个用户可以登录后台
先登录第一个jerry,adipiscing
找到了第二个flag
上面提示说,不要只盯着wordpress看
可能不止一个端口,那我们再扫描一下
nmap -T4 -A -p- 10.9.23.110
找到了7744端口的ssh服务
二、远程登录
1.使用账户登录ssh
ssh tom@10.9.23.110 -p7744
parturient
ls看见了flag3
发现并不能打开
一直被这个**-rbash:**拦截了
2.rbash绕过
-rbash:
的目的是为了提高系统的安全性,防止用户执行一些危险或不合法的操作。该限制很好地实现了命令以及脚本在受限shell中运行。它为Linux中的bash shell提供了一个额外的安全层。
尝试用vim打开flag3.txt,但vim禁用了,但是没有禁用vi,使用vi打开并翻译得到以下文本。
切换jerry用户发现还是有rbash拦截了,就需要绕过rbash
三、提权
1.利用bash_cmds自定义一个shell
BASH_CMDS[a]=/bin/sh;a
$ /bin/bash
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin
执行a的时候就相当于在执行shell
export的命令就是在设置环境变量
2.切换jerry用户
su jerry
Password: adipiscing
找一下flag4,发现是在tom的家目录路径下,就切换到Jerry家目录,找到了flag4
虽然他说没有给提示,但是依然还是给了(get out),sudo -l看了一下,发现可以用git提权
3.git提权
sudo的方式分页查看git帮助
sudo git -p
4.利用git的bug
分页查看的情况下有冒号,可以输入命令,就可以执行
!/bin/bash
!:调用linux的子命令
提权成功,桀桀桀
五、总结
一、扫描
扫描工具:namp、arp-scan
扫描端口:namp
扫描敏感目录:dirb
二、网页信息收集
用户名枚举:wpscan
网页信息收集工具:cewl
三、权限绕过
看rbash没有过滤掉哪些命令
四、提权
利用git的bug,执行/bin/sh命令提权
img-oZgnpENt-1729073412729)]
提权成功,桀桀桀
五、总结
一、扫描
扫描工具:namp、arp-scan
扫描端口:namp
扫描敏感目录:dirb
二、网页信息收集
用户名枚举:wpscan
网页信息收集工具:cewl
三、权限绕过
看rbash没有过滤掉哪些命令
四、提权
利用git的bug,执行/bin/sh命令提权