Python 软件包索引(PyPI)推出了一项名为 “项目隔离”(Project Quarantine)的功能,在增强 Python 生态系统安全性方面迈出了重要一步。PyPI 管理员兼安全工程师 Mike Fiedler 在一篇博文中详细介绍了这一举措,该举措引入了一种结构化方法来降低恶意软件包带来的风险。
通过 PyPI 散布恶意软件一直是一个反复出现的挑战,威胁者利用该平台的广泛影响力来锁定目标用户。以前,PyPI 管理员依赖于完全删除被标记的项目,这种做法虽然有效,但往往具有破坏性且不可逆转。菲德勒解释说:“这些移除的影响可能是破坏性的,而且移除几乎是不可逆转的。”
项目隔离 ,是一项旨在弥合安全性和用户可访问性之间差距的功能。它能让管理员将可疑项目置于隔离状态,使其在 PyPI 简单索引中不可见,并阻止其安装。在管理员进一步调查的同时,这一主动措施限制了潜在威胁的暴露。
项目隔离功能为项目引入了一种新的生命周期状态,当项目被标记为具有潜在危害时,就会被标记为 “隔离”。据 Fiedler 称,实施过程遵循一套明确的要求:
- 处于 “隔离 ”状态的项目将从索引中隐藏,无法安装。
- 项目所有者不能修改被隔离的项目。
- 管理员、安全研究人员和项目所有人都能看到被隔离项目的状态。
- 管理员可以根据需要清除、重新隔离或删除项目。
这种方法的一个显著灵感来源于 PEP 592 中描述的 “yank ”功能,但有一个关键区别:yanked 版本仍可安装,而被隔离的项目则完全被阻止。
自 8 月份推出以来,该功能在处理恶意软件报告方面发挥了重要作用。Fiedler 分享说:“隔离功能一直在使用,PyPI 管理员将 ~140 个报告的项目标记为隔离。”在一个值得注意的例子中,一个项目最初因包含混淆代码而被标记,但在 PyPI 管理员的宣传下,项目所有者改正了违规行为,因此该项目被清除。
费德勒在博客中还强调了管理界面的简洁性,它有助于在非工作时间快速做出决策。这一功能与 PyPI 减少恶意项目公开访问时间窗口的目标不谋而合。
项目隔离的未来包括进一步简化流程的自动化计划。Fiedler 概述了一个潜在的系统,该系统可以根据收到的恶意软件报告的数量和可信度自动隔离项目。例如:
- 来自 “观察者”(使用测试版 API 端点的安全研究人员)的两份或更多报告。
- 一份 “观察者 ”报告和一份非 “观察者 ”报告。
这些措施旨在减少管理员的工作量,同时确保对威胁采取及时行动。其他增强功能也即将推出,如实时通知和提高管理界面的可见性。
通过为管理员提供灵活而强大的工具来管理被标记的项目,PyPI 能够更好地保护用户的安全。正如费德勒指出的那样:“缩短恶意项目/重放/文件可供最终用户成为受害者的时间窗口是一项改进,它进一步降低了恶意行为者使用 PyPI 作为其传播方式的动机。”
1.本站内容仅供参考,不作为任何法律依据。用户在使用本站内容时,应自行判断其真实性、准确性和完整性,并承担相应风险。
2.本站部分内容来源于互联网,仅用于交流学习研究知识,若侵犯了您的合法权益,请及时邮件或站内私信与本站联系,我们将尽快予以处理。
3.本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
4.根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
5.本站是非经营性个人站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途
暂无评论内容