每月下载量达 100 万的开源软件包窃取用户凭证
Source: Ars Technica
立即修复步骤
-
检查已安装的版本
pip show elementary-data | grep Version -
如果版本是
0.23.3,请卸载并安装安全版本pip uninstall elementary-data pip install elementary-data==0.23.4在
requirements.txt和锁文件中,明确固定为elementary-data==0.23.4。 -
删除缓存文件,以避免任何残留。
-
在任何可能运行过 CLI 的机器上查找恶意软件的标记文件。如果该文件存在,说明负载已在该机器上执行。
- macOS / Linux:
/tmp/.trinny-security-update - Windows:
%TEMP%\.trinny-security-update
- macOS / Linux:
-
轮换所有在
0.23.3运行环境中可访问的凭证——包括 dbt 配置文件、数据仓库凭证、云提供商密钥、API 令牌、SSH 密钥以及任何.env文件的内容。CI/CD 运行器尤其容易受到影响,因为它们通常在运行时挂载大量机密。 -
联系安全团队,搜寻被泄露凭证的未授权使用情况。相关 IOC 列在事件报告底部:
Security incident report – malicious release of elementary‑oss‑python‑cli v0.23.3。
供应链攻击背景
在过去十年中,针对开源仓库的供应链攻击变得日益普遍。许多情况下,恶意包导致用户泄露,进而引发用户环境的连锁妥协。
专家评论
资深安全研究员、runZero 创始人兼 CEO HD Moore 指出,用户自行开发的仓库工作流——例如 GitHub Actions——因承载漏洞而臭名昭著。
“这对拥有公开仓库的开源项目来说是一个重大问题。很难避免不小心创建出可以被攻击者的拉取请求利用的危险工作流。”
他建议使用以下工具检查此类漏洞:
https://github.com/zizmorcore/zizmor