# Security Finding v1 契約 | 項目 | 內容 | |------|------| | 日期 | 2026-05-13 | | 狀態 | 草案,供 AwoooP mirror-only 消費 | | Schema | `docs/schemas/security_finding_v1.schema.json` | | Sample snapshot | `docs/security/security-finding-kali-sample.snapshot.json` | | 原則 | 只保存脫敏 finding 摘要,不保存 raw secret、token、cookie、private key 或 exploit payload | ## 0. 核心結論 `security_finding_v1` 是 Kali、Trivy、ZAP、Semgrep、detect-secrets、kube posture 等工具的共同 finding envelope。 初期它只做三件事: 1. 讓 findings 有穩定格式與可追溯 evidence ref。 2. 讓 AwoooP 可以 mirror 成 Runtime State / Channel Event / Audit。 3. 讓高風險項目產生 approval candidate,而不是直接執行修復。 它不授權 active scan、不授權 credentialed scan、不授權阻擋部署、不授權自動修復。 ## 1. 必填欄位 | 欄位 | 說明 | |------|------| | `finding_id` | 穩定且可重算的 fingerprint,避免重複告警 | | `scan_run_id` | 來源掃描或人工盤點批次 | | `scanner` | `kali`、`trivy`、`zap`、`semgrep`、`detect-secrets`、`kube-bench`、`manual` 或 `other` | | `asset_key` | 對齊 ADR-090 / Security Supply Chain 的資產 key | | `target_type` | host、website、api_endpoint、container、package、repo、k8s_resource 或 tool | | `target` | 已脫敏 target identifier | | `category` | exposure、cve、secret、misconfig、auth、tls、web、code、supply_chain 或 network | | `severity` | scanner 初判嚴重度 | | `confidence` | scanner 或 reviewer 初判信心 | | `recommended_mode` | `observe`、`warn`、`approve_required` 或 `block_candidate` | | `evidence_ref` | 指向已脫敏 evidence,不存敏感原文 | | `summary` | 繁體中文摘要 | | `recommended_action` | 初期只作建議,不直接執行 | ## 2. 低摩擦模式對照 | 條件 | `recommended_mode` | 初期處理 | |------|--------------------|----------| | LOW / MEDIUM 且信心不高 | `observe` | mirror + 週期 review | | MEDIUM 且有明確 owner | `warn` | 建 follow-up,不阻擋部署 | | HIGH / CRITICAL、credential、RBAC、firewall、NetworkPolicy、secret rotation | `approve_required` | 產生 approval candidate,人工核准後才進下一步 | | raw secret、無 rollback 的破壞性動作、`/execute` 類命令執行 | `block_candidate` | 預設不執行,只能走人工 exception | ## 3. AwoooP 消費邊界 AwoooP 可以: 1. mirror 脫敏 finding 摘要。 2. 顯示 severity、confidence、asset、owner、recommended mode。 3. 建立 approval candidate。 4. 串到 Audit evidence 與 Channel Event。 AwoooP 不可以: 1. 直接啟動 Kali scan。 2. 直接呼叫 Kali `/execute`。 3. 自動 patch、merge、deploy 或 rotate secret。 4. 將 LOW / MEDIUM observation 變成 blocking gate。 5. 保存 raw secret、token、cookie、private key 或 exploit payload。 ## 4. 第一個 sample `docs/security/security-finding-kali-sample.snapshot.json` 只是一筆 contract sample,用來驗證 schema 與 AwoooP mirror 欄位,不代表已經接通 runtime ingestion。 目前 sample 取自 Kali 112 live 盤點中的 Harbor image scan failure 類型,已脫敏為 supply-chain warning,不阻擋任何部署。