PyPI 项目隔离:对抗恶意软件的新武器
Python 包索引 (PyPI) 推出了“项目隔离”功能,以应对持续存在的恶意软件问题。该功能允许管理员将潜在有害的项目标记为隔离状态,阻止用户轻松安装,从而减少恶意软件造成的损害。该系统并非直接删除项目,而是将其从简单索引中隐藏,项目所有者仍然可以修改项目(但不能发布新版本),管理员可以随时解除隔离。未来,PyPI 计划通过自动化系统,根据多个可信报告自动隔离项目,进一步提高效率,并减少恶意软件传播的时间窗口。
阅读更多
Python 包索引 (PyPI) 推出了“项目隔离”功能,以应对持续存在的恶意软件问题。该功能允许管理员将潜在有害的项目标记为隔离状态,阻止用户轻松安装,从而减少恶意软件造成的损害。该系统并非直接删除项目,而是将其从简单索引中隐藏,项目所有者仍然可以修改项目(但不能发布新版本),管理员可以随时解除隔离。未来,PyPI 计划通过自动化系统,根据多个可信报告自动隔离项目,进一步提高效率,并减少恶意软件传播的时间窗口。
阅读更多
近期,Python项目Ultralytics遭受供应链攻击,攻击者入侵其GitHub Actions工作流程并窃取PyPI API令牌,导致版本8.3.41、8.3.42、8.3.45和8.3.46被污染。攻击未利用PyPI自身漏洞,而是针对GitHub Actions缓存。PyPI利用可信发布和Sigstore透明日志迅速识别并移除恶意软件,并指出API令牌和GitHub环境配置的不足。文章强调了保障软件代码库和发布流程的重要性,并为开发者提供了加强安全性的建议,包括使用可信发布者、锁定依赖项、避免使用不安全模式以及启用多因素身份验证等。
阅读更多
Python包索引(PyPI)现在支持数字认证,以增强项目供应链的安全性。包维护者可以在发布时发布已签名的数字认证,消费者和安装程序可以使用新的API和Web界面验证这些认证。与传统的PGP签名相比,数字认证具有三个关键优势:基于身份而非密钥对进行签名,提供与上游源代码库的可验证链接,并且上传时会验证其有效性。目前,如果项目是从GitHub Actions发布,通过可信发布,并使用pypa/gh-action-pypi-publish操作进行发布,则默认情况下会生成和发布认证。
阅读更多