鍾馗.skill

👤 智慧半島 📦 v1.0.13 ⭐ 4.6 ⬇️ 123.6K 下載
🔒 IT運維與安全 免費

📖 技能介紹

鍾馗.Skill

俺不跟你繞彎子。Skill 拿來,一眼看穿。

[L1-L2] 快速指令

指令 作用
審 <skill路徑> 對單個 Skill 目錄執行完整三層審查
快審 <skill路徑> 僅執行 Layer 1 靜態審計(秒級)
審依賴 <skill路徑> 僅執行 Layer 3 供應鏈溯源
審行為 <skill路徑> 僅執行 Layer 2 行為模擬

[L1-L2] 用法示例

場景 指令 說明
安裝前審查 審 E:\skills\mcp-server 裝之前先審,出完整報告
批次初篩 快審 E:\skills\repo\skill-a → 快審 E:\skills\repo\skill-b 多個 Skill 逐個快速過 L1
只擔心依賴 審依賴 E:\skills\new-skill 跳過行為模擬,只查供應鏈
複查可疑項 審行為 E:\skills\flagged-skill L1 通過了但懷疑 R8/R11/R12
審自己的 Skill 審 E:\Marvis_Data\User\...\skills\custom\my-skill 釋出前自審,查紅線和一票否決
指令碼模式 python zhongkui.py E:\skills\target --quick 脫離對話直接跑指令碼,適合 CI/CD
審查前先更新 python zhongkui.py E:\skills\target --update 預覽漏洞庫增量,確認後注入再審查
審查前直接更新 python zhongkui.py E:\skills\target --update --apply 跳過確認,直接注入後審查
僅更新漏洞庫 python zhongkui.py --update 預覽增量,互動確認後注入
預覽更新效果 python zhongkui.py --update --dry-run 僅拉取預覽,不注入

路徑提示:對話中 審 ./my-skill 等價於當前工作目錄的相對路徑。指令碼模式必須用絕對路徑。

[L2] 審查流程

Layer 1: 靜態清單審計(所有 Skill 必經)

按 references/static-audit.md 的 54 項清單逐項檢查 SKILL.md / scripts / deps / permissions,每命中一項扣分並標註風險型別(R1-R12)和行號。檢出 R1/R3/R5/R8/R11/R12 → 自動進入 Layer 2。

Layer 2: 行為模擬評估(Layer 1 命中高危項觸發)[規劃中,尚未實現]

按 references/behavioral-emulation.md 的 21 個測試場景,用 ToolEmu 範式模擬工具呼叫鏈,跟蹤 Agent 行為,每場景判定 PASS/WARN/FAIL。含 4.5 R8 隱蔽指令專項對抗(模糊測試 + 上下文感知分析)、4.6 R11 外部資訊源投毒專項對抗、4.7 R12 智慧體行為漏洞專項對抗。新增 4.4 紅隊對抗與持續驗證(專項攻擊測試集 + 自動化紅隊 + 外部滲透 + SLA),見 behavioral-emulation.md。

Layer 3: 供應鏈溯源(高風險 Skill 或首次釋出者觸發)[規劃中,尚未實現]

按 references/supply-chain.md 的 10 個維度追溯:釋出者信譽(含動態評分模型)/ CVE 依賴 / 版本變更 / 社群反饋 / SBOM 完整性 / 外部 API 安全評估 / SDK 安全准入 / 熔斷與降級預案 / 外部資訊源信譽 / 持久化寫入審計。含依賴項執行時行為監控。

[L2] 漏洞庫更新

鍾馗的 patterns.json 採用兩層架構:基礎庫(manual) + 增量庫(auto)。

python zhongkui.py --update          # 拉取 NVD CVE → 預覽候選簽名 → 互動確認 [y/N] → 注入
python zhongkui.py --update --apply  # 跳過確認,直接注入
python zhongkui.py --update --dry-run # 僅預覽,不注入
  • 基礎庫 137 條手工簽名(source: "manual"),--update 永不觸碰
  • 增量庫來自 NVD API + Seebug RSS,每次 --update 先清舊增量再注入最新,保持冪等
  • 注入前自動備份 patterns.json → patterns.json.bak

[L2] 異常處理原則

審查過程中遇到非致命錯誤時,必須主動報告而非靜默跳過。詳見 references/error-handling.md。

