#安全资讯 Python 索引库 PyPI 自 2024 年 8 月启用项目隔离方案提高安全性,日前管理团队透露该方案非常有效,成功隔离了 140 个存在恶意代码的项目。后续 PyPI 计划将这个方案自动化,当收到足够多的举报和可信来源后就会直接隔离,此时 pip 也无法安装该项目从而阻止恶意软件传播。查看全文:https://ourl.co/107409
作为业界流行度和使用率名列前茅的软件库,PyPI 的日常内容就包括应对各种黑客的攻击,这里的攻击指的并不是对网站进行攻击 (虽说也有),而是提交恶意项目、仿冒项目以及通过其他方式获得某个项目维护者账号权限后提交恶意代码。
比如某个非常流行的开源库名为 landian,黑客则会提交诸如 landiãn 这类的名称进行钓鱼,大多数常规的钓鱼都会被拦截删除,但有些高级别的攻击方式还是让人头疼。
所以在 2024 年 8 月 PyPI 开始实施项目隔离 Project Quarantine 方案,用来应对潜在恶意软件的威胁,该方案目前的效果还是比较好的,所以 PyPI 特别发了个博客说明。
PyPI 团队称,自 2024 年 8 月实施该方案后,合计成功隔离 140 个可疑的开源项目进而阻止恶意软件的传播,只有 1 个项目因为通过混淆而被误报,在开发者提交反馈后也被迅速解除拦截。
在过去 PyPI 采用的措施主要是直接从整个数据库里删除整个项目,这种方法倒是有用但负面影响太大了,例如具有不可逆性以及会对下游产生影响,以及通报和处理之间存在时间差让恶意软件可以继续传播。
Project Quarantine 方案不需要删除整个项目而是进行隔离,被隔离后项目会从 Simple API 中被删除,此时也无法继续通过 pip 直接安装,项目维护者也无法直接修改项目内容,这样可以加速阻断恶意软件的传播。
未来 PyPI 团队计划将该方案完全自动化,检测到问题时就自动处理有问题的版本,这样既可以提高安全性又不至于产生太大的影响。
现阶段的问题还是需要管理员手动处理隔离,所以还存在时间差问题,这个问题只能依赖未来自动化方案进行处理了,自动化方案会根据收到的恶意软件报告数量和来源可信度进行评分,当达到某个阈值时就判断有效随后直接隔离项目。
版权声明:
感谢您的阅读,本文由 @山外的鸭子哥 转载或编译,如您需要继续转载此内容请务必以超链接(而非纯文本链接)标注原始来源。原始内容来源:PyPI