靶机DC-2下载地址:https : //download.vulnhub.com/dc/DC-2.zip
环境配置
将主机和kali 都调到nat 模式
1,arp-scan -l
使用 arp-scan -l 命令 扫描局域网中的所有IP和mac地址
2,nmap -A -p1-65535 192.168.114.128
命令是使用nmap进行一次全面的端口扫描,范围是从1到65535,目标IP是192.168.114.128。
可以看到DC-2开启了80端口和 改了ssh默认端口 改成了7744端口
我们去访问一下
找不到这个网页
发现开了80端口却无法访问,是重定向到dc-2域名,可改hosts文件访问,添加ip对应域名
win10路径:C:\Windows\System32\drivers\etc\hosts
linux路径:etc/hosts
linux
发现flag1,从中看到一个重要的信息,提示我们用cewl来获取密码
查了一下cewl发现是一个kali自带的一个密码字典生成工具
Cewl是一款采用Ruby开发的应用程序,你可以给它的爬虫指定URL地址和爬取深度,还可以添额外的外部链接,接下来Cewl会给你返回一个字典文件,你可以把字典用到类似John the Ripper这样的密码破解工具中。除此之外,Cewl还提供了命令行工具。
使用cewl 访问该网站,并将生成的字典写入到dc2_passwords.txt:
cewl -w dc2_passwords.txt http://dc-2/index.php/flag/
这里可以使用-w参数来将密码字典存储为txt文件
使用kali的wpscan来扫描一下用户名
wpscan --ignore-main-redirect --url 192.168.114.128 --enumerate u --force
- WPscan是一个用于扫描和评估WordPress网站安全性的工具
--ignore-main-redirect
:忽略主要的重定向。这意味着如果网站重定向到另一个页面,wpscan将不会跟随这个重定向,而是继续扫描原始的URL。--url 192.168.52.135
:这是你想要扫描的网站的URL。在这种情况下,它是一个IP地址。--enumerate u --force
:枚举用户名并强制执行。这意味着wpscan将尝试找出网站可能存在的用户名,并忽略任何尝试阻止这种枚举的措施。
枚举出了三个用户名,使用touch 创建一个dc2_users.txt,然后放入进去
通过已经扫描到的用户名和cewl生成的密码字典对目标主机(dc-2)进行爆破
wpscan --ignore-main-redirect --url 192.168.52.135 -U dc2_users.txt -P dc2_passwords.txt --force
得到了账号密码但是没有能找到登录的地方,使用nikto来扫描一下登录,也可以使用御剑扫描一下
nikto -h http://dc-2/
"/wp-login.php: Wordpress login found" 的意思是,你发现了一个WordPress登录页面。在WordPress中,wp-login.php是用于用户登录的页面
打开网页
在jerry用户中找到了flag2
里边啥也没有,flag2中提示我们换一个切入点,我们nmap在扫描一下
nmap sS 192.168.114.128
扫描出来的结果竟然一样
加个参数再扫描一遍
nmap -sS 192.168.114.128 -p 1-65535
nmap A -p- 192.168.114.128
扫描出来一个ssh连接的端口
尝试连接一下
这里只有tom用户能登陆上去
使用ls 发现flag3 但是有限制,查看不了内容
使用compgen -c 来查看可以使用的命令
发现有vi 可以使用vi;来查看flag3的内容
flag3中没有什么有用的,现在去尝试解开jerry的限制,看看Jerry用户里边有什么
绕过受限制的shell
接下来我们就需要使用一些方法逃逸出rbash,我们输入以下两条命令来逃逸出这个受限制的shell
BASH_CMDS[a]=/bin/sh;a
/bin/bash
现在发现shell不是-rbash了,变成了bash。但是还是不能执行命令,因为需要在其中添加变量
命令1:export PATH=$PATH:/bin/
或者
命令2:export PATH=/usr/sbin:/usr/bin:/sbin:/bin
那个都可以
已经可以查看了,我们来尝试切换到jerry用户
cd到jerry的目录下,发现flag4
根据flag4中的提示可能是让我们用git的方式去提权
sudo git -p help config
!/bin/bash
拿到最后一个flag
DC-2靶机总结
知识点如下,首先就是cewl和wpscan工具的使用,其次是nmap加强扫描得到端口;重定向;cewl工具的使用,得出密码字典;wpscan枚举账户,账号密码的破解;nikto或御剑扫描网站的站点登录;compgen -c 查看服务器可使用的命令;然后就是rbash的逃逸以及git的提权。总体来讲,我还是通过DC-2靶机学到了一些之前不了解的知识点,例如:rbash等等。