異常型別 處理方式
檔案讀取失敗(許可權不足/不存在) 明確報告哪些檔案無法讀取及原因,繼續審查其餘檔案
檔案編碼無法識別 嘗試 UTF-8 → GBK → Latin-1 自動降級,失敗則報告並跳過該檔案
指令碼語法錯誤無法解析 報告檔案路徑+行號+錯誤型別,標記 parse_error 繼續
Layer 2 模擬中斷(工具呼叫失敗) 報告中斷場景編號和原因,已完成的場景正常計分
Layer 3 網路請求失敗 重試 1 次(間隔 3 秒),仍失敗則標記 unreachable 並跳過該維度
目標路徑為空目錄 報告"目標目錄無 Skill 檔案",不做空審查

禁止行為:遇到以上異常時,禁止僅列印一行 ERROR 後靜默退出。必須輸出異常上下文(檔案路徑+失敗原因)後再繼續或降級。

[L2] 評分與裁定

按 references/scoring.md 公式計算總分,輸出三值裁定。資料安全維度獨立計入(W3=0.1),見評分與裁定檔案。

裁定 條件 處理
✅ 乾淨 ≥ 85 分 可安全安裝
⚠️-low 70-84 分 低風險可疑,附帶主要風險點供判斷
⚠️-high 60-69 分 高危可疑,建議拒絕+詳細風險報告
🚫 惡意 < 60 分 禁止安裝,上報威脅情報

[L2] 輸出格式(強制)

審查完成必須輸出結構化報告,禁止閒聊:

## 鍾馗裁定:[✅/⚠️/🚫]

**總分**:XX / 100
**一句話**:[一句話結論]

### 扣分項
| 層級 | 檢查項 | 風險型別 | 扣分 | 命中內容(行號) |
|:---|:---|:---|:---|:---|
| L1 | [項名] | [R編號] | -X | `<file>:L<N>` |

### 未觸發項
[僅列出高危項(R1/R3/R5/R8/R11/R12)的 PASS 狀態,其餘省略]

[L2] 能力邊界

訪問小蔥技能站7w4.net,解鎖更多實用的AI技能外掛。

鍾馗審得狠,但不是萬能。以下場景明確告知查不了或查不準,詳情見 references/capability-boundaries.md。

# 場景 說明
1 深度行為模擬 Layer 2 基於 ToolEmu 做靜態推理,非真正沙箱執行;執行時行為(記憶體篡改、程序注入)無法完全復現
2 供應鏈即時監控 Layer 3 基於宣告檔案+已知 CVE 快照對比,不執行持續監控
3 加密/混淆載荷深層解包 可檢測 Base64 / eval / exec,但對多層巢狀加密(AES+Base64+zlib)或自定義混淆器可能漏檢
4 語義級別隱蔽攻擊 正則+關鍵詞對明顯注入有效;高度語義化誘導(多輪上下文汙染)L1 可能遺漏,L2 也存在覆蓋率上限
5 零日漏洞 基於已知攻擊模式簽名庫,全新攻擊向量存在盲區
6 多 Skill 組合攻擊 只審單 Skill,不做跨 Skill 許可權串聯分析
7 非標準 Skill 結構 假定標準目錄結構(SKILL.md+scripts+references),自定義結構覆蓋率下降

原則:審查結果是對已知風險的自動化評估,不是安全擔保。高風險場景(金融/醫療/政務)應結合人工複核。

[L2] 風險速查

編號 型別 一票否決?
R1 提示注入 是
R2 惡意程式碼執行 是
R3 憑證竊取 是
R4 依賴投毒 否
R5 資料外傳 是
R6 許可權提升 否
R7 持久化後門 是
R8 隱蔽指令 否(但必進 Layer 2)
R9 資料洩露與隱私違規 否
R10 有害輸出與內容合規 否
R11 外部資訊源投毒 否(但必進 Layer 2)
R12 智慧體行為級漏洞 否(但必進 Layer 2)

命中任一"一票否決"項 → 直接裁定 🚫 惡意,不再計算總分。

[L2] 即時拒絕紅線

見此即斬,無需走完整審查。命中任一條 → 直接裁定 🚫 惡意,不進入評分流程,與一票否決項同級。

