SkillSpector
SkillSpector
Active

SkillSpector

SkillSpector 是 NVIDIA 针对 AI 代理技能的开源安全扫描器。它结合了 64 种静态检测模式、AST 和污点分析、OSV 依赖性检查、可选的 LLM 审查和 SARIF 输出。本指南涵盖覆盖范围、盲点、CI 政策、隐私、分类和替代方案。

58

Views

0

Likes

Jun 2026

Added

github.com

Website

Tags

agent 安全skill 扫描AI 检测开源

Product Preview

A quick visual look at SkillSpector before you visit the official site.

Published 6/12/2026
SkillSpector screenshot

Editorial Review

About SkillSpector

SkillSpector 是 NVIDIA 的 Apache-2.0 安全扫描器,用于 AI 代理技能:可能包含 Markdown、脚本、依赖项、工具定义和激活规则的指令包。它接受本地目录、单个文件、zip 存档、Git 存储库或 URL,并生成风险评分为 0-100 的终端、JSON、Markdown 或 SARIF 结果。

它的价值就是威胁模型。技能不仅仅是文档。一旦代理遵循它,指令就可以导致文件访问、shell 执行、凭证使用、网络传输或持久配置更改。 SkillSpector 检查常规软件风险和特定于代理的问题,例如提示注入、过度代理、内存中毒、触发器滥用和 MCP 工具描述中毒。干净的报告是来自预安装分析层的证据,并不能保证运行时行为的安全。

SkillSpector security scanner repository screenshot
SkillSpector 可以使技能审核可重复且 CI 可见。其报告必须与出处、沙箱、权限和人工验证相结合。

SkillSpector 适合信任管道的位置

 源身份 + 提交 pin
             |
             v
 在隔离工作区中解压
             |
     .--------+--------。
     伏
 静态规则依赖/OSV
 AST + 污点签名 + 元数据
     '--------+--------'
             v
 可选的LLM语义审查
             |
       人性
 接受/修复/抑制原因/拒绝
             |
 沙箱+最小权限+运行时监控

这个顺序很重要。今天扫描未固定的 URL 并不能证明明天的下载是相同的。在不隔离其凭证的情况下通过恶意指令运行法学硕士会造成另一次暴露。在没有阻止策略的情况下上传 SARIF 文件会创建可见性,但无法控制。将扫描仪视为可重复的准入过程中的一个阶段。

两级分析仪的作用

舞台机制实力预期疲软
静态图案跨技能文件的正则表达式和规则匹配快速、确定性且可解释良性例子可以匹配;新颖的措辞可以逃避
行为AST检测 Python 执行原语和危险调用链查找关键字之外的代码行为不执行代码;语言和间接覆盖范围是有限的
污点追踪查找从输入/秘密/文件到执行或网络接收器的流将源和汇连接成有意义的路径动态调度和复杂的框架可以击败静态流
OSV 查找查询 OSV.dev 以查找已声明的依赖项漏洞当前在线漏洞情报离线模式使用较小的后备;未声明/供应的代码可能会丢失
YARA 签名匹配已知的恶意软件、Webshell、矿工和漏洞利用模式对已知家庭有用未知、打包或修改的有效负载可能会逃避
可选的法学硕士审查评估意图和背景,解释发现可以减少明显的静态误报概率性、依赖于提供商并暴露于对抗性内容

该项目将静态分析描述为具有中等精度的高召回率,并表示可选的语义审查可以提高精度。不要将标题精确数据复制到政策中,而不将其复制到您自己的语料库中。安全团队关心的是每一类别的漏报,而不仅仅是一个总数。

操作方面的 16 种风险类别

危险人群涵盖的示例审稿人应该验证什么
指令控制提示注入、隐藏指令、系统提示泄漏指令是否可见、有范围且服从主机策略?
数据存取环境收集、文件系统枚举、上下文渗透哪些具体数据类可以流向哪些域?
权威权限升级、过度代理、工具滥用该技能是否仅请求最低可逆权限?
坚持内存中毒、自修改、启动或cron持久化该技能可以修改未来的会话或其自身的执行吗?
软件供应链未固定的软件包、远程脚本、CVE、误植、混淆哈希、提交和依赖来源是否可重现?
MCP 边界通配符权限、未声明的功能、工具中毒声明的元数据是否与代码和运行时流量匹配?
代码行为exec/eval、子进程、动态导入、受污染的执行危险行为是否必要、受到限制并安全地参数化?
输出和触发器未经净化的输出、广泛的激活、影子命令普通文本是否会意外激活或跨越信任边界?

