文章总结: ElementaryCLI工具v0.23.3版本通过官方PyPI和Docker渠道被植入恶意代码,攻击者利用GitHubActions漏洞劫持CI/CD流程,伪造签名发布信息窃取器。该恶意软件可窃取SSH密钥、云凭证、加密货币钱包等敏感数据,影响月下载量超100万次。官方已发布v0.23.4修复版本,建议受影响用户立即重置所有密钥并检查系统日志。 综合评分: 85 文章分类: 供应链安全,漏洞预警,恶意软件,解决方案,安全运营
【安全圈】月下载量超100万的 Python 工具被植入恶意代码
安全圈
2026年5月4日 19:00 江苏
在小说阅读器读本章
去阅读
关键词
恶意代码
近日,一起影响广泛的开源安全事件引发业内关注—— 广泛用于数据工程领域的 Python 工具 Elementary CLI(elementary-data) 被攻击者植入恶意代码,通过官方渠道传播,影响范围极大。
🧨 事件概述
- 受影响项目:Elementary CLI(PyPI + Docker)
- 受影响版本:v0.23.3
- 下载规模:每月超过100万次
- 恶意版本存活时间:约 12小时
攻击者成功将恶意代码混入官方发布流程,并通过正常渠道分发给开发者。
⚙️ 攻击是如何发生的?
本次攻击的关键点在于 CI/CD 供应链被攻破:
- 攻击者利用 GitHub Actions 中的 脚本注入漏洞
- 获取自动化流程中的
GITHUB_TOKEN - 伪造合法签名发布(signed release)
- 将恶意版本推送到:
- PyPI
- Docker 镜像仓库
👉 本质: 不是代码仓库被入侵,而是发布流程被劫持
🧬 恶意代码做了什么?
恶意版本中包含一个 .pth 文件,在程序启动时自动执行,属于典型 信息窃取器(infostealer)。
可窃取的数据包括:
-
SSH 私钥
-
Git 凭证
-
云厂商密钥(AWS / GCP / Azure)
-
Kubernetes / Docker 凭证
-
.env文件中的所有密钥
-
CI/CD 环境变量
-
系统信息
-
💰 加密货币钱包文件
👉 一句话总结: 凡是你机器上有权限访问的敏感信息,几乎都可能被窃取
⚠️ 为什么这次事件特别严重?
1️⃣ 官方渠道分发(最致命)
- PyPI 官方源
- Docker 官方镜像
👉 用户完全无法通过“来源判断安全性”
2️⃣ CI/CD 环境风险极高
CI/CD 通常挂载大量密钥:
- 部署密钥
- API Token
- 云权限凭证
👉 一旦被利用: 可能直接导致生产环境被接管
3️⃣ 攻击隐蔽性极强
- 使用合法签名发布
- 混入正常版本流程
- 自动执行(.pth hook)
👉 几乎无法通过常规手段发现
🛠️ 官方应对措施
项目方已紧急处理:
- ❌ 删除恶意版本(0.23.3)
- ✅ 发布安全版本(0.23.4)
- 🔁 轮换所有敏感凭证
- 🧹 移除存在漏洞的 GitHub Actions 工作流
- 🔍 审计全部 CI/CD 流程
🚨 如果你使用过该工具(必须立即做)
如果你曾安装或运行过 0.23.3:
👉 立即执行:
-
🔑 重置所有密钥:
-
SSH Key
-
API Token
-
云账号密钥
-
🔄 更新 CI/CD secrets
-
🔍 检查异常访问日志
-
💰 检查钱包是否被访问
👉 官方建议: 默认所有凭证已泄露处理
🧠 这件事的本质启示
🔥 开源安全的新趋势:
1. 攻击重点从“代码”转向“供应链”
👉 攻击 CI/CD 比攻击代码更高效
2. 自动化流程成为新攻击面
👉 GitHub Actions / CI Runner = 高价值目标
3. 开发者本地环境同样危险
👉 一次 pip install ≈ 执行远程代码
🛡️ 企业级防护建议
✅ 强烈建议:
-
禁用 CI/CD 中的默认 Token 写权限
-
使用 最小权限原则(Least Privilege)
-
对依赖包进行:
-
Hash 校验
-
版本锁定(pinning)
-
使用:
-
SBOM(软件物料清单)
-
供应链安全扫描工具
✍️ 总结
这次 Elementary CLI 事件再次证明:
👉 “官方发布 ≠ 安全” 👉 “pip install 也可能是攻击入口”
未来的软件安全,不只是代码安全, 而是整个 供应链安全体系的对抗。
END
阅读推荐
【安全圈】远程篡改政府招投标数据将对手评分改低,两人获刑
【安全圈】9人假借招聘骗走大量个人信息 非法贩卖信息获利数十万
【安全圈】官方 SAP npm 软件包遭入侵,用于窃取凭证
【安全圈】十天 39 个公开 CVE
安全圈
←扫码关注我们
网罗圈内热点 专注网络安全
实时资讯一手掌握!
好看你就分享 有用就点个赞
支持「安全圈」就点个三连吧!
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:安全圈 《【安全圈】月下载量超100万的 Python 工具被植入恶意代码》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。






![[适合新手折腾的]claudecode国内使用技巧:零基础入门安装教程绕过登录接入DeepSeek/bailian大模型实现模型自由](/images/random/titlepic/14.jpg)




评论