360 Secure SkillHub
360 安全技能中心

skill-guard w Snyk Agent Scan

安装 ClawHub 技能前先执行安装前扫描:用 clawhub 将技能下载到临时暂存目录,再调用 Snyk Agent Scan 检测提示注入、恶意载荷、硬编码密钥与数据外泄,并按退出码决定安装还是隔离,避免直接写入正式技能目录。

firefrog-pepe
firefrog-pepe
热度 68.42
最近更新 2026-05-11 17:29:40
分类:安全依赖:代码执行 / 读写文件 / 第三方 API应用场景:工作流 / DevOps

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add skill-guard-snyk-agent-scan
Metadata
name
skill-guard
description
Scan ClawHub skills for security vulnerabilities BEFORE installing. Use when installing new skills from ClawHub to detect prompt injections, malware payloads, hardcoded secrets, and other threats. Wraps clawhub install with Snyk Agent Scan pre-flight checks.

skill-guard

The only pre-install security gate for ClawHub skills.

Why skill-guard?

VirusTotal (ClawHub built-in) skillscanner (Gen Digital) skill-guard
When it runs After publish (server-side) On-demand lookup Before install (client-side)
What it checks Malware signatures Their database Actual skill content
Prompt injections ❌ ❌ ✅
Data exfiltration URLs ❌ ❌ ✅
Hidden instructions ❌ ❌ ✅
AI-specific threats ❌ ❌ ✅
Install blocking ❌ ❌ ✅

VirusTotal catches known malware binaries — but won't flag <!-- IGNORE PREVIOUS INSTRUCTIONS -->.

skillscanner checks if Gen Digital has reviewed it — but can't scan new or updated skills.

skill-guard uses Snyk Agent Scan (the renamed successor to mcp-scan) to analyze what's actually in the skill, catches AI-specific threats, and blocks install if issues are found. If the scanner is unavailable or not configured, the wrapper now reports that separately instead of pretending the skill itself is malicious.

The Problem

Skills can contain:

  • 🎭 Prompt injections — hidden "ignore previous instructions" attacks
  • 💀 Malware payloads — dangerous commands disguised in natural language
  • 🔑 Hardcoded secrets — API keys, tokens in plain text
  • 📤 Data exfiltration — URLs that leak your conversations, memory, files
  • ⛓️ Toxic flows — instructions that chain into harmful actions

One bad skill = compromised agent. Your agent trusts skills implicitly.

The Solution

# Instead of: clawhub install some-skill
./scripts/safe-install.sh some-skill

skill-guard:

  1. Downloads to staging (/tmp/) — never touches your real skills folder
  2. Scans with Snyk Agent Scan — Snyk's security scanner for AI agents
  3. Blocks or installs — clean skills get installed, threats get quarantined

What It Catches

Real example — skill-guard flagged this malicious skill:

● [E004]: Prompt injection detected (high risk)
● [E006]: Malicious code pattern detected  
● [W007]: Insecure credential handling
● [W008]: Machine state compromise attempt
● [W011]: Third-party content exposure

VirusTotal: 0/76 engines. Snyk Agent Scan can catch what antivirus misses.

Usage

# Secure install (recommended)
./scripts/safe-install.sh <skill-slug>

# With version
./scripts/safe-install.sh <skill-slug> --version 1.2.3

# Force overwrite
./scripts/safe-install.sh <skill-slug> --force

Exit Codes

Code Meaning Action
0 Clean Skill installed ✓
1 Error Check arguments, dependencies, fetch/install flow
2 Threats found Skill quarantined in /tmp/, review before deciding
3 Scanner unavailable Configure SNYK_TOKEN or fix scanner setup, then rerun

When Threats Are Found

Skill stays in /tmp/skill-guard-staging/skills/<slug>/ (quarantined). You can:

  1. Review — read the scan output, inspect the files
  2. Install anyway — mv /tmp/skill-guard-staging/skills/<slug> ~/.openclaw/workspace/skills/
  3. Discard — rm -rf /tmp/skill-guard-staging/

Requirements

  • clawhub CLI — npm i -g clawhub
  • uv — curl -LsSf https://astral.sh/uv/install.sh | sh
  • SNYK_TOKEN — required by Snyk Agent Scan for authenticated scanning

Why This Matters

Your agent has access to your files, messages, maybe your whole machine. One malicious skill can:

  • Read your secrets and send them elsewhere
  • Modify your agent's behavior permanently
  • Use your identity to spread to other systems

Trust, but verify. Scan before you install.