SkillSpector:英伟达开源的AI智能体技能安全检测工具
一、SkillSpector 是什么
简单来说,
SkillSpector
现在的AI Agent生态发展得太快了,大模型客户端、智能体平台纷纷开放第三方的技能扩展能力。但这些自定义技能权限可不小——文件读写、命令执行、网络请求、环境变量读取……一旦里面藏着恶意代码、高危漏洞或者隐蔽的攻击逻辑,那后果就不是闹着玩的了:数据泄露、提示注入、权限劫持、远程代码执行,哪个都不是省油的灯。英伟达在调研了大量公开的AI技能样本后发现,将近三成的公开技能存在安全隐患,恶意技能的占比甚至超过了5%。这个数据,说实话,挺让人捏把汗的。
正是冲着这个问题,英伟达推出了 SkillSpector。它在AI技能的安装、分发、上线、集成这些环节里做安全校验,靠的是
静态代码分析
大模型语义分析
二、功能特色
那么,SkillSpector 具体能干什么?它的核心能力围绕着AI技能的安全场景来设计,几个功能亮点都很实在:
全维度风险检测规则库
工具内置了,覆盖了16大类AI智能体常见风险场景。这些规则参考了OWASP LLM安全标准和 MITRE ATLAS 威胁框架,权威性和覆盖面都有保障。64项专属安全检测规则
双引擎混合检测架构
它采用的是的双检测模式,用户可以根据场景自由切换。纯静态扫描速度快、没有额外依赖;启用大模型分析以后,可以更深入地识别那些隐藏的恶意意图,误报、漏报的概率会大大降低。静态分析 + LLM语义分析
多类型扫描对象兼容
支持扫描等多种格式和来源的AI技能。无论你是本地自研的代码,还是线上开源的技能,都能一键检测。单文件、本地文件夹、压缩包、远程Git仓库
多格式标准化报告输出
支持终端文本、JSON、Markdown、SARIF 等主流格式的报告导出,可以对接CI/CD流水线、代码审计平台、安全运维系统。内置的,能让你一眼就看出风险等级。0-100分风险评分体系
丰富的环境适配能力
原生支持 Python 直接部署和 Docker 容器化部署两种主流方式,跨平台运行,Windows、Linux、macOS 都能正常使用,不需要复杂的环境配置。多模型生态兼容
LLM分析模块支持对接 OpenAI、Anthropic、英伟达自研大模型、Ollama 本地大模型等多款主流模型服务,公有云、私有化部署都能适配。漏洞库实时联动
静态分析阶段会自动对接 OSV.dev 公开漏洞库,快速识别技能依赖组件中存在的已知CVE高危漏洞,补齐供应链安全检测能力。
有一点值得特别提一下:SkillSpector 跟传统的代码扫描工具有本质区别。它不是通用漏洞扫描,而是
,所以更贴合LLM和Agent生态的安全防护需求。针对AI智能体技能的特有风险做了专门优化
三、技术细节
SkillSpector 的整体架构分层很清晰,核心由
静态分析引擎
LLM语义分析引擎
3.1 整体运行流程
工具执行扫描时分两个核心阶段,流程固定但可以灵活开关:
第一阶段:纯静态分析(默认启用,必跑流程)
这个阶段不调用任何大模型,完全依靠语法解析和特征匹配来做检测,执行效率非常高。主要靠、正则匹配、污点追踪、YARA恶意特征库、依赖项漏洞查询这五大技术手段,对代码语法、调用行为、敏感指令、第三方依赖进行全面筛查。AST抽象语法树解析
第二阶段:LLM语义分析(可选开启)
这一步是把静态分析筛选出来的可疑代码、指令逻辑、提示词内容交给大模型做语义解读,识别那些静态规则发现不了的等深层威胁。用户可以根据需要选择关闭这个阶段,节省资源、提升扫描速度。隐藏指令、暗门逻辑、诱导性提示注入
3.2 核心技术模块拆解
静态分析引擎
这是工具最核心的基础模块,也是检测的主力单元。它通过AST遍历来解析技能源码,追踪敏感数据流向(污点分析),识别读取密钥、读取环境变量、执行系统命令、发起外网请求这类高风险行为;再结合YARA特征库匹配已知恶意代码片段;同时拉取OSV漏洞数据,校验项目依赖包有没有公开漏洞。整个过程除了漏洞库查询外,没有任何网络请求和模型调用,资源占用非常低。LLM对接模块
采用通用API对接设计,不绑定单一厂商的大模型。通过标准化请求格式,把可疑代码片段、提示文本、交互逻辑提交给指定的大模型,由模型来判断行为意图是不是恶意。这个模块既支持公网API,也支持本地私有化大模型(Ollama),内网离线使用的场景也能满足。规则管理模块
内置64条预置检测规则,按照风险类型分类管理,规则可以拓展、可以自定义。覆盖的场景包括提示注入、数据窃取、权限提升、恶意命令执行、不安全依赖、工具滥用等,每条规则都包含风险描述、匹配特征、风险等级和处置建议。报告与评分模块
把所有检测结果汇总、分级,按照内置的评分算法生成0-100的综合风险分数。分数越高,安全风险越大。同时按照不同格式规范整理检测结果,输出结构化报告,方便人工审查和自动化系统解析。
3.3 运行环境依赖
SkillSpector 基于 Python 开发,基础运行依赖标准的Python环境。容器化部署的话,连本地环境都不用配置。具体依赖要求如下:
- 基础环境:Python 3.8 及以上版本
- 可选依赖:网络访问(用于漏洞库查询、远程Git仓库扫描、LLM接口调用)
- 容器环境:Docker 任意稳定版本

