🔒 Skill Vetter 安全审计指南

AI Skills 安全检查完全攻略 — 260K+ 下载量的安全利器

⚡ 260,000+ 下载

为什么需要 Skill Vetter?

ClawHub 拥有 72,000+ 个 Skills,其中不乏恶意或存在漏洞的代码。Skill Vetter 是你的安全护盾,在安装任何 Skill 之前自动进行安全检查。

安全风险统计

风险类型占比严重程度
恶意代码植入3.2%🔴 高危
敏感信息泄露5.7%🔴 高危
不安全的依赖12.4%🟡 中危
权限滥用8.1%🟡 中危
代码质量缺陷21.3%🟢 低危

快速开始

安装 Skill Vetter

# 从 ClawHub 安装
openclaw skills install clawhub/skill-vetter

# 验证安装
openclaw skills list | grep skill-vetter

检查单个 Skill

# 检查正在安装的 Skill
openclaw skill-vetter check clawhub/weather

# 深度检查(更详细的分析)
openclaw skill-vetter check clawhub/weather --deep

# 输出 JSON 格式
openclaw skill-vetter check clawhub/weather --format json

检查结果示例

{
  "skill": "clawhub/weather",
  "version": "2.1.0",
  "scan_status": "passed",
  "score": 92,
  "alerts": [
    {
      "severity": "low",
      "type": "network_request",
      "description": "发起外部 HTTP 请求,用于获取天气数据",
      "is_expected": true
    }
  ],
  "recommendation": "safe",
  "scan_time": "1.2s"
}

高级功能

自动安全检查

# ~/.openclaw/config.yaml
security:
  auto_vet: true                   # 安装时自动检查
  auto_vet_mode: strict            # strict / balanced / relaxed
  block_unsafe: true               # 自动拦截危险 Skill
  
  skill_vetter:
    rules:
      - malware_detection          # 恶意代码检测
      - secret_leakage             # 密钥泄露检测
      - dependency_check           # 依赖检查
      - permission_audit           # 权限审计
      - code_quality               # 代码质量
  
  alert_on:
    - high_severity                # 高危时报警
    - network_access               # 网络访问
    - file_system_access           # 文件系统访问

批量扫描

# 扫描所有已安装的 Skills
openclaw skill-vetter scan-all

# 扫描指定目录
openclaw skill-vetter scan-dir ~/.openclaw/skills/

# 生成扫描报告
openclaw skill-vetter scan-all --report security-report.json

自定义规则

// custom-rules.js
module.exports = {
  name: 'check-api-keys',
  description: '检查代码中是否包含 API Key',
  
  async analyze(code, context) {
    const patterns = [
      /sk-[a-zA-Z0-9]{20,}/,         // OpenAI API Key
      /ghp_[a-zA-Z0-9]{36,}/,         // GitHub Token
      /AKIA[0-9A-Z]{16}/,             // AWS Access Key
    ];
    
    const findings = [];
    for (const pattern of patterns) {
      const match = code.match(pattern);
      if (match) {
        findings.push({
          severity: 'high',
          type: 'secret_leakage',
          location: match.index,
          description: '检测到可能的 API Key 泄露'
        });
      }
    }
    return findings;
  }
};

安全实践清单

  1. 安装前必查:每次安装 Skill 前,先运行 skill-vetter check
  2. 定期扫描:每周运行一次 scan-all,检查已安装的 Skills
  3. 关注更新:Skill Vetter 会持续更新检测规则,保持最新
  4. 权限最小化:只授予 Skill 所需的最小权限
  5. 隔离执行:对高风险 Skill 使用沙箱执行
  6. 备份配置:安全配置变更前先备份

Skill Vetter vs 其他工具

特性Skill VetterSkillScan手动检查
恶意代码检测
密钥泄露检测
依赖分析部分
权限审计
自动拦截
自定义规则N/A
批量扫描

常见问题

Q: Skill Vetter 会误报吗?

A: 有可能。如果遇到误报,可以在配置中添加例外规则,或提交到 Skill Vetter 的误报库。

Q: 如何处理报警?

A: 对于高危报警,建议不要安装;中危报警需要审查后决定;低危报警可以忽略。

Q: Skill Vetter 会影响性能吗?

A: 扫描一个 Skill 通常只需要 1-3 秒,对日常使用影响很小。

Q: 可以和其他安全工具配合使用吗?

A: 可以。Skill Vetter 可以与 SkillScan 配合使用,获得更全面的安全覆盖。