Files
blackbird/docs/security/ai_review_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

2.2 KiB
Raw Blame History

ai_review 模块安全审计报告

审计日期: 2026-08-01
审计范围: ai_review.py、agent/、security_middleware.py
代码版本: dev_qing 分支


修复进度

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

🔴 P0 — 严重问题

P0-1: 所有接口无认证,存在 API 滥用和 RAG 投毒风险

  • 位置: ai_review.py Flask 路由
  • 问题:
    • /review、/rag/feedback、/rag/list 等接口均无认证
    • 虽然绑定 127.0.0.1,但任何本地进程/用户可调用
    • RAG 投毒风险:/rag/feedback 可向知识库注入恶意样本,绕过内容审核
    • API 滥用:无限制调用 DeepSeek API,消耗费用
  • 修复建议:
    1. /rag/feedback 必须添加认证(仅管理员/internal 调用)
    2. /review 添加上游服务认证(共享密钥)
    3. 添加调用速率限制
    4. RAG 反馈需人工审核后才入库,而非直接写入

🟠 P1 — 高危问题

# 问题 说明
P1-1 DeepSeek API Key 通过 .env 配置,但需确认未硬编码或提交 检查 .env 是否在 .gitignore 中

🟡 P2 — 中危问题

# 问题
P2-1 RAG 知识库文件无校验,损坏文件可能导致服务异常
P2-2 审核 prompt 可被注入(内容中包含"忽略之前指令"等越狱提示)

✅ 已有安全机制

  1. ✅ fail-closed 设计: API 异常或响应解析失败时一律返回 {"invalid": "true"}(拦截),宁可误拦不可漏放
  2. ✅ RAG top-3 相似样本注入: MD5 去重,提升审核准确率
  3. ✅ 审核类别覆盖: 色情、违禁药品、赌博、诈骗、仇恨/暴力/恐怖主义
  4. ✅ security_middleware.py: 安全响应头
  5. ✅ Docker 容器化: Python 3.11-slim 基础镜像,端口绑定 127.0.0.1

修复路线图

立即(24小时)

  • /rag/feedback 添加认证,禁止未授权写入

短期(72小时)

  • 所有接口添加内部服务认证
  • 调用速率限制
  • RAG 反馈改为人工审核入库

中期

  • Prompt 注入防护
  • RAG 知识库文件校验