乐于分享
好东西不私藏

你的 AI 编程助手装的 Skill,安全吗?

你的 AI 编程助手装的 Skill,安全吗?

Skill 这个词最近在 GitHub 上越来越常见。

从 Claude Code、Codex CLI 到 Gemini CLI,现在主流的 AI 编程工具都支持安装 Skill——相当于给 AI 助手装插件,让它能做更多事。

但问题是,你装的那些 Skill 真的安全吗?

有个数据值得注意:42,447 个 Skill 中,26.1% 包含安全漏洞,5.2% 有恶意倾向。这些数字来自 NVIDIA 合作的学术研究。

所以就有了今天这个项目——NVIDIA 刚开源的 SkillSpector

说白了,SkillSpector 就是 AI Skill 的病毒扫描器。你把一个 Skill 丢进去,它告诉你:这个能不能装、哪里有问题、风险多大。


01  一个给 AI 插件做安检的工具

SkillSpector 是 NVIDIA 开源的安全扫描器,专门检测 AI Agent 的 Skill 文件是否存在漏洞。

你可以在终端里直接跑,也能集成到 CI/CD 流程中。支持扫描单个文件、整个目录、GitHub 仓库,甚至 zip 包。

安装很简单:

git clone https://github.com/NVIDIA/skillspector.git
cd
 skillspector
uv venv .venv && source .venv/bin/activate
make install

然后对着 Skill 目录扫一下就行:

skillspector scan ./my-skill/

输出一目了然——风险评分 0-100,附带严重等级和建议。


02  64 个检测模式,16 个攻击面

SkillSpector 能检测 64 种漏洞模式,分 16 个类别。挑几个关键的说说:

Prompt 注入——最常见也最危险。恶意 Skill 可能会在描述里藏"忽略之前的指令"这类 prompt,让你的 AI 暴露系统提示、执行危险操作。

数据泄露——有些 Skill 会偷偷收集环境变量(API Key、Token),然后发到外部服务器。SkillSpector 能检测出代码里是否有外部传输行为。

权限升级——Skill 申请了不该有的权限,比如读 SSH 密钥、sudo 执行命令。代码里写 os.environ 遍历?它能抓到。

供应链攻击——依赖包没定版本、从外部拉脚本执行(curl | bash)、包名跟流行库几乎一样(typosquatting)——这些都在扫描范围内。

最狠的是 AST 级别的检测:直接解析代码的抽象语法树,找出 exec()eval()subprocess 这些危险调用。比纯文本匹配准得多。


03  两阶段分析,LLM 兜底

SkillSpector 走的是"先快扫、再精查"的路线。

第一阶段:11 个静态分析器并行跑,用正则和 AST 快速扫一遍。召回率高,但会有误报。

第二阶段:可选 LLM 进行语义分析。它支持 OpenAI、Anthropic、NVIDIA build.nvidia.com 三个 Provider,甚至能接本地 Ollama。LLM 分析会评估上下文、过滤误报、给出人话级别的解释。

# 本地 Ollama
export
 SKILLSPECTOR_PROVIDER=openai
export
 OPENAI_API_KEY=ollama
export
 OPENAI_BASE_URL=http://localhost:11434/v1
export
 SKILLSPECTOR_MODEL=llama3.1:8b
skillspector scan ./my-skill/

如果不想用 LLM,加个 --no-llm 参数就行,静态分析本身已经够强了。


04  你要知道的几点

有几个值得注意的地方。

首先,它主要针对英文内容。 非英文的恶意模式可能会漏掉。不过中文 Skill 生态目前还不大,暂时影响有限。

其次,要联网才能用完整功能。 OSV.dev 的 CVE 查询需要出站 HTTPS 连接。离线环境只能用小规模内置列表。

另外,它只做静态分析。 不跑代码、不执行二进制文件。加密或编译的内容扫不了。这跟传统安全扫描器是一样的局限。

但如果你装了很多 AI Skill,或者准备自己发布 Skill,SkillSpector 干的就是安全检查这件事。


开源地址:https://github.com/NVIDIA/skillspector


如果你觉得这个项目有用,欢迎关注公众号「豆子实验室」,我会持续分享值得折腾的开源项目和 AI 工具。