木偶串
  
*“因为你的人工智能代理不应该成为你最大的内部威胁。”*
木偶串 是一个开源的红队工具包,用于测试人工智能代理、代理工作流和MCP服务器的安全性。它有助于安全团队回答以下问题: “当有人试图欺骗、滥用或武器化我们的人工智能代理时,会发生什么?”
为什么存在
代理AI攻击面是全新的。MCP安全在Black Hat 2025上被描述为 *“就像瑞士奶酪”*企业人工智能代理的部署速度比任何人都快。PuppetString通过可重复的、自动化的攻击性测试填补了这一空白,这些测试映射到 OWASP代理人工智能应用前十名(2026).
它测试了什么
| 命令 | 它的作用 | 隐喻 |
|---|---|---|
puppetstring pull | MCP扫描+工作流模糊 | *幕后操纵* |
puppetstring tangle | 间接快速注射试验 | *整合输入* |
puppetstring cut | 代理间攻击模拟 | *切断信任的纽带* |
puppetstring dance | 完整的OWASP代理AI审计 | *让整个系统跳舞* |
puppetstring unravel | 生成HTML/JSON/Markdown报告 | *找出问题所在* |
puppetstring stage | 部署/拆除易受攻击的测试目标 | *搭建舞台* |
OWASP代理AI覆盖范围
| # | 风险 | PuppetString保险范围 |
|---|---|---|
| A1 | 过度代理 | pull (工具枚举、权限映射) |
| A2 | 工具执行不受控 | pull (工具滥用序列) |
| A3 | 通过工具快速注射 | tangle (数据源注入) |
| A4 | 输出处理不安全 | pull (输出链测试) |
| A5 | 记忆和上下文操作 | pull (记忆中毒) |
| A7 | 多代理信任利用 | cut (跨代理攻击) |
| A8 | 身份和访问管理不当 | pull (授权/权限审核) |
| A9 | 记录和监控不足 | unravel (标记日志记录间隙) |
| A10 | 供应链漏洞 | pull (供应链检查) |
快速开始
需求
- Python 3.11+(推荐3.13)
- 点
安装
pip install puppetstring或者从源代码安装以进行开发:
git clone https://github.com/Port53-Cosplay/PuppetString.git
cd PuppetString
pip install -e ".[dev]"首次运行
# See all commands
puppetstring --help
# Read the responsible use policy first
puppetstring --responsible-use
# Deploy the included vulnerable test targets
puppetstring stage up
# Scan a vulnerable MCP server
puppetstring pull -t mcp://localhost:3000
# Fuzz a vulnerable agent
puppetstring pull -t http://localhost:8000 --type all
# Generate a report
puppetstring unravel -r ./puppetstring_results -f html项目状态
当前阶段: 第5阶段完成——所有核心模块都已实现(MCP扫描、工作流模糊、提示注入、代理间攻击、OWASP审计编排、HTML/JSON/BMarkdown报告生成)。486项测试通过。
看 水泵跳闸_项目_PLAN.md 完整的路线图。
责任的使用
PuppetString是一个安全测试工具。 仅在您拥有或有明确授权进行测试的系统上使用它。 看 响应_用户.md 对于完整的政策。
许可证
麻省理工学院——见 许可证.
