DC-2
环境部署
kali和DC都设置成NAT,DC记得获取到MAC地址
信息收集
1 | nmap -sP 192.168.0.0/24 |
使用nmap进行扫描,发现dc-2靶机的ip为:192.168.0.131
1 | nmap -A -p 1-65535 192.168.0.131 |
继续扫描靶机的端口,可以看到开放了80端口和7744端口(在此端口上部署了ssh服务)
因为开放了80端口,所以在浏览器中访问:http://192.168.0.131:80,发现url变成了http://dc-2,很明显,DNS没有被解析。
再次查看一下nmap的扫描结果,发现如下结果,nmap给出了无法跟踪跳转到http://dc-2/,所以我们需要去添加hosts的地址
1 | nmap -A -p 1-65535 192.168.0.131 |
hosts文件所在路径
1 | windows:C:\Windows\System32\drivers\etc\hosts |
然后再次访问:http://192.168.0.131:80,是一个wordpress的界面。找到第一个flag1
全部翻译过来如下
爆破账户名和密码
密码生成
1、提示我们需要一个用户名来登录,而且其中有一个关键字:cewl(kali自带这个工具),这是一个linux的字典生成工具,最大的特点就是能够爬取网站的信息并生成字典。
使用cewl来爬取网站并生成密码字典
1 | cewl http://dc-2/ -w dc-2.txt #生成字典 |
扫描用户名账号
因为网站是wordpress,所以采用wpscan来扫描
wpscan –url dc-2 -e u #扫描出网站的用户名
发现了3个账号:admin、jerry、tom
开始爆破
1、使用之前获取的三个用户名和cewl工具生成的字典的来爆破
dc-2-user.txt文件:存放用户名 dc-2.txt:存放密码
1 | wpscan --url http://dc-2/-U dc-2-user.txt -P dc-2.txt |
成功爆出jerry和tom的密码:
jerry/adipiscing
tom/parturient
登录后台,wordpress默认后台路径是:/wp-login.php,访问后台登录界面
使用jerry用户登录(使用tom登录没有什么有用的信息)点击Pages按钮,查看到flag2,查看flag2
翻译过来
ssh登录靶机
使用之前爆破的用户名和密码来登录
jerry/adipiscing
tom/parturient
使用jerry登录,被拒绝登录了,只能使用tom用户登录
虽然登陆了ssh登录成功,但是无法使用cat或者vim查看flag3
但是这里查看可以用的命令的话,是可以用vi查看的话,这里尝试绕过提权
绕过rbash
查看环境变量,发现只有4个命令可以使用
即我们获取到的shell为:Restricted shell(受限制的shell),可以添加环境变量来绕过
#绕过rbash
BASH_CMDS[a]=/bin/sh;a
#添加环境变量
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin/
成功读取flag3
Poor old Tom is always running after Jerry. Perhaps he should su for all the stress he causes.
翻译:可怜的老汤姆总是追随杰里。也许他应该承受自己造成的所有压力。
线索指向了jerry,提示使用su切换用户
使用su jerry切换为jerry用户,密码为之前获取的密码,成功读取flag4
git提权
查看jerry可以以root用户的身份执行git命令而且还不需要密码
1 | sudo -l |
提权
1 | 方法1: |
成功获取到最后一个flag
知识点总结
1、wordpress的后台登陆点以及域名解析
2、cewl工具和wpscan工具的使用
3、su命令切换用户
4、git提权