SuperAPI AI 工具集

skill-auditor

安全与审计

查看项目

更新于 10-17 15:39

技能介绍

用途

skill-auditor 用于在安装某个 AI 智能体技能之前对其进行审计、审查或安全检查。它回答两个相互独立的问题,并分开报告,避免把风格问题与安全问题混在一起:

  • 安全性:安装它是否安全?
  • 质量:它是否符合规范,能否良好运行?

待审技能通过参数传入,支持 GitHub URL、owner/repo 简写或原始文件链接等形式。

主要能力

安全性审查从 Anthropic 的风险指标与审查清单出发,检查以下方面:

  • 代码执行:随附脚本中的网络访问、文件写入与子进程调用是否都能由声明的用途解释。
  • 指令操纵:是否存在忽略安全规则、对用户隐藏行为、跳过确认、针对特定输入改变行为等指令。
  • 网络访问:联系的每个主机、域名是否符合用途、是否在运行时拉取可变更的指令。
  • 数据外泄:读取敏感数据后发送、写入或编码到别处,包括编码进智能体回复(如携带数据的 Markdown 图片 URL);文件读取与网络访问同时出现是需要重点关注的模式。
  • 凭据:硬编码密钥,以及对 ~/.ssh、云配置、.env、钥匙串、浏览器数据等用途未说明的读取。
  • 工具与范围:调用的命令与 MCP 工具、自身目录之外的路径、allowed-tools 与实际需要的对比;缺少 allowed-tools 即意味着完全访问权限。

在此基础上,补充 OWASP Agentic Skills Top 10 中的缺口,每条安全发现标注 AST 编号:AST01 恶意技能、AST02 供应链受损、AST03 权限过大的技能、AST04 不安全元数据、AST05 不可信外部指令、AST06 隔离薄弱、AST07 更新漂移、AST08 扫描不足、AST09 缺乏治理、AST10 跨平台复用。具体包括:持久化写入(CLAUDE.md、AGENTS.md、设置、钩子、shell 配置、crontab、authorized_keys 等);元数据真实性(名称与描述是否与正文一致、是否冒充品牌或知名技能);供应链(未固定版本、typosquatting、git URL 依赖、curl | sh 安装);更新漂移(运行时拉取 latest 或 main)。

同时检查渲染后的 Markdown 中不可见的位置:HTML 注释、零宽字符与双向控制字符、Unicode 标签字符(模型可读但不可见的文本,需解码)、长 base64 或十六进制块、压缩或二进制文件。若技能随插件分发,其钩子、MCP 服务器配置与 agents 也会一并安装且无需调用技能即可运行,属于审查范围。

质量审查对照规范与 Anthropic 的有效技能清单:名称符合规范并与目录一致、描述在限制之内且以第三人称说明做什么与何时使用、正文少于 500 行、引用层级为一层、长引用文件带目录;被引用的文件与命令确实存在,脚本处理自身错误并声明依赖。

使用方式

工具规定的工作流程包括:

  1. 获取文件。将远程仓库浅克隆到新的空目录;原始单文件链接会造成不完整审计(其引用文件缺失),应说明这一点或找到源仓库;市场列表页不是技能本体,应审计其指向的仓库。
  2. 固定审计对象。记录提交 SHA 或文件哈希,结论仅覆盖该修订版本。
  3. 清点全部内容。包括 SKILL.md、所有被引用文件、脚本、图片、点文件、符号链接与二进制文件;无法阅读的内容即无法确认安全。
  4. 检查随附安装项。插件中的钩子、MCP 服务器配置与 agents 属于范围之内。
  5. 沙箱化。查看操作系统是否有 Docker 等沙箱机制,以额外防护 postinstall 脚本、git 钩子等攻击向量。

此外:下载或联系 URL 仅在能确定某项发现时才进行;短链接与裸 IP 链接一律不解析;不为审计而安装工具,已可用的扫描器(Cisco skill-scanner、Snyk Agent Scan、skills-ref validate)输出仅作参考,因为模式匹配无法发现用自然语言写成的注入。

报告结构

先给结论,再给证据。需说明来源与修订版本、未覆盖内容(未执行任何内容、不可读或未获取的部分)。结论分三档:

  • DO NOT INSTALL:存在任何严重发现,如持久化、数据外泄、隐藏指令、下载并运行、无理由的凭据读取,或针对智能体安全行为的指令;用途无法解释的高风险模式同样适用。
  • INSTALL WITH CAUTION:有风险但可解释,需指明缓解措施,如固定提交、收窄 allowed-tools 或设置 disable-model-invocation: true。
  • OK TO INSTALL:无低以上严重度的问题。质量发现不阻止安装。

报告还包含 Anthropic 风险指标表(逐项说明存在与否及证据)、按严重度排序并标注 AST 编号的安全发现、质量发现,以及所列参考来源。每条发现须有 文件:行号 引用与问题原文,并说明智能体遵循后会发生什么;无法指出具体位置的内容应舍弃。

适用场景

适用于在安装第三方或来源不明的智能体技能前做安全与质量把关,也适用于审查随插件分发的技能组件、复核某个具体提交版本是否可信。

限制

  • 原始单文件链接审计不完整;市场列表页并非技能本体。
  • 结论只覆盖被审计的那一个修订版本,不代表后续版本。
  • 不可读或未获取的内容无法给出结论。
  • 扫描器输出仅作参考,不能替代人工阅读判断。
  • 资料未提供安装命令、运行环境、收费方式与效果数据,均暂未提供。