Skulk Skill Scanner:Openclaw 技能安全审计

作者:互联网

2026-03-28

AI教程

什么是 Skulk Skill Scanner?

Skulk Skill Scanner 是专为 AI 代理扩展程序的开发者和用户设计的关键安全工具。它通过对技能文件夹执行静态分析,识别凭据窃取、破坏性命令和混淆代码等风险信号,从而提供强大的防御层。无论您是从 ClawHub 下载新技能,还是准备发布自己的技能,此工具都能确保 Openclaw 技能符合安全标准。

通过审计代码库和元数据,扫描器会分配一个安全评分,帮助用户对特定技能的可信度做出明智决策。它充当自动审计员,在常见攻击向量危害您的工作空间或数据之前将其捕获。

下载入口:https://github.com/openclaw/skills/tree/main/skills/adainthelab/skulk-skill-scanner

安装与下载

1. ClawHub CLI

从源直接安装技能的最快方式。

npx clawhub@latest install skulk-skill-scanner

2. 手动安装

将技能文件夹复制到以下位置之一

全局模式 ~/.openclaw/skills/ 工作区 /skills/

优先级:工作区 > 本地 > 内置

3. 提示词安装

将此提示词复制到 OpenClaw 即可自动安装。

请帮我使用 Clawhub 安装 skulk-skill-scanner。如果尚未安装 Clawhub,请先安装(npm i -g clawhub)。

Skulk Skill Scanner 应用场景

  • 在本地环境中启用从 ClawHub 下载的技能之前对其进行审计。
  • 在公开分发之前对您自己的 Openclaw 技能进行最终安全检查。
  • 将自动安全评分集成到代理开发的 CI/CD 流水中。
  • 检查 SKILL.md 文件及相关脚本的安全性,以发现隐藏的提示词注入或恶意指令。
Skulk Skill Scanner 工作原理
  1. 扫描器接收指向特定 Openclaw 技能文件夹的目录路径。
  2. 它根据按严重程度分类的安全规则库进行静态模式匹配。
  3. 该工具评估敏感 API 调用、网络请求和文件系统操作的存在情况。
  4. 评分算法根据检测到的严重、高或中度风险,从 100 分的基础分中扣除分数。
  5. 扫描器输出“通过”、“警告”或“失败”状态,并附带详细报告或简要总结。

Skulk Skill Scanner 配置指南

要开始使用扫描器,请确保已安装 Node.js 并可以访问技能脚本目录。运行以下命令扫描目标目录:

node scripts/scanner.js  [--verbose] [--json]

对于本地 Openclaw 技能的基础审计,您可以使用 summary 标志进行快速状态检查:

node scripts/scanner.js ./skills/my-skill --summary

Skulk Skill Scanner 数据架构与分类体系

扫描器根据严重程度加权评分系统组织其发现。它使用以下数据分类评估 Openclaw 技能:

严重程度 识别出的风险因素
严重 数据外泄、凭据访问、安全覆盖
混淆、未知网络访问、权限提升
工作空间外写入、意外的包安装
信息 API 密钥引用、广泛的工具访问请求

结果可以导出为 JSON 格式,以便在自动化安全仪表板中进一步处理。

name: skulk-skill-scanner
description: "Scan OpenClaw skill folders for security red flags before installing or publishing. Detects data exfiltration, credential theft, prompt injection, destructive commands, obfuscation, privilege escalation, and supply chain risks. Use when: evaluating a skill from ClawHub before install, auditing your own skills before publishing, or reviewing any SKILL.md for safety. NOT for: general code review or vulnerability scanning of non-skill codebases."

Skill Scanner

Security scanner for OpenClaw agent skills. Static analysis for red flags.

Usage

node scripts/scanner.js  [--verbose] [--json] [--summary] [--ignore ] [--include-self]

Examples

# Scan a downloaded skill folder before enabling it
clawhub inspect some-skill
node scripts/scanner.js ./skills/some-skill --verbose

# Scan your own skill before publishing
node scripts/scanner.js ./skills/my-skill

# JSON output for automation
node scripts/scanner.js ./skills/my-skill --json

# One-line summary output for heartbeat checks
node scripts/scanner.js ./skills/my-skill --summary

# Include scanner internals (off by default to reduce self-scan noise)
node scripts/scanner.js ./skills/skulk-skill-scanner --include-self

What It Catches

Severity Flags
?? Critical Data exfiltration, credential access, safety overrides, destructive commands
?? High Obfuscation (base64/eval), unknown network access, env scanning, privilege escalation, hidden instructions
?? Medium Writes outside workspace, package installs (supply chain), messaging on user's behalf, persistent timers/automation
?? Info API key references, broad tool access requests

Scoring

  • Each unique rule deducts points: critical=30, high=15, medium=5, info=0
  • Score 75-100: ? PASS
  • Score 50-74: ?? WARN
  • Score 0-49 or any critical: ? FAIL
  • Exit code 1 on FAIL (CI-friendly)

Safe Domain Allowlist

Known legitimate API domains are allowlisted to reduce false positives on network-related rules. Edit the SAFE_DOMAINS array in scripts/scanner.js to customize.

Limitations

This is static pattern matching — it catches obvious and moderately obfuscated attacks but cannot detect:

  • Sophisticated multi-step social engineering
  • Runtime-generated URLs or dynamic exfiltration
  • Attacks that look identical to legitimate skill behavior

It's a first line of defense, not a guarantee. Always review skills manually before granting sensitive access.