博客:PyPI 2025:年度回顾

发布: (2026年1月1日 GMT+8 03:08)
9 min read

Source: Hacker News

请提供您希望翻译的具体文本内容,我将为您翻译成简体中文。

Tags

随着2025年即将结束,是时候回顾一下Python软件包索引(PyPI)又一个忙碌的年份。我们今年专注于:

  • 提供关键的安全增强
  • 为组织推出强大的新功能
  • 改善数百万开发者每天依赖的 PyPI 的整体用户体验
  • 以透明的方式响应多起安全事件

按数字

  • 3.9 百万 新发布的文件
  • 130,000 新创建的项目
  • 1.92 艾字节 的总数据传输量
  • 2.56 万亿 的总请求数
  • 81,000 每秒平均请求数

这些数字展示了 Python 社区的持续增长和活力。

安全第一,安全永恒

安全是我们的首要任务,2025 年我们推出了多项功能,使 PyPI 的安全性达到了前所未有的水平。

加强的双因素认证(2FA)以抵御钓鱼

我们改进了 2FA 实现,首先推出了 基于 TOTP 登录的邮件验证。该功能通过在使用易受钓鱼攻击的 2FA 方法(如 TOTP)时,要求您在受信任设备上确认登录,从而增加了一层保护。

自这些更改上线以来,我们观察到:

  • 52 % 的活跃用户已启用不可钓鱼的 2FA
  • 45 000+ 次唯一的已验证登录

受信任发布与声明

受信任发布 仍是我们安全策略的基石。今年我们扩展了支持范围,加入了 GitLab Self‑Managed 实例,让维护者在不使用长期 API 令牌的情况下实现自动化发布。我们还为组织添加了 自定义 OIDC 发行者,让企业对其发布流水线拥有更多控制权。

受信任发布的采用情况非常出色:

  • 50 000+ 项目现在使用受信任发布
  • 在过去一年中,所有文件上传的 20 %+ 是通过受信任发布者完成的

我们还在积极开发 声明 功能,让发布者能够对其软件作出可验证的声明。声明现已得到所有受信任发布提供商的支持,社区已经开始使用它们来强化软件供应链。

  • 在过去一年中,所有上传的 17 % 包含了声明

主动安全措施

除了面向用户的功能外,我们还实施了多项主动措施,以保护注册表免受攻击:

  • 钓鱼防护: PyPI 现在 检测并警告用户不受信任的域名——详见博客文章
  • 改进的 ZIP 文件安全: 上传流水线已加固,防止恶意 ZIP 文件攻击——更多信息请阅读此处
  • 拼写抢注检测: PyPI 在项目创建期间自动检测并标记潜在的拼写抢注尝试。
  • 域名复活防止: 定期检查已过期的域名,防止域名复活攻击——细节请参见公告
  • 垃圾信息防止: 我们已对垃圾信息活动采取行动,包括 禁止来自特定滥用域名的注册——请查看该帖子

透明度和事件响应

今年,我们专注于提供有关影响 PyPI 的安全事件的透明、及时的信息。我们已就多起事件发布了详细的事件报告,包括:

  • 组织团队中权限持续存在 – 阅读报告
  • 针对 PyPI 用户的广泛网络钓鱼攻击 – 阅读报告
  • 通过 GitHub Actions 工作流的令牌泄露活动 – 阅读报告
  • “Shai‑Hulud” 攻击对 npm 生态系统的潜在影响 – 阅读报告

我们相信透明度是建立和维护社区信任的关键,我们将继续在需要时提供这些报告。

安全与支持请求

本年度,我们的安全 & 支持团队以及管理员一直在努力处理用户请求并打击恶意软件,保持生态系统健康。我们自豪地报告在处理支持查询和改进恶意软件响应方面取得了显著进展。

恶意软件响应

  • 已处理 超过 2,000 条恶意软件报告 —— 这体现了社区的警惕性和管理员的奉献精神。
  • 目标:缩短从 PyPI 移除恶意软件的时间。近期表现:
    • 66 % 的报告在 4 小时 内处理完毕。
    • 92 %24 小时 内处理完毕。
    • 仅有少数复杂案例需要最长 4 天 才能完成修复。

支持请求

  • 已解决 2,221 起个人账户恢复请求。
  • 处理了 超过 500 起项目名称保留请求(PEP 541)。
    • 平均首次分诊时间:< 1 周
    • 这相比之前的 9 个月积压有显著改善,截至十二月已全部处理完毕。

组织增长

我们在往年最大的公告之一是 组织在 PyPI 上的正式可用。组织为公司和社区项目提供了一个集中管理其包、团队和计费的场所。

最近的采用情况

  • 已在 PyPI 上创建 7,742 个组织
  • 现在有 9,059 个项目由组织管理

新功能

我们一直在努力为组织添加功能,包括:

  • 团队管理
  • 项目转移
  • 完备的管理员界面

我们很高兴看到组织利用这些功能,更加高效地使用 PyPI。

为所有人提供更好的 PyPI

我们对 PyPI 的整体维护者体验做了许多改进,包括:

  • 项目生命周期管理 – 您现在可以归档您的项目以表明它们不再积极维护。这是标准化 项目状态标记(如 PEP 792 所提议)的更大努力的一部分。
  • 新服务条款 – 新的服务条款正式化了我们的政策,并启用了诸如组织等新功能。

展望2026

我们为2025年的进展感到自豪,但我们知道还有很多工作要做。2026年,我们将继续专注于提升 PyPI 的 安全性稳定性可用性,服务整个 Python 社区。

致谢

衷心感谢我们的 赞助商,正是他们让 PyPI 的规模和可靠性成为可能,特别鸣谢 Fastly,其作为关键基础设施捐助者的支持。

个人贡献者

我们特别感谢以下个人在今年所做的重大贡献:

  • William Woodruff
  • Facundo Tuesca
  • Seth Michael Larson

您在可信发布、声明、项目归档、ZIP 文件缓解以及其他安全功能方面的工作极为宝贵。

社区

没有社区无数小时的付出,PyPI 不会有今天的成就。感谢所有:

  • 提交代码
  • 提出问题
  • 提供反馈
  • 改进文档

正是你们的努力让 PyPI 生机勃勃。

2026 大展宏图!

Dustin Ingram,代表 PyPI 团队

Back to Blog

相关文章

阅读更多 »

2025 年的 PyPI:年度回顾

2025 年度回顾:PyPI 亮点 标签:new features https://blog.pypi.org/tags/tag:new-features • 组织 https://blog.pypi.org/tags/tag:organi...