Files
micro_servers/docs/security/captcha_SECURITY_AUDIT_20260801.md
T
qing a7a78d1424 docs: aggregate project documentation under docs/ with unified index
- Move all per-module security audit reports to docs/security/
- Move code review logs to docs/reviews/, analysis reports to docs/reports/
- Add docs/INDEX.md as single entry point for all project documentation
- Add documentation management conventions section to README.md
- Clean up empty per-module docs/ directories
2026-08-03 13:21:48 +08:00

1.4 KiB

captcha 模块安全审计报告

审计日期: 2026-08-01
审计范围: captcha_service.py
代码版本: dev_qing 分支


修复进度

优先级 总数 已修复 待修复
P0 0 0 0
P1 1 0 1
P2 1 0 1

🟠 P1 — 高危问题

# 问题 说明
P1-1 验证码存储无容量限制,大量生成可耗尽内存 无验证码数量上限,攻击者可高频调用 /captcha/image 生成大量验证码填满内存

🟡 P2 — 中危问题

# 问题
P2-1 内存存储不支持多实例水平扩展(需换 Redis),当前单实例可接受

✅ 已有安全机制

  1. ✅ 一次性使用: verify 后立即删除 Token
  2. ✅ 5 分钟过期: 惰性清理
  3. ✅ 常数时间比较: XOR 防时序攻击
  4. ✅ 仅监听 127.0.0.1: 不对外暴露
  5. ✅ gateway 层代理: Cache-Control: no-store 禁止缓存验证码图片
  6. ✅ 依赖 pymsg 协议: recv_timeout 防 Slowloris
  7. ✅ 图形验证码使用 PIL 生成: 不依赖外部服务

修复路线图

短期

  • 添加验证码存储容量上限(如最多 10000 个,超出时清理最早的)
  • 添加生成速率限制(单 IP 每分钟最多生成 N 个)

中期

  • 考虑替换为 Redis 存储支持水平扩展(当前单实例足够)