餃子安全掃描

👤 jasonshieh 📦 v1.0.5 ⭐ 4.6 ⬇️ 971 下載
🔒 IT運維與安全 免費

📖 技能介紹


name: jax-skill-security-scanner description: 🔐 OpenClaw技能安全掃描器 - 專業級安全審計工具,檢測敏感操作、木馬後門,保護您的AI助手生態安全 emoji: 🔐 license: MIT requires: bins: [node, npm] install: - id: npm kind: npm package: "@jax-npm/skill-security-scanner" tags: [security, scanner, audit, safety, openclaw, plugin] author: jax-npm version: 1.0.5


🔐 OpenClaw技能安全掃描器

專業級安全審計工具,保護您的AI助手生態安全

🚨 安全警告: 本工具本身被標記為高風險,這是預期的!安全掃描工具需要訪問敏感功能來檢測安全問題。請在使用前審查程式碼,確認其安全性和必要性。

✨ 核心功能

🔍 智慧敏感操作檢測

  • 關鍵詞掃描: 自動識別SKILL.md中的危險命令(exec, rm, kill, sudo等)
  • 程式碼分析: 深度分析JavaScript/TypeScript程式碼中的安全隱患
  • 依賴審查: 檢查package.json中的危險指令碼和依賴
  • 風險評級: 自動評估技能風險等級(高/中/低)

🦠 高階木馬/後門檢測

  • 網路後門: 檢測net, http, ws, socket.io等網路通訊風險
  • 檔案系統: 識別fs模組的危險檔案操作
  • 程序控制: 監控child_process, exec, spawn等程序操作
  • 資料外傳: 發現crypto, Buffer, base64等資料加密外傳
  • 程式碼混淆: 識別eval, Function建構子等程式碼隱藏技術
  • 組合模式: 檢測高風險的操作組合模式

🤖 AI投毒檢測 (新增)

  • 提示注入: 檢測ignore previous, disregard, override等指令覆蓋攻擊
  • 越獄攻擊: 檢測jailbreak, DAN, roleplay等繞過安全限制嘗試
  • 系統提示提取: 檢測提取system prompt的惡意請求
  • 上下文汙染: 檢測JSON/XML格式的偽裝指令
  • 程式碼注入: 檢測eval/import等危險程式碼執行
  • 社會工程: 檢測誘導確認、偽裝無害等手法

🎭 虛假資訊/幻覺檢測 (新增)

  • 虛假廣告: 檢測誇張宣傳、虛假折扣、假冒促銷
  • 詐騙識別: 檢測中獎詐騙、賬戶安全詐騙、誘導轉賬
  • 假冒產品: 檢測高仿、A貨、假冒品牌
  • 違規內容: 檢測違法交易、違規服務推廣
  • 虛假宣傳: 檢測軟文推廣、虛假體驗分享

📊 專業報告系統

  • 多格式輸出: 文本、Markdown、JSON、增強文本、增強Markdown格式報告
  • 風險統計: 清晰的風險等級分佈統計
  • 木馬摘要: 詳細的木馬檢測結果彙總
  • 安全建議: 針對性的安全改進建議
  • 視覺化: 易於理解的報告格式
  • 中高危清單: 專門列出所有中高危技能,標記風險等級
  • 風險摘要: 快速檢視中高危技能摘要

🚀 快速開始

通過ClawHub安裝(推薦)

# 搜尋技能
npx clawhub search security-scanner

# 安裝技能
npx clawhub install jax-skill-security-scanner --force

# 注意:需要--force引數,因為安全工具被標記為可疑

作為npm包安裝

# 全域性安裝命令列工具
npm install -g @jax-npm/skill-security-scanner

# 或作為專案依賴安裝
npm install @jax-npm/skill-security-scanner

作為OpenClaw外掛安裝

# 從npm安裝
openclaw plugins add @jax-npm/skill-security-scanner

# 或從本地路徑安裝
openclaw plugins add ./skill-security-scanner

📖 詳細使用指南

基本掃描

# 掃描預設技能目錄
skill-security-scan

# 指定掃描路徑
skill-security-scan --scan-path "/path/to/your/skills"

# Windows路徑
skill-security-scan --scan-path "C:\path\to\skills"

輸出格式控制

# 文本格式(預設)
skill-security-scan --format text

# Markdown格式(適合文件)
skill-security-scan --format markdown

# JSON格式(適合自動化處理)
skill-security-scan --format json

# 增強文本格式(包含中高危技能清單)
skill-security-scan --format enhanced-text

# 增強Markdown格式(包含中高危技能清單)
skill-security-scan --format enhanced-markdown

# 只顯示中高危技能摘要
skill-security-scan --risk-summary

# 儲存到檔案
skill-security-scan --format enhanced-markdown > security-report.md

進階選項