SkillSpector 目前记录了这 16 个类别的 64 种模式。该数字对于版本控制覆盖范围很有用,但其本身不能作为安全分数。已知正则表达式的十个变体不一定能够防御一种新的攻击链,而单个高质量的污点规则可能会防止严重的泄漏。

了解风险评分

记录的模型为关键发现加 50 分,高 25 分,中 10 分,低 5 分,当存在可执行脚本时应用 1.3 倍乘数,并将结果上限为 100。已发布的评分等级为 0-20 低、21-50 中、51-80 高和 81-100 关键。

分数/频段默认推荐这不意味着什么
0–20 / 低继续人工审核和沙箱测试不“安全”;盲点可能包含未观察到的行为
21–50 / 中需要业主处置和修复不会自动产生恶意;合法的网络或 shell 使用可能会得分
51–80 / 高除非安全允许例外,否则阻止安装仅凭分数并不能确定意图
81–100 / 严重拒绝并调查来源/出处多项发现可能描述一个根本原因;分类期间重复数据删除

分数压缩异质证据。保留规则 ID、文件位置、片段、置信度、分析器版本和源代码提交。两项得分为 50 分的技能可能具有截然不同的风险:一条关键的代码执行路径与十条低严重性的卫生结果。

仅静态与 LLM 辅助扫描

模式使用时数据边界政策含义
--no-llm快速 CI、不可信输入、隔离审查或确定性基线没有语义负载发送到模型提供者预计会有更多误报和错过意图
托管 OpenAI/Anthropic/NVIDIA 端点上下文分类值得外部处理技能内容可能会离开环境审查提供商条款、保留、区域和凭证
本地 OpenAI 兼容端点敏感技能或可重复的内部评估如果网络受到控制,可以保留本地模型质量和即时注入稳健性成为您的责任

切勿给予扫描仪的语义模型超出其所需的权限。该模型应该分析文本,不拥有生产秘密或安装权限。将任何技能内容视为对抗性输入并记录确切的提供者/模型,因为语义配置可能会在版本之间发生变化。

已知的盲点

NVIDIA 明确列出了重要限制:非英语攻击可能会被错过;不分析隐藏在图像中的文本;编译、加密或二进制代码在静态可见性之外;并且运行时行为不会被执行。当网络不可用时,OSV 覆盖范围会减少。静态分析还可能会遇到生成的代码、反射、第二阶段下载、环境条件行为以及仅在远程服务器更改其响应后才出现的滥用。

盲点补偿控制
图片或文档说明提取 OCR/元数据并在单独的沙箱中审查媒体
二进制或加密工件拒绝不透明的有效负载或需要可重现的源和恶意软件沙箱
仅运行时行为在具有默认拒绝的网络/文件系统的检测容器中执行
非英语或混淆的提示使用语言感知审查、Unicode 规范化和对抗性测试用例
远程依赖关系更改固定提交/哈希、镜像依赖项并验证签名/SBOM
扫描仪规避或缺陷使用深度防御、独立审查和扫描仪回归测试

团队可以执行的 CI 准入政策

  1. 解决不可变输入。 扫描前记录存储库、提交 SHA、存档哈希、作者和许可证。
  2. 解压后不执行。 清点每个文件时禁用挂钩、模板和包安装。
  3. 首先仅运行静态。 保存 JSON 和 SARIF 以及 SkillSpector 版本以及 OSV 是否可访问。
  4. 应用显式门。 阻止任何未抑制的关键/高结果、凭证到网络污染、隐藏指令或不透明的可执行文件。
  5. 单独进行语义审查。 仅将批准的内容发送给孤立的提供商,并且绝不允许模型安装该技能。
  6. 需要人性化。 每一次压制都需要一个所有者、理由、范围和到期日。
  7. 测试运行时边界。 从没有秘密、只读固定装置、域白名单和一次性帐户开始。
  8. 重新扫描更新。 触发源更改、依赖项锁定更改、规则包版本和新披露的 CVE。
寻找建议登机口异常证据
关键/高污染或执行链硬块安全审查加代码修复;避免永久压制
外部网络目的地除非列入许可名单,否则阻止商业目的、数据分类、域和有效负载证明
取消固定的依赖关系区块释放锁定文件/哈希和受控更新过程
广泛的触发器或通配符权限需要缩小范围展示的需求和运行时审批控制
低严重度的卫生问题警告并注明截止日期业主和补救票

如何评价检测质量

