85 lines
3.7 KiB
Markdown
85 lines
3.7 KiB
Markdown
# 資安供應鏈鏡像就緒狀態
|
||
|
||
| 項目 | 內容 |
|
||
|------|------|
|
||
| 日期 | 2026-05-13 |
|
||
| 狀態 | 草案 |
|
||
| Schema | `docs/schemas/security_mirror_readiness_v1.schema.json` |
|
||
| Snapshot | `docs/security/security-mirror-readiness.snapshot.json` |
|
||
| 預設 enforcement | `mirror_only` |
|
||
| 原則 | AwoooP 可 mirror / read-only 顯示,不可執行 |
|
||
|
||
## 0. 核心結論
|
||
|
||
本 readiness index 是給 AwoooP 主線的安全消費入口。
|
||
|
||
它回答三個問題:
|
||
|
||
1. 哪些 contract 已可 mirror?
|
||
2. 哪些 contract 只能 partial mirror 或 contract-only 顯示?
|
||
3. AwoooP 消費時仍然禁止哪些動作?
|
||
|
||
目前統計:
|
||
|
||
| 狀態 | 數量 | 說明 |
|
||
|------|------|------|
|
||
| `ready_for_mirror` | 27 | 可直接 mirror 成 Operator Console / Runtime State / Channel Event / Audit evidence |
|
||
| `partial_ready` | 2 | 可 mirror,但 evidence 仍不完整 |
|
||
| `contract_only` | 1 | 有 schema / handoff,尚無正式 snapshot |
|
||
| `blocked` | 0 | 目前沒有禁止 mirror 的 contract |
|
||
|
||
這不代表可以執行。`execution_allowed=false` 對所有 contract 都成立。
|
||
|
||
## 1. Partial / Contract-only 項目
|
||
|
||
| Contract | 狀態 | 原因 | 下一步 |
|
||
|----------|------|------|--------|
|
||
| `security_finding_v1` | `partial_ready` | 目前只有 Kali sample snapshot,runtime ingestion 尚未啟用 | 先 review `kali-finding-runtime-ingestion-approval-20260513` |
|
||
| `gitea_repo_inventory_v1` | `partial_ready` | 目前只有 public-only / blocked endpoint evidence | 先 review Gitea read-only inventory approval |
|
||
| `coding_task_v1` | `contract_only` | 已有 schema 與 handoff prompt,尚無正式 coding task snapshot | 等 code review 產生實際 task 後再 mirror |
|
||
|
||
## 2. AwoooP 鏡像目的地
|
||
|
||
AwoooP 可以將 ready / partial contracts mirror 到:
|
||
|
||
1. Operator Console。
|
||
2. Runtime State。
|
||
3. Channel Event。
|
||
4. Audit evidence。
|
||
5. Approval Queue。
|
||
|
||
初期只顯示狀態、風險、review order、evidence refs 與 blocked reason。
|
||
|
||
## 3. 永久禁止
|
||
|
||
1. 不執行 mirror item。
|
||
2. 不啟動 Kali scan。
|
||
3. 不呼叫 Kali `/execute`。
|
||
4. 不建立 GitHub repo。
|
||
5. 不修改 repo visibility。
|
||
6. 不 sync refs。
|
||
7. 不切 GitHub primary。
|
||
8. 不保存 raw secret、token、cookie、private key 或 exploit payload。
|
||
9. 不把 LOW / MEDIUM observation 變成 blocking gate。
|
||
|
||
## 4. 下一步建議
|
||
|
||
最安全的 S2 落地順序:
|
||
|
||
1. AwoooP 先 mirror `security_mirror_readiness_v1` 與 `security_supply_chain_contract_manifest_v1`。
|
||
2. 再使用 `security_mirror_event_v1` 包裝每一筆 mirror payload。
|
||
3. 再 mirror `security_mirror_route_v1`,決定目的地、channel policy 與 review lane。
|
||
4. 再 mirror `security_mirror_acceptance_v1`,驗收 contract count、event envelope、route coverage 與 redaction。
|
||
5. 再 mirror `security_mirror_quarantine_v1`,定義驗收失敗時的隔離與 retry gate。
|
||
6. 再 mirror `security_mirror_dry_run_v1`,定義接入演練回報格式。
|
||
7. 再 mirror `security_mirror_status_rollup_v1`,顯示跨 Session 狀態與下一個 gate。
|
||
8. 再 mirror `security_mirror_intake_plan_v1`,照 wave 執行 read-only intake。
|
||
9. 再 mirror `security_approval_queue_v1`,只顯示 review order。
|
||
10. 再 mirror `security_approval_gate_v1`,只記錄人工決策與 follow-up runtime gate。
|
||
11. 再 mirror `security_approval_decision_record_v1`,只保存人工決策紀錄,不觸發執行。
|
||
12. 再 mirror `security_approval_review_packet_v1`,只顯示人工審查封包、review lane 與仍然禁止事項。
|
||
13. 再 mirror `kali_integration_status_v1` 與 `kali_scan_scope_approval_v1`。
|
||
14. 最後再 mirror source-control 相關 contracts。
|
||
|
||
整個 S2 不新增 execution router、不新增執行按鈕、不新增 runtime blocker。
|