logicwu0/skillsentry

GitHub: logicwu0/skillsentry

skillsentry 是一款静态供应链扫描器,用于在安装前检测 AI agent skills 和 MCP servers 中的后门、数据外泄及提示词注入等安全风险。

Stars: 1 | Forks: 0

# skill entry **English** | [简体中文](README.zh-CN.md) AI agent 生态系统现在像 npm 一样发布代码。OpenClaw 的 **ClawHub** 在几个月内增长 超过了 50,000 个 skills;MCP 注册表索引了 **20,000+** 个 servers。大多数都是 周末项目——而且其中一些带有恶意。*ClawHavoc* 活动向 ClawHub 注入了 **1,184 个恶意 skills**,在被下架前达到了 **247,000 次安装量**,并窃取了 **230 万美元**。研究发现,大量的公共 MCP servers 在发布时没有任何身份验证,且包含已知的注入向量。 `skillsentry` 以**静态方式**读取 skill 或 MCP server——不执行任何代码,也没有任何数据 离开您的机器——并报告 agent 原本会替您运行的供应链风险,同时提供一个字母评级和支持 CI 的退出代码。 ## 安装 ``` uv tool install skillsentry # or: pipx install skillsentry ``` 从源码安装: ``` git clone https://github.com/logicwu0/skillsentry cd skillsentry uv sync ``` ## 用法 将其指向一个 skill 目录(包含 `SKILL.md` 的目录): ``` skillsentry scan ./path/to/skill ``` ``` skillsentry 0.1.0 — skill: pdf-helper source: ./path/to/skill grade: F risk score: 60/100 1 finding(s): [CRITICAL] Exfiltration-prone endpoint (instructions) References 'webhook.site', a service frequently used to receive exfiltrated data or fetch second-stage payloads. evidence: https://webhook.site/a1b2c3d4 ``` 机器可读的输出及 CI 门禁: ``` skillsentry scan ./skill --json skillsentry scan ./skill --fail-on medium # non-zero exit blocks a merge ``` ## 工作原理 每个 skill 或 server 都会被加载到一个单一的 `Artifact` 中,暴露出攻击者可能隐藏的所有攻击面——包括面向模型的 `description` 和 `instructions`,以及任何 捆绑的脚本。独立的**检测器**(`Artifact -> [Finding]`)会检查这些 攻击面;检测结果会根据严重程度进行加权,计算出 0–100 的风险评分和 A–F 评级。检测器小巧且纯粹,因此每个检测器都可以独立进行单元测试。 ## 路线图 - [x] 硬编码 / 容易导致数据泄露的网络端点 - [ ] 动态代码及 shell 执行(eval/exec、`curl | sh`、解码后运行) - [ ] Secrets 及凭证访问(`~/.ssh`、`.env`、钱包路径、keychain) - [ ] 描述中的提示词注入指令("ALWAYS use me"、"ignore previous") - [ ] 原生 MCP server 清单加载器(tool schemas,而不仅仅是 skills) - [ ] SARIF 输出 + GitHub Action - [ ] 一次性扫描整个 ClawHub / 注册表导出内容 欢迎提供想法和反馈问题。 ## 开发 ``` uv sync uv run pytest ``` ## 许可证 Apache-2.0。
标签:Blue Team, LNA, MCP Server, Python, 云安全监控, 动态分析, 安全扫描, 无后门, 时序注入, 网络信息收集, 逆向工具, 静态分析