创建一个类似于您的组织安装的技能的标记语料库。包括合法使用子流程或网络 API 的干净技能、每个相关规则系列的故意易受攻击的固定装置、多语言指令、编码文本、重命名工具和连锁行为。分割语料库,这样调整示例就不会成为唯一的测试集。

公制问题已回答为什么这很重要
按严重性/类别召回发现了多少已知危险案例?高总体速率可以隐藏凭证泄露的零覆盖率
精度有多少警报可以采取行动?低精度训练开发者绕过大门
处置时间人体分类需要多长时间?衡量实际运营成本
增量扫描时间检查是否可以在每次更改时运行?慢门迁移到不频繁的审计
语义稳定性重复/模型版本运行是否一致?暴露不确定性的政策结果
逃逸率通过后运行时出现了哪些危险行为?测试整个入场系统,而不仅仅是扫描仪

SARIF 和报告

SARIF 输出可以上传到 GitHub 代码扫描,以便结果出现在源位置并参与存储库的正常安全工作流程。 JSON 对于策略引擎和纵向指标来说更好; Markdown 有助于人工审阅数据包;本地终端输出方便。确认固定版本中的退出代码行为并显式实施门,而不是假设创建报告会导致构建失败。

报告本身可以包含敏感片段、内部路径和可疑指令。限制工件保留和访问。不要在公共拉取请求中发布包含令牌或漏洞利用有效负载的完整发现。

替代方案和补充控制

选项最佳使用与 SkillSpector 的关系
思科人工智能防御技能扫描仪另一种以特工技能为中心的多引擎扫描仪比较覆盖率和误报;独立引擎可以实现检测多样化
Semgrep/CodeQL深度特定于语言的静态分析和自定义组织规则补充代理指令和 MCP 特定检查
OSV-扫描仪/Dependabot依赖漏洞和更新工作流程比一种嵌入式查找更广泛的依赖操作
YARA/反恶意软件沙箱已知的恶意软件和动态行为对于面向 Markdown 的分析之外的有效负载很有用
手动许可名单 + 签名目录高度控制的环境,批准的技能很少减少供应链的可变性;仍然扫描每个签名的版本
运行时沙箱/策略引擎强制执行文件、网络、机密和审批边界必要的补偿,因为预安装扫描无法观察到一切

常见问题解答

低分是否意味着技能是安全的?

不。这意味着固定扫描仪版本没有积累许多公认的发现。盲点、运行时行为和供应链替代仍然是可能的。

SkillSpector 是否执行该技能?

不。它的记录限制是静态分析而不是动态执行。使用单独的沙箱进行运行时测试。

它可以扫描远程 Git 存储库吗?

是的,还有 URL、zip 存档、目录和单个文件。为了实现可重复性,请扫描不可变的提交或哈希,而不是可变的分支 URL。

需要LLM分析吗?

不。 --no-llm 仅静态运行。语义分析是可选的,可以使用托管提供程序或本地 OpenAI 兼容端点。

如果没有 OSV 网络访问会发生什么?

扫描仪会退回到一个小的内置列表,因此依赖性漏洞的覆盖范围不太最新且不全面。在报告中记录降级状态。

谁应该拥有最终决定权?

指定的安全或平台审核员,并听取技能职能所有者的意见。扫描仪提供结果;它不应该授予安装权限。

来源与验证

上次审核日期为 2026 年 7 月 26 日。模式计数、提供程序、默认模型和 CLI 行为可能会发生变化。在采用门之前固定扫描仪版本并验证当前存储库。

Ready to try SkillSpector?

Visit the official website to get started

Visit SkillSpector

Quick Info

Added
6/12/2026
Published
6/12/2026
Updated
7/27/2026

Share This Tool

Have an AI tool to share?

Submit it to AI Dreamhub

Get your product in front of people actively exploring AI tools.

Submit Your Tool

Related Tools

AI Detect Lab

AI Detect Lab

AI Detect Lab 是免费的 AI 生成图片检测工具,用于判断图片是否可能来自 Midjourney、Stable Diffusion、DALL-E、Flux 等 AI 图片生成器。它适合审核、验证和内容发布前检查,但检测结果只能作为信号,不能当作最终证据。

AI Detect LabAI图片检测AI生成图片检测
3130
Credence

Credence

Credence针对信任注册表检查任何MCP服务器或AI工具,以评估安全性和行为风险。

安全信任出处
1060
Claw Patrol

Claw Patrol

Claw Patrol 是一个面向 AI agents 的开源安全防火墙,通过隔离凭证和策略审批来约束高风险操作。

agent 安全安全代理AI 代理
570