MFA 核心攻击面测试
绕过测试
认证状态篡改:登录后修改URL参数(如authenticated=true)或Cookie,尝试跳过MFA验证。
强制浏览:直接访问登录后的URL(如/dashboard),观察是否触发MFA验证。
响应篡改:拦截MFA验证请求,将响应码403改为200,观察是否放行。
令牌爆破与泄露
OTP/TOTP爆破:对6位数验证码尝试常见弱口令(如111111, 123456)或自动化爆破(速率限制测试)。
种子泄露:检查源代码、错误信息中是否暴露TOTP种子(如otpauth://链接)。
备份代码滥用:测试已使用的备份码是否可重复使用,或未启用吊销机制。
通道劫持
短信/邮箱劫持:通过SIM交换攻击或邮箱弱口令窃取验证码。
中间人攻击:伪造Wi-Fi热点截获短信/邮件验证码(需物理临近)。
逻辑漏洞测试
MFA 启用/禁用逻辑
禁用MFA后是否仍要求二次验证?
重新启用MFA时是否验证原凭证(如密码)?
会话管理缺陷
同一会话在多个设备登录时,MFA状态是否同步失效?
修改密码后,已通过MFA的会话是否保持活跃?
MFA 覆盖攻击
在A设备发起MFA请求后,立即在B设备用相同账号登录,观察MFA状态是否被覆盖。
生物特征与硬件安全密钥测试
生物认证绕过
测试人脸/指纹识别是否接受照片或3D打印模型(需物理访问)。
FIDO/U2F 密钥测试
移除密钥后,会话是否立即终止?
测试同一密钥是否可重复绑定多个账号(违反隔离原则)。
社会工程与物理测试
MFA 疲劳攻击
连续发送大量MFA推送通知,诱导用户误点"批准"。
物理访问利用
测试设备锁屏状态下能否绕过MFA(如USB调试劫持已认证会话)。
建议
技术层面
实施防爆破机制:验证码错误5次后锁定账号或启用CAPTCHA。
强制重认证:敏感操作(如改密码、支付)前重新验证MFA。
密钥隔离:FIDO2密钥与账号一对一绑定,禁止复用。
策略层面
禁用短信/邮件验证码,优先使用TOTP或FIDO2。
定期审计MFA日志,监控异常批准行为。
测试工具
工具
Burp Suite
Modlishka
John the Ripper
FIDO2测试套件
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。