《身份认证漏洞排查实战指南》
第3章 认证漏洞分类

3、认证漏洞分类

在身份认证体系中,攻击者通常利用系统设计缺陷、协议弱点或用户行为习惯来绕过认证机制。以下是对七大类核心认证漏洞的深度剖析与实战排查指南。

认证漏洞 7大分类 暴力破解 权限提升 凭证填充 会话劫持 中间人攻击(MITM) 重放攻击 逻辑缺陷

3.1 暴力破解 (Brute Force)

漏洞描述:攻击者通过自动化工具,穷举所有可能的密码组合,直到找到正确的凭证。常见于弱口令、无锁定机制的系统。

排查要点

  • 检查登录接口是否存在频率限制
  • 验证是否实施账户锁定策略(如5次失败后锁定15分钟)
  • 审计日志中是否存在大量401/403错误
  • 测试常见弱口令字典(如admin/123456)

实战代码片段

# 使用Hydra进行暴力破解测试(仅授权环境)
hydra -l admin -P /usr/share/wordlists/rockyou.txt \
  ssh://192.168.1.100 -t 4 -V
攻击者 自动化脚本 登录接口 穷举密码组合 → 直到成功或资源耗尽

3.2 凭证填充 (Credential Stuffing)

漏洞描述:利用用户在多个平台复用相同密码的习惯,将从其他泄露数据库获得的用户名/密码组合,批量尝试登录目标系统。

检测指标正常行为攻击特征
登录频率每分钟 < 5次每分钟 > 50次
IP来源分散/固定单一IP或代理池
User-Agent多样化单一或异常UA
泄露数据库 批量登录脚本 目标系统 利用已泄露凭证 → 撞库登录

3.3 会话劫持 (Session Hijacking)

漏洞描述:攻击者通过窃取或预测有效的会话令牌(Session Token/Cookie),冒充合法用户身份访问系统。

常见攻击方式

  • XSS窃取Cookie
  • 网络嗅探(未加密传输)
  • 会话固定攻击
  • 预测弱随机化Session ID

防御措施

  • 设置HttpOnly & Secure标志
  • 使用HTTPS传输
  • 定期轮换Session ID
  • 绑定IP/User-Agent
用户 服务器 攻击者 窃取Session Token → 冒充用户

3.4 中间人攻击 (MITM)

漏洞描述:攻击者拦截并篡改通信双方的数据流,在用户不知情的情况下窃取凭证或注入恶意数据。

# 使用Bettercap进行MITM测试(仅授权环境)
sudo bettercap -eval "set arp.spoof.targets 192.168.1.100; arp.spoof on; net.sniff on"
客户端 攻击者 (拦截节点) 服务器 拦截 → 篡改 → 转发(双向欺骗)

3.5 重放攻击 (Replay Attack)

漏洞描述:攻击者截获有效的认证请求数据包(如登录POST请求),在不破解密码的情况下,重新发送该数据包以通过认证。

检测方法

  • 使用Burp Suite Repeater重放请求
  • 检查服务器是否验证时间戳/Nonce
  • 测试同一请求能否多次成功

防御方案

  • 引入一次性Nonce值
  • 时间戳 + 窗口验证
  • 使用数字签名
  • 实施OTP(一次性密码)
攻击者 重放请求 服务器 截获合法请求 → 原样重放 → 绕过认证

3.6 权限提升 (Privilege Escalation)

漏洞描述:攻击者利用认证后的授权缺陷,从低权限账户(如普通用户)提升为高权限账户(如管理员),访问未授权资源。

类型示例检测方法
垂直越权普通用户访问/admin修改Cookie中的role字段
水平越权用户A查看用户B的订单遍历ID参数
普通用户 越权操作 管理员权限 利用授权缺陷 → 获取更高权限

3.7 逻辑缺陷 (Logic Flaw)

漏洞描述:利用认证流程中的业务逻辑漏洞,例如:密码重置流程绕过、多步骤认证跳过、条件竞争等。

典型场景

  • 密码重置链接可预测
  • 修改响应状态码绕过验证
  • 多因素认证中跳过某一步
  • 负值金额/数量逻辑

排查技巧

  • 分析前端JS逻辑
  • 篡改请求参数/顺序
  • 测试并发条件竞争
  • 检查服务端校验完整性
正常流程 逻辑绕过 未授权访问 利用业务逻辑缺陷 → 绕过认证步骤

专注课程资料整理