记一次授权渗透测试
字数 1473 2025-08-05 11:39:37
授权渗透测试实战教学:从弱口令到系统控制
1. 渗透测试前期准备
1.1 目标信息收集
- 获取目标清单(Excel文件形式)
- 分析目标系统特征(注意系统底部标注的开发公司信息)
- 记录所有可访问的登录界面
1.2 工具准备
- 密码字典(自积累的常用密码组合)
- 弱口令猜解工具(如Burp Suite、Hydra等)
- WebShell管理工具(如哥斯拉、冰蝎等)
- 数据库连接工具
- 抓包工具(如Burp Suite、Fiddler)
2. 弱口令攻击实战
2.1 基础弱口令尝试
-
常见弱口令组合尝试:
- admin/admin
- admin/123456
- root/root
- test/test
- 其他常见简单组合
-
密码字典攻击:
- 使用自积累的密码字典进行批量尝试
- 注意观察系统响应,避免触发锁定机制
2.2 基于公司信息的密码构造
- 关键技巧:发现系统底部标注"By xx公司"时
- 将该公司域名:
- 直接作为密码尝试
- 添加简单前缀后缀(如"公司名+123")
- 大小写变形尝试
3. 权限提升与横向移动
3.1 后台功能利用
-
进入后台后首先:
- 全面浏览所有功能模块
- 寻找文件上传点(如头像修改功能)
-
文件上传漏洞利用:
- 直接修改文件后缀(如.php、.jsp等)
- 绕过前端验证(抓包修改)
- 上传WebShell获取控制权限
3.2 敏感文件发现与利用
-
查找服务器上的敏感文件:
- 配置文件(如connections.ncx)
- 数据库连接信息文件
- 日志文件
- 临时文件
-
connections.ncx文件利用:
- 下载并分析文件内容
- 提取数据库连接信息
- 使用解密脚本破解加密密码
- 直接连接数据库获取敏感数据
3.3 服务器权限维持
- 使用哥斯拉等工具:
- 添加系统用户
- 建立持久化后门
- 权限维持
4. 横向渗透扩展
4.1 密码复用攻击
- 从获取的文档中提取账号密码
- 尝试在其他系统中使用相同凭据
- 注意密码策略差异(大小写、特殊字符要求等)
4.2 文件上传漏洞深度利用
-
抓包修改上传:
- 拦截上传请求
- 修改文件名(如"shell.jsp"改为shell.jsp)
- 绕过黑名单过滤
-
多种WebShell上传:
- 准备多种类型的WebShell
- 根据服务器环境选择合适类型
4.3 中间件与FTP服务攻击
- 通过已有权限:
- 探查服务器上运行的其他服务
- 获取FTP凭证并连接
- 检查中间库数据
5. 综合渗透路径总结
- 初始入口:弱口令/公司域名作为密码
- 权限提升:通过文件上传漏洞获取WebShell
- 信息收集:发现敏感配置文件(connections.ncx)
- 数据库访问:解密并连接数据库
- 服务器控制:添加系统用户,完全控制
- 横向移动:利用找到的密码访问其他系统
- 持续渗透:通过新获取的权限进一步扩展控制范围
6. 防御建议
6.1 密码安全
- 禁用弱密码和默认密码
- 避免使用公司相关信息作为密码
- 实施多因素认证
6.2 文件上传防护
- 严格验证上传文件类型
- 使用白名单而非黑名单
- 存储上传文件在非web可访问目录
6.3 敏感信息保护
- 加密存储数据库凭据
- 避免配置文件存储在web目录
- 定期审计服务器上的敏感文件
6.4 系统监控
- 监控异常登录行为
- 记录并分析文件上传活动
- 建立完善的日志审计机制
7. 渗透测试报告要点
- 清晰记录每个漏洞的利用路径
- 截图保存关键证据
- 详细描述获取的敏感数据类型
- 提供完整的攻击链说明
- 给出针对性的修复建议
通过本教学文档,您应该能够理解并复现从弱口令开始到完全控制系统的一系列渗透测试技术。请记住,这些技术仅适用于授权测试,未经授权的测试是违法行为。