# 詳細模式(顯示更多資訊)
skill-security-scan --verbose

# 只顯示高風險
skill-security-scan --filter high

# 排除特定技能
skill-security-scan --exclude "skill1,skill2"

# 自定義敏感關鍵詞
skill-security-scan --keywords "exec,rm,kill,sudo,eval"

# 生成增強報告(包含中高危技能清單)
skill-security-scan --enhanced

# 只顯示中高危技能摘要
skill-security-scan --risk-summary

通過OpenClaw使用

# 直接呼叫
openclaw skill-security-scan

# 帶引數呼叫
openclaw skill-security-scan --format json --scan-path ./skills

🎯 使用場景

1. 新技能安全審查

# 審查新下載的技能
skill-security-scan --scan-path ./new-skills --format markdown

2. 定期安全審計

# 每月安全審計
skill-security-scan --format json --output monthly-audit-$(date +%Y-%m).json

3. CI/CD整合

# 在CI流水線中整合
skill-security-scan --format json | jq '.highRiskCount'
# 如果高風險技能>0,則失敗

4. 技能開發安全自查

# 開發過程中自查
skill-security-scan --scan-path ./my-skill --verbose

5. 中高危技能清單生成

# 生成包含中高危技能清單的增強報告
skill-security-scan --format enhanced-text

# 生成Markdown格式的增強報告
skill-security-scan --format enhanced-markdown > risk-report.md

# 快速檢視中高危技能摘要
skill-security-scan --risk-summary

# 輸出示例:
# 📋 中高危技能摘要:
# 
# 🔴 高危技能:
#   • coding-agent ⚠️
#   • tmux
# 
# 🟡 中危技能:
#   • feishu-doc
#   • feishu-drive
# 
# 📊 總計: 4箇中高危技能

📊 報告示例

文本報告示例

📊 OpenClaw 技能安全掃描報告
📅 掃描時間: 2026/3/13 11:55:02
📁 掃描路徑: /path/to/skills
🔍 掃描技能: 52個

📊 風險統計:
  🔴 高風險: 4個
  🟡 中風險: 48個
  🟢 低風險: 0個

🦠 木馬檢測摘要:
  檢測技能: 52/52
  高風險: 0個
  中風險: 0個
  可疑檔案: 0個

🔴 高風險技能:
  • coding-agent (⚠️ 系統技能)
    ⚠️ 檢測到敏感操作: exec, spawn, kill
  • tmux (⚠️ 系統技能)
    ⚠️ 檢測到敏感操作: send-keys, kill-session

JSON報告結構

{
  "scanTime": "2026-03-13T11:55:02.000Z",
  "scanPath": "/path/to/skills",
  "totalSkills": 52,
  "riskStats": {
    "high": 4,
    "medium": 48,
    "low": 0
  },
  "trojanDetection": {
    "scannedSkills": 52,
    "highRisk": 0,
    "mediumRisk": 0,
    "suspiciousFiles": 0
  },
  "highRiskSkills": [
    {
      "name": "coding-agent",
      "riskLevel": "high",
      "sensitiveOperations": ["exec", "spawn", "kill"],
      "trojanPatterns": []
    }
  ]
}

⚙️ 配置說明

OpenClaw配置檔案

# openclaw.json
{
  "plugins": {
    "entries": {
      "skill-security-scanner": {
        "config": {
          "scanPath": "/path/to/skills",
          "defaultFormat": "markdown",
          "sensitiveKeywords": [
            "exec", "shell", "rm", "delete", "format",
            "kill", "sudo", "eval", "import", "require"
          ],
          "trojanPatterns": {
            "network": ["net", "http", "ws", "socket.io"],
            "filesystem": ["fs.write", "fs.unlink", "fs.rmdir"],
            "process": ["child_process", "exec", "spawn"],
            "crypto": ["crypto", "Buffer", "base64"]
          }
        }
      }
    }
  }
}

環境變數

# 設定預設掃描路徑
export SKILL_SCAN_PATH="/path/to/skills"

# 設定預設輸出格式
export SKILL_SCAN_FORMAT="json"

# 啟用詳細日誌
export SKILL_SCAN_VERBOSE="true"

🔧 故障排除

常見問題

Q: 掃描時顯示"目錄不存在"錯誤

# 錯誤:掃描目錄不存在
# 解決方案:指定正確的路徑
skill-security-scan --scan-path "C:\Users\Administrator\.openclaw\workspace\skills"

Q: 工具被標記為高風險,是否安全?

A: 這是預期的!安全掃描工具需要訪問敏感功能來檢測安全問題。
   建議:1. 審查原始碼 2. 在受控環境中使用 3. 定期更新

Q: 如何信任這個工具?

A: 1. 檢視原始碼: https://github.com/jax-npm/skill-security-scanner
   2. 自行構建: npm run build
   3. 在沙盒環境中測試

