Perplexity 开源 Bumblebee:只读供应链扫描工具,保护开发者端点安全
Perplexity 开源了内部安全工具 Bumblebee,用于扫描 macOS 和 Linux 开发者机器上的 npm、PyPI、Go 模块、MCP 配置、编辑器扩展和浏览器扩展。它只读不执行代码,避免触发攻击。本文详解其工作原理、扫描范围和中文用户的实际应用价值。
一句话看懂
Perplexity 开源了只读供应链扫描工具 Bumblebee,可扫描开发者机器上的包、扩展和 AI 配置,不执行任何代码,避免触发攻击。
详细发生了什么
Perplexity 在 GitHub 上开源了其内部安全工具 Bumblebee。该工具专为 macOS 和 Linux 开发者端点设计,是一个只读的资产清单收集器,用于检测供应链漏洞。Bumblebee 完全由 Go 编写,零非标准库依赖,当前版本为 v0.1.1。
Bumblebee 解决了现有工具的盲区:SBOM 和漏洞扫描器覆盖构建产物和仓库,EDR 产品跟踪进程和网络活动,但都不检查开发者本地的包元数据、锁文件、扩展清单和 AI 工具配置。当新漏洞曝光时,Bumblebee 能快速回答哪些机器存在匹配项。
工具支持三种扫描模式:baseline(扫描全局和用户包根目录、语言工具链、编辑器扩展、浏览器扩展和 MCP 配置)、project(扫描指定开发目录如 ~/code)和 deep(扫描操作者提供的根目录,用于应急响应)。输出为 NDJSON 格式,每条记录包含主机名、操作系统、架构、生态系统、包名、版本、源文件和置信度。
Bumblebee 覆盖的语言包管理器包括 npm、pnpm、Yarn、Bun、PyPI、Go modules、RubyGems 和 Composer;AI 代理配置包括 MCP JSON 文件(如 claude_desktop_config.json)和 Gemini CLI 配置;编辑器扩展支持 VS Code、Cursor、Windsurf 和 VSCodium;浏览器扩展覆盖 Chromium 系浏览器和 Firefox。
中文圈视角
Bumblebee 对中文开发者社区有直接价值。国内开发者同样面临供应链攻击风险——npm 和 PyPI 上的恶意包攻击不分地域。Bumblebee 的只读设计尤其适合安全敏感场景:不执行 postinstall 脚本,避免扫描本身触发攻击。
但需注意,Bumblebee 目前仅支持 macOS 和 Linux,Windows 用户暂时无法使用。国内有类似需求的团队可参考其设计思路,或等待社区贡献 Windows 支持。此外,Bumblebee 依赖 Go 1.25+,国内开发者可通过 GOPROXY 加速安装。
对于使用国产 IDE(如 VSCode 的国内镜像版)或浏览器(如 360 浏览器)的用户,Bumblebee 的扩展扫描可能无法覆盖所有变种,需要自行适配。MCP 配置扫描对使用 Claude Desktop 或 Gemini CLI 的 AI 开发者尤其有用,但国内用户若使用替代工具(如 Kimi 的 MCP 实现),需确认配置格式是否兼容。
几条值得记住的细节
- Bumblebee 是只读工具,从不执行包管理器或安装脚本,避免扫描触发攻击。
- 覆盖 8 种语言包管理器、4 种编辑器扩展、Chromium 系和 Firefox 浏览器扩展,以及 MCP 和 Gemini CLI 配置。
- 输出 NDJSON 格式,每条记录含置信度字段(high/medium/low),便于自动化处理。
- 当前版本 v0.1.1,Bun 的二进制锁文件 bun.lockb 暂不支持,仅支持文本格式 bun.lock。
- 许可证为 Apache 2.0,安装命令:
go install github.com/perplexityai/bumblebee/cmd/bumblebee@latest。
一句话总结
如果你是 macOS/Linux 开发者,Bumblebee 能帮你快速发现本地供应链风险,且不会因扫描触发攻击。