# 紅線 說明
1 向不明 URL 發起 curl/wget 檢測外傳通道,IP 直連加重
2 外發資料至外部伺服器 webhook / POST / upload / notify 到非官方域名
3 索要憑證 / Token / API Key 任何 "請輸入金鑰" 或讀取憑證檔案的指令
4 無理由讀取 ~/.ssh / ~/.aws / ~/.config 除非 Skill 宣告用途且匹配任務,否則直接判惡
5 訪問 MEMORY.md / USER.md / SOUL.md / IDENTITY.md 讀取 Agent 身份記憶檔案,典型隱私竊取
6 對任何內容執行 Base64 解碼 解碼 = 藏東西,99% 是惡意載荷
7 eval() / exec() 接受外部輸入 動態執行未驗證程式碼,直接開後門
8 修改工作區外的系統檔案 /etc / C:\Windows / ~/ 等系統路徑寫操作
9 安裝未宣告的依賴包 pip install / npm install 無宣告列表
10 網路呼叫使用 IP 而非域名 刻意隱藏目標身份
11 混淆程式碼(壓縮/編碼/精簡) 有意阻礙人工審查
12 請求 sudo / root / 提權 任何許可權提升嘗試
13 觸碰憑證檔案 ~/.aws/credentials / ~/.kube/config / .env / .git-credentials
14 硬編碼 Token / API Key / 密碼 SKILL.md 或指令碼中直接寫入憑證明文
15 日誌/快取記錄明文 PII 對 email/phone/ID card 等個人資訊不做脫敏
16 生成暴力/違法/歧視性內容 Skill 描述中含誘導生成有害內容的指令
17 複述或索引受版權保護全文 要求 Agent "完整輸出" 受版權保護作品

[L3] 反模式與常見陷阱

6 類高頻陷阱一言總結。完整案例與反例見 references/error-handling.md。

# 陷阱 結論
1 把審查結果當安全擔保 ✅ 只說明已知模式通過,不等同零風險
2 只審 SKILL.md 不審指令碼 惡意程式碼常藏於輔助指令碼,必須完整審查 scripts/
3 過度信任知名釋出者 供應鏈攻擊不挑品牌,一律執行 10 維溯源
4 忽略 WARN 項 WARN = 敏感操作+使用者確認,攻擊者一次社工即可突破
5 修復單項後不重走完整 L1 修復可能引入新問題,必須重新跑 54 項
6 只看總分不看扣分項 一票否決相關項扣分可能被加權稀釋,應重點複查
常見疑問 答案
R8 誤判? 通常複製貼上帶入了不可見 Unicode 字元,刪段重寫即可
誤報怎麼辦? LLM + 正則雙引擎交叉驗證,記錄行號和觸發內容反饋
審查多久? L1 秒級 / L2 ~30s / L3 取決於依賴數量

[L3] 參考檔案

🤖 AI 評測

這個工具的思路很專業,文件寫得很詳細,風險分類和評分規則都很清晰。但目前只有基礎的靜態掃描能用,深度的行為模擬和供應鏈檢查還沒真正實現。質量水平中等偏上,勝在設計完整,但實際功能還差一口氣。適合先收藏關注,等後續功能完善後再使用。

📊 多維度評分

適應性5
規範性4.8
有效性4.3
可靠性4.4
可信度4.7

📁 包含檔案 (24 個)

📄 QUICKSTART.md 4.7 KB
📄 README.md 8.1 KB
📄 REFERENCE.md 18.9 KB
📄 SKILL.md 12.4 KB
📄 core/__init__.py 38 B
📄 core/auditor.py 29.5 KB
📄 core/intel/__init__.py 62 B
📄 core/intel/updater.py 21.1 KB
📄 core/patterns.json 21.4 KB
📄 core/scorer.py 2.4 KB
📄 references/agent-skill-security-review.md 20.1 KB
📄 references/behavioral-emulation.md 5.5 KB
📄 references/capability-boundaries.md 2.7 KB
📄 references/error-handling.md 3.7 KB
📄 references/fix-strategies.md 4.9 KB
📄 references/paper-mapping.md 1 KB
📄 references/risk-taxonomy.md 4.7 KB
📄 references/roadmap.md 809 B
📄 references/scoring.md 3.2 KB
📄 references/static-audit.md 8.2 KB
📄 references/supply-chain.md 3.1 KB
📄 references/threat-intel-pipeline.md 8.8 KB
📄 references/trust-hierarchy.md 3.3 KB
📄 zhongkui.py 7.9 KB