Q: 掃描結果太多誤報?

# 調整敏感度
skill-security-scan --keywords "exec,rm"  # 只檢測最危險的命令

# 排除系統技能
skill-security-scan --exclude "coding-agent,tmux,canvas"

效能最佳化

# 只掃描最近修改的技能
find ./skills -type f -name "SKILL.md" -mtime -7 | xargs skill-security-scan

# 並行掃描(如果有多個目錄)
skill-security-scan --scan-path ./skills1 &
skill-security-scan --scan-path ./skills2 &
wait

📈 最佳實踐

1. 定期掃描計劃

# 每週掃描(新增到cron)
0 2 * * 1 skill-security-scan --format json --output weekly-scan-$(date +\%Y-\%m-\%d).json

2. 技能入庫審查

# 新技能入庫前必須通過安全審查
skill-security-scan --scan-path ./new-skill --format markdown > review.md
# 審查review.md,確認安全後才能入庫

3. 安全基線設定

# 設定安全基線:高風險技能不能超過2個
high_risk=$(skill-security-scan --format json | jq '.riskStats.high')
if [ $high_risk -gt 2 ]; then
  echo "❌ 安全基線被突破!高風險技能過多"
  exit 1
fi

4. 監控和告警

# 監控高風險技能變化
current=$(skill-security-scan --format json | jq '.highRiskSkills | length')
previous=$(cat last-scan.json | jq '.highRiskSkills | length')

if [ $current -gt $previous ]; then
  echo "🚨 警告:高風險技能增加!"
  # 傳送告警通知
fi

🛡️ 安全建議

立即行動

  1. 審查高風險技能 - 確認其安全性和必要性
  2. 限制許可權 - 為高風險技能設定最小必要許可權
  3. 監控行為 - 記錄所有敏感操作日誌

中期改進

  1. 建立白名單 - 只允許執行受信任的技能
  2. 實施沙盒 - 在隔離環境中執行高風險技能
  3. 程式碼審查 - 新技能必須經過安全審查

長期策略

  1. 安全培訓 - 提高技能開發者的安全意識
  2. 自動化審計 - 整合到CI/CD流水線
  3. 威脅建模 - 定期進行安全威脅分析

🔄 更新和維護

檢查更新

# 檢查npm包更新
npm outdated -g @jax-npm/skill-security-scanner

# 更新到最新版本
npm update -g @jax-npm/skill-security-scanner

版本歷史

  • v1.0.3 (2026-03-13): 新增中高危技能清單功能,支援增強報告格式
  • v1.0.2 (2026-03-09): 修復bug,最佳化效能,改進報告格式
  • v1.0.1 (2026-03-09): 新增木馬檢測功能,增強敏感操作識別
  • v1.0.0 (2026-03-09): 初始版本釋出,基礎掃描功能

    發現更多技能外掛,請訪問7w4.net。

問題反饋

  • GitHub Issues: https://github.com/jax-npm/skill-security-scanner/issues
  • 郵件支援: security@jax-npm.com
  • 文件: https://docs.jax-npm.com/skill-security-scanner

📄 許可證

MIT License - 詳見 LICENSE

🙏 致謝

感謝所有貢獻者和使用者,是你們的反饋讓這個工具變得更好!


🔐 安全提示: 安全是一個持續的過程,不是一次性的任務。定期掃描、持續監控、及時響應是保持系統安全的關鍵。

🚀 開始保護您的OpenClaw生態吧!

🤖 AI 評測

整體質量不錯,這個工具能有效檢測 AI 技能中的安全風險,功能豐富且使用方便。優點是文件詳細、輸出格式多樣、能識別多種攻擊型別。不足之處是中文虛假資訊的檢測準確性還有提升空間,部分功能在非 Windows 系統上可能需要額外配置。

📊 多維度評分

適應性4.3
規範性4.8
有效性4.5
可靠性4.5
可信度4.8

📁 包含檔案 (18 個)

📄 README.md 10.1 KB
📄 SKILL.md 11.8 KB
📄 _meta.json 145 B
📄 bin/skill-security-scan.js 6.8 KB
📄 dist/hallucination-detector.js 9 KB
📄 dist/index.d.ts 338 B
📄 dist/index.js 3.6 KB
📄 dist/prompt-poison-detector.js 9.8 KB
📄 dist/reporter.d.ts 352 B
📄 dist/reporter.js 20.3 KB
📄 dist/reporter_enhanced.js 9.9 KB
📄 dist/scanner-new.js 10.7 KB
📄 dist/scanner.d.ts 1.4 KB
📄 dist/scanner.js 13.8 KB
📄 dist/trojan-detector.d.ts 590 B
📄 dist/trojan-detector.js 9.1 KB
📄 openclaw.plugin.json 2.7 KB
📄 package.json 2.2 KB