记一次曲折的渗透经历
字数 1169 2025-08-29 08:32:24
渗透测试实战教学:从信息收集到权限维持
1. 目标识别与初步侦察
1.1 CMS识别
- 通过网站底部链接发现后台管理系统
- 识别出使用的是织梦(DedeCMS)系统
- 关键点:网站底部信息、后台界面特征识别
1.2 目录扫描与防护规避
- 使用目录扫描工具时触发阿里云WAF防护
- 发现非标准文件
upload.php - 关键点:扫描速度控制、WAF绕过技巧、非标准文件识别
2. 文件上传漏洞利用
2.1 上传参数爆破
- 尝试常见上传字段(file等)失败
- 使用字典爆破上传参数名
- 关键点:参数名爆破技巧、字典选择策略
2.2 历史版本利用
- 通过FOFA搜索找到历史版本网站
- 尝试下载整站备份文件
/domain.cn.tar.gz - 成功获取旧版源码
- 关键点:历史版本查找、备份文件命名习惯
3. 代码审计与漏洞挖掘
3.1 upload.php分析
- 确认存在任意文件上传漏洞
- 参数名特殊,难以通过常规爆破发现
- 关键点:代码审计技巧、非常规参数识别
3.2 遗留Webshell查找
- 使用D盾扫描发现多个遗留Webshell
- 编写自动化脚本批量验证可用性
- 关键点:自动化验证脚本编写、隐蔽Webshell识别
4. 权限提升与维持
4.1 后台管理员添加
- 发现隐蔽的后台管理员添加脚本
- 构造Payload成功添加管理员账号
- 关键点:权限提升路径分析、隐蔽功能利用
4.2 文件写入权限突破
- 发现开发人员临时开放写入权限
- 快速上传Webshell维持访问
- 关键点:权限维持时机把握、快速响应能力
5. 防御规避与反溯源
5.1 与开发人员交互
- 伪装正常用户与开发人员沟通
- 利用心理战术获取信息
- 关键点:社会工程学技巧、身份伪装
5.2 反溯源措施
- 避免提供真实联系方式
- 及时保存证据并退出
- 关键点:操作痕迹清理、反追踪意识
6. 关键经验总结
- 信息收集全面性:历史版本、备份文件往往包含关键信息
- 自动化工具使用:批量验证可大幅提高效率
- 权限维持时机:系统变更时期往往是突破的最佳时机
- 心理战术运用:适当的社会工程学可以辅助技术手段
- 应急响应能力:在权限被回收前快速行动至关重要
7. 防御建议
- 定期清理遗留文件和备份
- 严格控制文件系统写入权限
- 实施严格的代码审计流程
- 监控异常的管理员账号变动
- 建立完善的应急响应机制
8. 工具与技术清单
| 类别 | 工具/技术 |
|---|---|
| 信息收集 | FOFA、目录扫描工具 |
| 漏洞利用 | 自定义Payload、Webshell |
| 代码审计 | D盾、手动分析 |
| 自动化 | Python脚本 |
| 权限维持 | 大马Webshell |
本案例展示了从信息收集到最终权限获取的完整渗透流程,强调了全面性思维和快速响应能力在渗透测试中的重要性。