渗透测试 | VulnHub-Breach1.0实战
字数 1500 2025-08-18 11:39:26
VulnHub-Breach1.0渗透测试实战教学文档
1. 靶机概述
Breach1.0是Vulnhub平台提供的一个渗透测试靶机,目标是通过各种渗透技术获取root权限并查看flag。该靶机模拟了真实环境中的多种安全漏洞,适合学习渗透测试技术。
2. 环境准备
- 靶机下载:从Vulnhub官网下载Breach1.0虚拟机镜像
- 运行环境:VMware或VirtualBox
- 攻击机:Kali Linux或Windows攻击机(需安装JDK)
3. 信息收集
3.1 初始发现
- 查看首页源码,发现隐藏信息
- 解码得到初始密码提示
3.2 邮件信息分析
- 第2封邮件:Michael采购了IDS/IPS设备
- 第3封邮件:发现peter的SSL证书保存在192.168.110.140/.keystore
4. 漏洞挖掘与利用
4.1 证书获取与解密
- 访问目录浏览页面发现.keystore文件
- 使用JDK的keytool工具处理证书:
C:\Program Files\Java\jre1.8.0_121\bin\keytool.exe - 输入密码:
tomcat
4.2 Tomcat认证破解
- 捕获HTTP Basic认证数据包:
Basic dG9tY2F0OlR0XDVEOEYoIyEqdT1HKTRtN3pC - Base64解码得到Tomcat凭据:
- 用户名:
tomcat - 密码:
Tt\5D8F(#!*u=G)4m7zB
- 用户名:
4.3 获取Web Shell
- 登录Tomcat管理后台
- 上传WAR格式的Web Shell(如中国菜刀)
- 访问上传的Shell路径(如/caidao)
- 使用中国菜刀连接并执行命令
5. 权限提升
5.1 初始提权
- 发现异常PHP文件:
fe4db1f7bc038d60776dcb66ab3404d5.php0d93f85c5061c44cdffeb8381b2772fd.php
- 下载分析PHP文件内容
5.2 数据库渗透
- 连接MySQL数据库:
mysql -u root -p use mysql; select user,password from user; exit - 获取milton用户密码哈希:
6450d89bd3aff1d893b85d3ad65d2ec2 - 使用somd5.com解密得到明文密码:
thelaststraw
5.3 用户提权
- 解决终端问题:
python -c 'import pty;pty.spawn("/bin/bash")' - 切换到milton用户:
su - milton 密码:thelaststraw - 检查milton用户目录下的
some_script.sh文件
5.4 进一步提权
- 查看系统信息:
uname -a cat /etc/issue - 分析历史命令
- 发现6张图片,从中提取密码提示
- 提权到blumbergh用户:
- 用户名:
blumbergh - 密码:
coffeestains
- 用户名:
6. Root权限获取
6.1 分析清理脚本
- 发现
/usr/share/cleanup目录和tidyup.sh脚本 - 分析
tidyup.sh脚本内容 - 检查sudo权限:
sudo -l
6.2 利用定时任务
- 发现crontab计划任务每3分钟执行
tidyup.sh - 利用脚本漏洞获取root权限
6.3 获取Flag
- 使用反弹Shell获取root权限
- 发现flag是一张图片
flair.jpg - 下载并查看图片内容:
I NEED TO TALK ABOUT YOUR FLAIR
7. 关键知识点总结
- 信息收集:源码分析、目录遍历、证书获取
- 密码破解:Base64解码、哈希解密
- Web应用攻击:Tomcat管理后台利用、Web Shell上传
- 权限提升:数据库渗透、定时任务利用、sudo权限分析
- 隐蔽信息:图片隐写分析、历史命令分析
8. 防御建议
- 加强Tomcat管理界面访问控制
- 避免使用弱密码或可预测密码
- 限制目录遍历漏洞
- 定期审计系统定时任务和sudo权限
- 对敏感信息进行加密存储
9. 工具清单
- JDK keytool工具
- Burp Suite(用于解码Base64)
- 中国菜刀/JspSpy(Web Shell)
- somd5.com(哈希解密)
- nc(反弹Shell)