本技能通过一套分阶段的工作流,帮助测试人员评估 Web 应用的认证与会话管理安全性。文档指出,身份认证缺陷长期位列 OWASP Top 10,可能导致账户接管、身份盗用和敏感系统未授权访问。
用途 用于在获得授权的前提下,测试密码策略、会话处理、多因素认证与凭据管理相关的安全问题。
主要能力(按阶段划分) 第一阶段:认证机制分析。识别认证类型,包括基于密码(表单、Basic、Digest)、基于令牌(JWT、OAuth、API Key)、基于证书(双向 TLS)、多因素(短信、TOTP、硬件令牌);映射认证端点,如 /login、/signin、/authenticate、/register、/signup、/forgot-password、/reset-password、/logout、/signout、/api/auth/、/oauth/,并捕获分析认证请求。 第二阶段:密码策略测试。测试最小长度、复杂度、常见弱口令以及用户名作为密码等情形,记录策略缺口(如最小长度小于 8、无复杂度要求、允许常见口令)。 第三阶段:凭据枚举。通过对比有效与无效用户名的响应内容、响应码、时序以及密码重置提示信息是否泄露账户存在性,也涉及 API 错误信息差异。 第四阶段:暴力破解测试。使用 Hydra 或 Burp Intruder 对表单认证进行测试,检查账户锁定(尝试次数、锁定时长、是否通知)、速率限制(按 IP 或账户、是否可通过 X-Forwarded-For 等头部绕过)以及 CAPTCHA 是否存在与是否易被绕过。 第五阶段:凭据填充。使用已知泄露的邮箱与密码对进行测试,与暴力破解不同,并提及慢速请求、轮换源 IP、随机化 User-Agent、增加延迟等检测规避思路。 第六阶段:会话管理测试。分析会话令牌的熵、长度(如 128 位以上)、可预测性以及 HttpOnly、Secure、SameSite 等标志;文档提供了一段收集并分析会话令牌的 Python 示例代码。 第七阶段:会话固定测试。检查登录后会话是否重新生成,若登录前后 SESSIONID 不变则可疑,并描述攻击者固定会话的攻击流程。 第八阶段:会话超时测试。验证空闲超时、绝对超时以及注销后服务端是否失效旧会话。 第九阶段:多因素认证测试。包括 OTP 暴力破解(4 位=1 万种组合,6 位=100 万种组合)、OTP 绕过技术(直接 URL 访问跳过、篡改响应、空 OTP、复用旧 OTP)、API 版本降级攻击(如 /api/v3/check-otp 有限流时尝试 /api/v2/check-otp)、使用 Burp 进行 OTP 测试,以及 MFA 注册与恢复流程的测试。 第十阶段:密码重置测试。分析重置令牌的长度与随机性、有效期、一次性与账户绑定;测试令牌篡改、用户参数修改以及 Host 头注入。
文档还提供快速参考,包括常见漏洞类型与风险等级对照、凭据测试载荷(默认凭据、常见口令、泄露凭据数据库)、会话 Cookie 标志说明、限流绕过头部列表。
使用方式 在明确书面授权范围内,对目标应用 URL 使用测试账号开展测试,结合 Burp Suite(专业版或社区版)、Hydra 及自定义字典、浏览器开发者工具执行各阶段测试,并记录全部测试活动。
适用场景 Web 应用认证机制评估、会话安全管理审查、多因素认证实现审计、密码重置流程安全测试,以及输出认证评估报告与修复加固建议。
限制与约束 必须仅在获得明确书面授权时测试;避免使用真实泄露凭据;不得访问真实用户账户;需记录所有测试活动。技术上,CAPTCHA 可能阻碍自动化测试,速率限制影响暴力破解时间,MFA 显著提高攻击难度,部分漏洞需要受害者交互。测试账号可能与生产环境行为不同,测试环境中部分功能可能被禁用,第三方认证可能不在范围内,生产环境测试需格外谨慎。文档中关于具体工具版本、收费与价格的细节暂未提供。