# Bookworm 审计 Out-of-Scope 列表 > **本文件由 SECURITY.md 与 AI-CONSTITUTION.md 共同引用。** > 列出"看似漏洞实为设计选择"的场景,避免红队/自审 Agent 重复争议。 > > 借鉴自 OpenClaw.ai SECURITY.md (329 行同类列表),结合 Bookworm 单用户系统裁剪。 ## 适用范围 适用于以下 Agent / Skill 的发现报告: - `red-team-attacker` - `red-team-logic` - `self-auditor` - `production-reviewer` - `code-reviewer` - `security-expert` 发现项落入以下任一类别 → 标记 `OOS`,不计入红队评分,不写入 evolution-log violation。 ## 不视为漏洞的场景(10 类) ### 1. Prompt Injection Only 不结合钩子边界 / 路由策略 / 凭证泄漏链路的纯提示词注入。 > 必须**演示一条从 prompt → 凭证泄漏 / RCE / 路由错误引导 / 数据破坏**的完整链路才是漏洞。 ### 2. 本地 hook 被攻击者改写 `~/.claude/hooks/*.js` 已是受信任本地状态。报告必须先证明"如何获得 hook 写权限",否则属设计内行为。 ### 3. MEMORY.md / evolution-log.jsonl 投毒 工作区文件等于操作员状态。除非展示**外部触发**写入路径(如某 hook 接收远程数据后写入),否则属设计内。 > 例外:`bookworm.security.jsonlHmac` enforce 模式启用后,离线追加篡改属漏洞。 ### 4. 白名单技能内 `child_process` / `eval` `developer-expert` / `bash` 等白名单 skill 显式允许执行用户代码。属设计选择。 ### 5. PostToolUse 钩子 fail-open 设计为非阻断式审计。除非 PreToolUse 阶段被绕过(这才是漏洞),否则不计。 > 例外:`bookworm.security.failClosed` enforce 模式启用后,关键 PreToolUse hook 异常将拒绝。 ### 6. stats-compiled.json / skill-registry 缓存陈旧 由 self-auditor / self-healer 周期性修复。陈旧本身不视为漏洞。 ### 7. MCP Server 自身漏洞 上游 MCP 项目责任。请向对应项目报告。Bookworm 仅负责 MCP 调用边界(safety-gate 等)。 ### 8. 路由准确率 < 100% 基于 Bayesian 后验的概率系统,5-10% 漂移属正常。具体阈值见 `evolution-log.jsonl` 历史 P@1 实测。 ### 9. 临时 / 低质量复现 缺少明确文件:行号 + 可复现 PoC 的报告会被关闭为 `invalid`。 ### 10. 非 ~/.claude/ 范围的 OS 安全问题 应向 OS / Anthropic Claude Code 报告。 - 例:Windows ACL 默认继承、Node.js 自身 CVE、shell escape 等 ## 已知虚假阳性模式(自审钩子常见) 按红队识别频次降序: | 模式 | 触发位置 | 假阳性原因 | |---|---|---| | Base64 长串误判为密钥 | `sanitize.js` `[A-Za-z0-9+/]{64,}` | Git SHA / commit hash / base64 编码内容(已在 v6.0 收紧到 64 字节阈值)| | URL path 误判为 Bearer | `Bearer\s+\S{10,}` | 已在 v6.0 收紧为 `[A-Za-z0-9._\-+=]{18,}` | | 测试 fixture token | `*.test.js` 内 `sk-...` | 含 `// pragma: allowlist secret` 注释 | | `__proto__` 字面量 | 防御机制本身的对抗测试 | 验证防御需要这些字符串 | | Hook 修改后 integrity-check 警告 | `hooks/integrity-check.js` | 用户合法修改后需手动跑 `--generate` 更新基线 | | evolution-log 历史粘连行 | line 55-58 | 旧 hook 写入未加 `\n`,已由 P1.2 relinify 修复 | ## 审计接收门槛(必须满足) 接受报告必须含: - **位置**:精确文件路径 + 行号(基于当前 HEAD) - **可复现 PoC**:脚本或步骤可在本机验证 - **影响**:明确的信任边界跨越 - **不被本文件 OOS 列表覆盖** 不达上述门槛 → 关闭。 ## 真实威胁面(已记录,可重复扫描) 按红队评估,以下是 Bookworm 真实攻击向量(详见 `evolution-log.jsonl`): 1. ~~凭证文件 644 权限~~(已修复 2026-04-25:icacls 收紧) 2. **evolution-log/route-feedback HMAC 链** — warn 期间 7 天观察(2026-05-02 到期) 3. **route-feedback.jsonl race(lockfile DoS)** — 待修 4. **关键 hook 普遍 fail-open** — warn 期间 7 天观察(2026-05-02 到期) 5. ~~history.jsonl 31 处凭证泄漏~~(已修复 2026-04-25:sanitize v6.0 清洗) ## 引用关系 - `SECURITY.md` § "Out-of-Scope" → 引用本文件 - `AI-CONSTITUTION.md` § 1.3 安全红线 → 与本文件互补(红线是必须做,本文件是"不计入漏洞") - `red-team-attacker` / `red-team-logic` Agent prompt → 应在系统提示中读本文件作为 baseline ## 修订历史 - 2026-04-25 v1.0:从 OpenClaw.ai SECURITY.md 借鉴落地,初始 10 类 + 6 假阳性模式