Files
awoooi/docs/security/SECURITY-MIRROR-QUARANTINE.md
Your Name 9e15fd08b3
All checks were successful
CD Pipeline / tests (push) Successful in 1m39s
Code Review / ai-code-review (push) Successful in 15s
CD Pipeline / build-and-deploy (push) Successful in 5m19s
CD Pipeline / post-deploy-checks (push) Successful in 2m11s
feat(web): land iwooos security posture surfaces
2026-05-25 20:35:52 +08:00

51 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 資安鏡像隔離契約
| 項目 | 內容 |
|------|------|
| 日期 | 2026-05-13 |
| 狀態 | 草案 |
| Schema | `docs/schemas/security_mirror_quarantine_v1.schema.json` |
| Snapshot | `docs/security/security-mirror-quarantine.snapshot.json` |
| 模式 | `mirror_only` |
| runtime 執行授權 | `false` |
## 0. 核心結論
`security_mirror_quarantine_v1` 定義 AwoooP 在 mirror-only 資安資料驗收失敗時的隔離與回報方式。
它只處理「鏡像資料本身」的品質問題,不阻擋產品、不阻擋部署、不啟動修復動作。
## 1. 隔離 Lanes
| Lane | 觸發來源 | 初期處理 |
|------|----------|----------|
| `contract_count_mismatch` | `CONTRACT_COUNT_MATCH` | 隔離該批 payload要求重新產生一致 snapshot |
| `missing_event_envelope` | `EVENT_ENVELOPE_REQUIRED` | 拒收未帶不可執行信封的 payload |
| `route_coverage_gap` | `ROUTE_GROUP_COVERAGE` | 隔離未知或未路由 contract要求補 route |
| `redaction_failed` | `REDACTION_ONLY` | 拒收含 raw sensitive value 的 payload |
| `schema_or_json_invalid` | `SCHEMA_JSON_PARSE` | 隔離無法 parse 或 schema 不合格的 snapshot |
## 2. AwoooP 可做
1. 顯示隔離原因。
2. 顯示 owner、recovery request 與 retry gate。
3. 將隔離 metadata 寫入 Audit evidence。
4. 等新的 snapshot commit 後重新驗收。
5. 對非 runtime 風險保留 observe / warn。
6. 將隔離狀態提供給 `security_mirror_dry_run_v1` dry-run 報告與 `security_mirror_status_rollup_v1` 狀態彙整。
## 3. AwoooP 不可做
1. 不自動重試同一份失敗 payload。
2. 不猜測缺漏 contract 或 route。
3. 不把 quarantine lane 轉成 runtime blocker。
4. 不把 quarantine lane 轉成 execution queue。
5. 不保存 raw secret、token、cookie、private key 或 exploit payload。
6. 不啟動 scan、不呼叫 Kali `/execute`、不建立 repo、不 sync refs、不切 GitHub primary。
## 4. Retry 原則
重試必須等新的 snapshot commit。
同一份失敗 payload 不自動 retry這是為了避免 AwoooP 在資料不完整或未脫敏時反覆吃進錯誤 evidence也避免把框架期驗收問題升級成 runtime 事故。