图片/点击验证码绕过与识别
适用场景
登录、注册、密码重置、短信发送等接口有验证码拦截时使用。
Phase 1: 验证码类型识别
| 类型 | 特征 | 绕过思路 |
|---|---|---|
| 图片数字/字母 | 4-6 位字符图 | OCR/打码平台/逻辑绕过 |
| 点击式(click captcha) | 按提示点击图中文字/图形 | 坐标解析+模拟点击 |
| 滑块 | 拖拽拼图 | 轨迹模拟/缺口识别 |
| 算术/中文 | 直接可读 | 正则提取直接回答 |
Phase 2: 识别与自动化解法
- OCR 识别:tesseract 或打码平台识别图片验证码
- 点击式验证码:解析提示文字坐标,按坐标点击(selenium/requests 模拟)
- 滑块:识别缺口位置生成拖拽轨迹,绕过前端轨迹校验
Phase 3: 逻辑绕过(优先尝试)
- 验证码复用:同一 code 多次使用
- 验证码回显:响应/JS 中直接返回
- 空值/删除参数:code 置空、删除 captcha 参数
- 万能验证码:固定值(如 0000、8888)
- 并发绕过:验证码校验后未失效,并发重放
- 前端校验:只在 JS 校验,直接调用后端接口绕过
Phase 4: 频率限制绕过
- 验证码发送/校验接口限频:IP 轮换、参数污染、并发
- 爆破验证码时注意触发锁定/封禁
授权边界
- 仅限授权渗透测试
- 爆破需控制速率,避免影响业务
关联
- 密码重置/短信验证码逻辑 → password-reset-methodology