Repolode
ZeroLeaks

ZeroLeaks/zeroleaks

命令行与库形式的扫描工具,对系统提示词和智能体指令进行提示词泄露与注入攻击测试。

Star
744
Fork
112
未关闭 Issue
1
最近提交
上个月

这是什么?

ZeroLeaks 将系统提示词加载到你选定的模型中,用提取类和注入类探测对其发起攻击,并报告提示词的防护表现。提取测试检查模型是否会被诱导说出自己的系统提示词;注入测试检查模型是否会执行藏在文档、工具返回结果或伪造管理员消息中的指令,以及是否会同意误用工具。

扫描在本地运行,使用你自己的模型服务商密钥,默认走 OpenRouter,也可直接连接 OpenAI。多个智能体协同规划攻击、阅读目标模型的回复并在扫描过程中调整策略,由 LLM 裁判将每项结果判定为完全服从、部分服从或拒绝。注入语料包含 78 条行为探测,涵盖工具劫持、间接注入、多轮铺垫等类别。

项目以 CLI 和 TypeScript 库的形式发布,支持 Ollama、vLLM、LiteLLM 等任何兼容 OpenAI 接口的端点。输出为彩色终端报告或 JSON,并通过退出码便于接入 CI。项目采用 FSL 许可证,属于可查看源码但并非开源的软件。

核心功能

  • 01对系统提示词同时执行提取与注入扫描。
  • 02多个智能体规划攻击并在扫描过程中调整策略。
  • 03内置 78 条行为注入探测,覆盖六大类别。
  • 04由 LLM 裁判判断模型是否真正服从了攻击。
  • 05攻击方、目标模型、评估方和裁判可分别指定模型。
  • 06支持 OpenRouter、OpenAI 以及兼容 OpenAI 接口的本地或托管端点。
  • 07输出终端报告或 JSON,并提供便于 CI 使用的退出码。

适用场景

  • 在上线前测试面向客户的聊天机器人系统提示词。
  • 检查智能体能否抵御隐藏在检索文档或工具输出中的指令。
  • 在 CI 流水线中加入提示词安全的回归检查。
  • 用同一份提示词对比不同模型的防护表现。

快速上手

  1. 1

    使用 npm 安装该包

    npm install zeroleaks
  2. 2

    设置你的 OpenRouter API 密钥

    export OPENROUTER_API_KEY=sk-or-...
  3. 3

    用命令行扫描一个系统提示词

    zeroleaks scan --prompt "You are a helpful assistant..."

使用前须知

  • 需要你自己的模型服务商 API 密钥,每次扫描都由你向服务商付费。
  • 许可证为 FSL-1.1-Apache-2.0(源码可用),并非标准开源许可证。
  • 除 npm 安装和 Bun 运行时外,README 未说明其他环境配置要求。

收录于专题

标签

常见问题

zeroleaks 是什么?
命令行与库形式的扫描工具,对系统提示词和智能体指令进行提示词泄露与注入攻击测试。 ZeroLeaks 将系统提示词加载到你选定的模型中,用提取类和注入类探测对其发起攻击,并报告提示词的防护表现。提取测试检查模型是否会被诱导说出自己的系统提示词;注入测试检查模型是否会执行藏在文档、工具返回结果或伪造管理员消息中的指令,以及是否会同意误用工具。
zeroleaks 可以免费使用吗?用的什么许可证?
zeroleaks 以 Other 许可证开源。用于商业产品前,请先确认许可证条款。
zeroleaks 还在维护吗?
半年内有更新。zeroleaks 最近一次提交是在 2026年9月26日。
zeroleaks 适合用来做什么?
在上线前测试面向客户的聊天机器人系统提示词。 检查智能体能否抵御隐藏在检索文档或工具输出中的指令。 在 CI 流水线中加入提示词安全的回归检查。 用同一份提示词对比不同模型的防护表现。
zeroleaks 怎么安装和运行?
使用 npm 安装该包: npm install zeroleaks 设置你的 OpenRouter API 密钥: export OPENROUTER_API_KEY=sk-or-... 用命令行扫描一个系统提示词: zeroleaks scan --prompt "You are a helpful assistant..."
在哪里获取 zeroleaks?
源代码和安装说明在 GitHub 上:https://github.com/ZeroLeaks/zeroleaks

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目