四、应用场景
SkillSpector 的定位非常精准,深度贴合AI Agent生态全流程的安全管控。它覆盖了个人、团队、企业、平台这四类用户群体,具体应用场景有这几类:
4.1 AI技能开发者自用检测
个人开发者或独立工程师在编写、调试、发布自定义AI Agent技能之前,可以用 SkillSpector 做一下本地自检。提前发现代码漏洞、不当权限调用、敏感信息读取这些问题,避免上线后出Bug,降低迭代和修复的成本。
4.2 AI智能体平台内容审核
对于那些提供第三方技能市场的AI平台和大模型客户端厂商来说,这个工具可以用来
批量审核社区上传的公开技能
4.3 企业研发与安全流水线集成
中大型企业的AI研发团队和安全运维团队,可以把 SkillSpector 接入
CI/CD 持续集成流水线
4.4 企业内部AI资产安全管控
企业内网私有化部署AI Agent系统的时候,运维人员和安全人员在安装外部引入的AI技能之前,先做一次前置安全扫描,防止外部恶意技能入侵内网、窃取企业数据、操控内部服务器。
4.5 安全研究员样本分析
网络安全从业者和安全研究人员可以利用这个工具,对全网收集的AI技能样本进行批量风险归类、恶意行为分析,开展AI安全领域的研究、攻防演练和风险统计。
五、使用方法
SkillSpector 提供了
Python 本地部署
Docker 容器部署
5.1 前置准备
确保设备网络正常(如果需要扫描远程仓库、查询漏洞库、调用LLM,那就需要联网;纯本地静态扫描可以离线运行)。
5.2 方式一:Python 环境安装与使用
安装工具包
pip install skillspector
基础静态扫描(推荐,默认关闭LLM,速度最快)
扫描本地指定文件夹内的AI技能,不启用大模型分析:skillspector scan ./your_skill_folder --no-llm
扫描单个远程 Git 仓库
直接输入仓库地址,一键扫描线上开源AI技能:skillspector scan https://github.com/xxx/your-target-repo
导出 JSON 格式报告(用于自动化系统对接)
skillspector scan ./your_skill_folder --no-llm --format json --output security_report.json
启用LLM语义分析扫描
配置好大模型接口后,开启第二阶段语义检测:skillspector scan ./your_skill_folder
5.3 方式二:Docker 容器部署与使用
适合不想配置Python环境、想统一运维环境的场景:
拉取/构建镜像
进入项目根目录,执行构建命令:docker build -t skillspector .
容器运行扫描(挂载本地目录)
把本地目录挂载到容器内,执行扫描操作:docker run --rm -v "$PWD:/scan" skillspector scan ./my_skill/ --no-llm
5.4 常用参数说明
--no-llm:关闭大模型语义分析,仅运行静态扫描--format:指定报告格式,支持 json、markdown、sarif、text--output:指定报告保存路径与文件名
六、竞品对比
为了帮大家更直观地了解 SkillSpector 的优势,这里选了当前AI代码和AI技能安全领域主流的2款同类工具,从
定位、检测方式、适用场景、部署难度、特色能力
| 工具名称 | 项目定位 | 核心检测方式 | 主要适用场景 | 部署难度 | 核心特色能力 |
|---|---|---|---|---|---|
| SkillSpector | 专为AI Agent技能 | 静态分析 + 可选LLM语义分析 | AI技能审核、Agent生态安全、CI/CD集成 | 低(Python/Docker一键部署) | 内置64条AI专属规则、联动OSV漏洞库、风险评分体系、多报告格式 |
| Semgrep | 通用开源代码静态扫描工具,全语言漏洞检测 | 纯静态语法规则匹配 | 通用代码审计、全品类项目漏洞扫描 | 中(需自定义规则) | 社区规则丰富、支持多编程语言、跨项目通用扫描 |
| LLM Guard | 大模型输入输出内容安全防护工具 | 文本规则 + 轻量语义识别 | 大模型提示词过滤、内容风控、防prompt注入 | 低 | 专注对话内容风控,偏向运行时防护,无代码扫描能力 |
对比总结
Semgrep 虽然功能强大,但它是通用代码扫描工具,缺少针对AI Agent技能的专属规则,用的时候需要人工编写大量适配规则,针对性不够。而LLM Guard 专注的是大模型对话内容安全,完全不具备代码扫描能力,技能源码里的漏洞它根本发现不了。相比之下,SkillSpector 精准聚焦AI智能体技能这个细分场景,规则、流程、报告全都为这个场景定制,是目前这个细分领域最专业的开源工具。
七、常见问题解答
问题1:SkillSpector 必须联网才能使用吗?
答:不是的。如果只用 --no-llm 参数执行纯静态本地文件扫描,工具可以完全离线运行。只有扫描远程Git仓库、查询OSV漏洞库、调用外部大模型做语义分析的时候才需要联网。
问题2:SkillSpector 支持Windows系统使用吗?
答:支持。工具基于跨平台的Python开发,Windows、Linux、macOS 三大主流操作系统都能正常安装和运行。Docker部署方式也是全平台兼容的。
问题3:检测结果里的风险评分代表什么含义?
答:工具采用0-100分的评分机制,分数越低代表安全性越高。一般来说,0-30分是低风险,31-60分是中等风险,61-100分是高风险。高风险的项目不建议直接安装或上线使用。
问题4:可以自定义检测规则吗?
答:可以。SkillSpector 的规则模块支持拓展,技术人员可以根据自身业务场景新增、修改检测规则,适配企业内部定制化的安全管控要求。
问题5:启用LLM分析后会增加多少运行耗时?
答:相比纯静态扫描,启用大模型语义分析后耗时会明显增加。具体时长取决于大模型响应速度和技能代码体量。如果追求扫描效率,日常使用建议关闭LLM模块。
问题6:该工具是否支持扫描压缩包格式的AI技能?
答:支持。工具能原生识别常见压缩包格式,可以直接指定压缩包路径完成扫描,不需要提前解压文件。
八、相关链接
- GitHub仓库地址:https://github.com/NVIDIA/skillspector
九、总结
总的说来,SkillSpector 是英伟达面向AI Agent生态推出的一款非常实用的开源安全扫描工具。它靠静态分析和LLM语义分析的双引擎架构,搭配专为AI智能体技能定制的检测规则和风险评分体系,精准地解决了当下第三方AI技能泛滥带来的代码漏洞、恶意行为、数据窃取、提示注入等安全难题。工具部署简单、使用门槛低,同时兼容多种扫描对象、报告格式和部署环境。个人开发者可以用它做本地自检,企业级场景也能把它集成到CI/CD流水线和AI技能平台审核系统中,实现自动化安全管控。在AI智能体安全防护这个细分领域,它的专业性和落地价值都非常突出,是目前管理和防护AI Agent技能安全的优选开源工具。