GHSA-382Q-FPQH-29F7:押注坏马:恶意的 `polymarket-clients-sdk` crate
发布: (2026年2月8日 GMT+8 05:10)
3 分钟阅读
原文: Dev.to
Source: Dev.to
概览
漏洞编号: GHSA-382Q-FPQH-29F7
CVSS 分数: 10.0
发布时间: 2026-02-06
一次针对 Rust 生态系统的经典供应链攻击。crate polymarket‑clients‑sdk 出现在 crates.io 上,伪装成 Polymarket 预测平台的官方 SDK。它并未提供投注辅助函数,而是交付了一个能够窃取凭证并通过恶意构建脚本危及开发者环境的负载。这是品牌劫持(brandjacking)结合在包安装期间执行任意代码固有风险的 textbook 示例。
技术细节
- 攻击类型: 供应链 / 恶意包
- CWE 编号: CWE‑506(嵌入恶意代码)
- 平台: Rust / crates.io
- 攻击向量: 网络(伪装成合法软件)
- 机制:
build.rs任意代码执行 - 所需权限: 用户级(继承开发者权限)
受影响的环境
- Rust 开发工作站
- 构建 Rust 项目的 CI/CD 流水线
- 能访问 crates.io 的系统
影响
恶意 crate 在编译时立即执行任意代码,可能窃取环境变量、私钥以及其他机密。如果该 crate 已被安装,机器应视为已被攻破,所有泄露的机密需重新生成。
缓解与修复
- 识别 所有
Cargo.toml中包含polymarket-clients-sdk的项目。 - 立即移除 该依赖。
- 删除
target目录和Cargo.lock文件,以清除已编译的产物。 - 假设系统已完全被攻破: 轮换所有机密、密钥以及在机器上可访问的环境变量。
- 从干净状态重新构建 主机系统或容器。
预防措施
- 使用诸如
cargo-vet的供应商验证工具。 - 在沙箱环境中构建(例如 Docker、Firejail)。
- 通过
Cargo.lock锁定依赖版本。 - 在构建期间实施网络限制,以限制外部获取。
参考资料
- GHSA-382Q-FPQH-29F7 Advisory
- Rust 文档: Build Scripts
- Full report for GHSA-382Q-FPQH-29F7 (包括交互式图表和完整漏洞分析)