SuperAPI AI 工具集

Broken Authentication Testing

安全与审计

查看项目

更新于 10-16 04:37

技能介绍

用途

Broken Authentication Testing 是一个安全测试技能,用于识别和利用 Web 应用中的身份认证与会话管理漏洞。失效的身份认证长期位列 OWASP Top 10,可能导致账户接管、身份盗用以及对敏感系统的未授权访问。该技能覆盖密码策略、会话处理、多因素认证和凭据管理等方面的测试方法。

主要能力

技能围绕十个阶段的工作流展开:

  1. 认证机制分析:识别认证类型(基于密码、基于令牌如 JWT/OAuth/API 密钥、基于证书、多因素),并映射认证端点(/login、/register、/forgot-password、/logout、/api/auth/、/oauth/ 等),捕获并分析认证请求。
  2. 密码策略测试:评估最小长度、复杂度要求、常见弱密码以及用户名作为密码是否被允许,记录策略缺口。
  3. 凭据枚举:通过比较有效与无效用户名的响应差异(错误消息、响应时间、HTTP 状态码、注册表单、密码重置、API 响应)检测用户名枚举漏洞。
  4. 暴力破解测试:使用 Hydra 或 Burp Intruder 测试账户锁定与速率限制,检查锁定阈值、锁定时长、锁定通知、请求频率限制、CAPTCHA 等防护。
  5. 凭据填充:使用已知泄露的邮箱与密码对进行测试,与暴力破解不同,并涉及检测规避手段(降低请求速率、轮换源 IP、随机化 User-Agent、添加延迟)。
  6. 会话管理测试:分析会话令牌的熵、长度、可预测性以及安全标志(HttpOnly、Secure、SameSite),并提供 Python 脚本示例收集多个会话令牌进行分析。
  7. 会话固定测试:检查认证后会话是否重新生成,并描述攻击者固定会话的攻击场景。
  8. 会话超时测试:验证空闲超时、绝对超时以及登出功能是否在服务端使会话失效。
  9. 多因素认证测试:评估 OTP 暴力破解、OTP 绕过技术(跳过 MFA 步骤、修改响应、空 OTP、重用旧 OTP)、MFA 注册与恢复流程的安全性。
  10. 密码重置测试:分析重置令牌的长度、随机性、过期时间、单次使用和账户绑定,测试令牌操纵与 Host 头注入。

技能还提供快速参考表,列出常见漏洞类型、风险等级与测试方法,以及凭据测试载荷、会话 Cookie 标志说明和速率限制绕过请求头。

使用方式

技能以命令行与 Burp Suite 操作为主,包含 Hydra 命令示例、Burp Intruder 配置步骤、Python 会话令牌分析脚本,以及针对账户锁定绕过、JWT 令牌攻击、密码重置令牌利用等场景的示例。

适用场景

适用于获得明确书面授权的 Web 应用安全评估,尤其是需要检查认证与会话管理安全性的渗透测试项目。

限制

  • 仅可在获得明确书面授权的情况下测试,避免使用真实泄露凭据,不得访问真实用户账户,并记录所有测试活动。
  • 技术限制包括 CAPTCHA 可能阻止自动化测试、速率限制影响暴力破解时间、MFA 显著增加攻击难度、部分漏洞需要受害者交互。
  • 范围考虑包括测试账户可能与生产环境行为不同、测试环境中部分功能可能被禁用、第三方认证可能不在范围内、生产环境测试需要格外谨慎。
  • 技能还提供故障排查建议,如暴力破解过慢、会话分析不确定、MFA 无法绕过、账户锁定阻止测试等情况的应对方法。