速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

GitHub 宣布新政策:要求所有贡献代码的用户在 2023 年底前启用双因素认证

  • 2022-05-05
  • 本文字数:3159 字

    阅读完需:约 10 分钟

GitHub宣布新政策:要求所有贡献代码的用户在2023年底前启用双因素认证

尽管双因素验证机制为在线帐户提供了重要的额外保护,但 GitHub 的内部研究表明,目前只有大约 16.5% 的活跃用户对其帐户启用了增强性的安全措施。

GitHub 要求所有代码贡献者必须双重验证


5 月 4 日,GitHub 宣布,到 2023 年底,所有向该网站上传代码的用户都需要启用一种或多种形式的双因素身份验证 (2FA),以便能够继续使用该平台。


GitHub 首席安全官 (CSO) Mike Hanley 在一篇博客文章中宣布了这项新政策,Mike Hanley 强调,面对恶意分子接管开发者账户所造成的威胁,微软拥有的平台在保护软件开发过程完整性方面发挥了重要作用。


“软件供应链从开发者开始,”Mike Hanley 写道。“开发者账户经常是社交工程和账户接管的目标,保护开发者免受此类攻击是确保供应链安全的第一步,也是最关键的一步。”


尽管双因素身份验证为在线帐户提供了重要的额外保护,但 GitHub 的内部研究表明,目前只有大约 16.5% 的活跃用户(大约六分之一)对其帐户启用了增强性的安全措施。在 GitHub 看来,这个数字着实有些低,因为鉴于该平台的用户群基础,他们本应意识到“仅密码保护”存在的风险。


Hanley 在接受 The Verge 采访时表示,通过引导这些用户使用更高级别的最低账户保护标准,GitHub 希望从整体上提高软件开发社区的安全性。


“GitHub 在软件开发生态中处于一个独特位置,仅凭借 GitHub.com 上的绝大多数开源和创作者社区,我们可以通过提高安全性标准来对整个生态系统的安全性产生重大的积极影响。”Hanley 说,“我们认为,这确实是我们可以提供的最好的全生态系统效益之一,我们致力克服任何挑战或障碍,以确保用户成功采用。”


GitHub 已经为一小部分平台用户建立了强制使用 2FA 的先例,并已在包管理软件 NPM 分发的流行 JavaScript 库的贡献者中进行了试验。广泛使用的 NPM 包每周可以被下载数百万次,因此它们极易成为恶意软件团伙的目标。在某些情况下,黑客入侵了 NPM 贡献者的账户,并利用它们发布软件更新,安装密码窃取器等。


GitHub 对截至 2022 年 2 月的 100 个最受欢迎的 NPM 包的维护者强制要求进行双因素身份认证。该公司计划在 5 月底前将同样的要求扩展到排名前 500 的软件包的贡献者中。


Hanley 说,从这个小型试验中获得的结论将被用于后续顺利地在整个平台上推出 2FA。他说:“我们已经在 NPM 上完成了这项工作,这对我们有很大的好处。”“我们从那次经历中学到了很多东西。从我们所交谈过的开发者和开发者社区那里得到的反馈来看,我们就如何与他们进行良好的实践进行了非常积极的对话。”


Hanley 表示,从广义上讲,这意味着为在整个网站范围内强制使用 2FA 设定一个较长的准备时间,并设计一系列的上线流程,在 2024 年最后期限之前推动用户采用。


确保开源软件的安全仍然是软件行业迫切关注的问题,尤其是在去年震动行业的史诗级高危漏洞 log4j 出现之后。虽然 GitHub 的新政策将缓解一些安全威胁,但系统性的挑战仍然存在:许多开源软件项目仍然由无偿志愿者维护,填补资金缺口被视为整个科技行业面临的一个主要问题。

GitHub 首席安全官 Mike Hanley 解读新政策


以下为 GitHub 首席安全官 Mike Hanley 官宣这项新政策的博客文章全文:


软件供应链的最上游就是开发者。社会工程和帐户攻击活动经常把开发者账户作为目标,因此保护开发者免受此类攻击的损害是确保软件供应链安全性的第一步,也是最关键的一步。


GitHub 一直以来都在努力保护开发者的账户,包括找出已被泄露的用户密码并让这些密码失效、提供强大的 WebAuthn 安全密钥支持,以及让所有 npm 发布者使用增强的登录验证措施等。


我们致力于在全平台提高帐户安全性来保护软件生态系统,而今天(5 月 4 日)我们宣布了一项新的相关措施:GitHub 将要求所有在 GitHub.com 上贡献代码的用户在 2023 年底之前启用至少一种形式的两步身份验证(2FA)。


GitHub 将要求所有在 GitHub.com 上贡献代码的用户在 2023 年底之前启用至少一种形式的两步身份验证(2FA)。GitHub 一直在努力确保强大的帐户安全性,同时避免牺牲开发者的良好体验,而将目标设在 2023 年底意味着我们有很多时间来做出优化,满足上述需求。


随着各种安全标准的不断进化,我们将继续积极探索安全验证用户的各类新方法,其中包括无密码验证。全球各地的开发者都可以期待更多的身份验证和帐户恢复选项,以及有助于防止帐户泄露和从帐户泄露事件中恢复的改进措施。

为什么帐户安全性和 2FA 很重要


2021 年 11 月,一些未启用 2FA 的开发者帐户遭到入侵,导致很多 npm 包被入侵者接管,为此 GitHub 承诺在 npm 帐户安全性方面投入更多资源。我们继续改进 npm 帐户安全性,同时也在投入相同程度的努力来保护 GitHub 开发者的帐户。


大多数安全漏洞并非少见的零日攻击的产物,而是来源于很多低成本攻击手段,如社会工程、凭证盗窃或泄漏,以及其他很多为攻击者提供对受害者帐户及其所有资源的广泛访问权限的途径。被入侵的帐户可用于窃取私有代码,或将恶意更改推送到这些代码上。这不仅会将与受感染帐户相关的个人和组织置于危险之中,而且会让所有使用受影响代码的用户都暴露在风险环境下。因此,这种攻击可能会对更广泛的软件生态系统和供应链下游产生巨大的影响。


应对这种攻击手段的最佳防御措施就是对原有基于密码的基本身份验证手段进行升级。我们已经朝这个方向迈出了一步,弃用了针对 git 操作和我们 API 的基本身份验证,并要求在用户名和密码之外添加基于电子邮件的设备验证。


2FA 是下一道强大防线,但虽然这种验证手段取得了成功,整个软件生态系统的 2FA 采用率总体上仍然很低。现在,只有大约 16.5%的活跃 GitHub 用户和 6.44%的 npm 用户使用一种或多种形式的 2FA。


npm 2FA 更新


2 月,我们将 npm 注册表中前 100 个软件包的所有维护者升级为强制 2FA,并在 3 月将所有 npm 帐户升级为增强登录验证。


5 月 31 日,我们将要求前 500 名软件包的所有维护者强制升级为 2FA。我们的最后一批升级对象将是所有高影响力软件包的维护者,这些软件包的依赖超过 500,或每周下载量达 100 万次——我们计划在今年第三季度完成这一批升级。我们将充分利用在 npm 上升级 2FA 的行动中所学到的知识,并将这些经验应用到我们在 GitHub.com 上的工作中。


我们意识到,GitHub 是所有开发者的家园,这一独特地位也意味着我们既有机会也有责任提高整个软件开发生态系统的安全标准。虽然我们正在对我们的平台和更广泛的行业进行深入投资以提高软件供应链的整体安全性,但如果我们不解决持续存在的账户泄露风险,那么这项投资从一开始就不会起到很大成效。今天,我们仍在继续应对这一挑战,并努力为个人开发者提供众多安全实践来提高供应链的安全性。

从今天开始:

个人用户


想要抢占先机?我们最近在 iOS 和 Android 上为 GitHub Mobile 推出了 2FA!单击此处了解如何立即配置 GitHub Mobile 的 2FA。要配置 Mobile 2FA,你需要启用至少一种其他形式的 2FA。


正在寻找对抗网络钓鱼的 WebAuthn 安全密钥体验或其他选项?你可以从这里开始。


为了普及安全密钥,我们已将YubiKey等安全密钥分发给关键的开源项目维护者,并在 GitHub商店中上架了安全密钥。SoloKeysTitan安全密钥也是不错的选择。


此处提供了有关 GitHub.com 2FA 的更多文档。要为 npm 帐户配置 2FA,请查看这里的内容。


不要忘了保存你的恢复代码,并配置一种或多种帐户恢复方法

组织和企业


GitHub.com 组织和企业所有者也可以要求组织和企业的成员升级到 2FA。请注意,启用这些设置后,不使用 2FA 的组织和企业成员和所有者将从组织或企业中删除。

下一步计划


在接下来的几个月里,我们将分享更多关于强制 GitHub.com 用户升级到 2FA 的详细信息和时间表。虽然我们坚信为活跃的贡献者(例如提交代码、打开或合并拉取请求、使用 Actions 或发布软件包的用户)提供 2FA 是正确的做法,但我们也希望为大家提供流畅且可访问的体验,所以请期待未来在这一方面的改进和新功能。


原文链接:


https://github.blog/2022-05-04-software-security-starts-with-the-developer-securing-developer-accounts-with-2fa/

2022-05-05 14:422434
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 539.2 次阅读, 收获喜欢 1977 次。

关注

评论

发布
暂无评论
发现更多内容

开源交流丨任务or实例 详解大数据DAG调度系统Taier任务调度

袋鼠云数栈

云监控是什么意思?哪个软件好?

行云管家

云计算 云平台 云监控

【算法实践】他山之石,可以攻玉--利用完全二叉树快速实现堆排序

迷彩

Python 数据结构 算法 二叉堆排序 8月月更

软件测试 | 测试开发 | app自动化测试之Appium 原理 与 JsonWP 协议分析

测吧(北京)科技有限公司

json

长安链p2p-Liquid学习笔记

长安链

软件测试 | 测试开发 | 利用 pytest 玩转数据驱动测试框架

测吧(北京)科技有限公司

pytest

UI设计培训班出来后找工作吗?

小谷哥

node在大前端中的应用场景

达摩

nodejs

前端高频面试题(三)(附答案)

helloworld1024fd

JavaScript 前端

何止一个惨字形容,水滴Java面试一轮游,壮烈了,问啥啥不会,数据库血崩,我该怎么办?

钟奕礼

Java 编程 程序员 后端 java面试

佛山等保测评机构有哪些?怎么做?

行云管家

等保 等级测评 佛山

同时将博客部署到github和conding

Five

前端 博客搭建 8月月更

数字藏品系统开发:详细功能介绍

开源直播系统源码

NFT 数字藏品 数字藏品系统软件开发 NFT数字藏品系统

企业应用现代化实用教程 | 微服务架构怎么选?Dubbo、Spring Cloud、Istio终极对决

York

微服务 云原生 Spring Cloud istio Service Mesh (ASM)

Java培训需要多长时间

小谷哥

麦聪软件为云上客户提供DaaS服务,入驻国内Top3云市场

雨果

公有云私有云 DaaS数据即服务

JDK1.6中String类的坑,快让我裂开了…

华为云开发者联盟

开发

授人为师,首期明道云零代码教练员研修班圆满结束

明道云

数字藏品系统开发:(开发NFT数字藏品源码)

开源直播系统源码

NFT 数字藏品 数字藏品系统

MASA Stack 第四期社区例会

MASA技术团队

.net 云原生 dapr blazor MASA

大数据培训机构学习后就业前景如何

小谷哥

如何选择靠谱的Java培训

小谷哥

开源公开课丨ChengYing安装原理剖析

袋鼠云数栈

大学毕业后如何选择大数据培训机构

小谷哥

Quick Tracking「全域采集与增长分析」,破局全域营销之道

瓴羊企业智能服务

华为大数据开发平台 DataFactory 行业应用典型案例

宇宙之一粟

华为云 大数据技术 8月月更

前端高频面试题(四)(附答案)

helloworld1024fd

JavaScript 前端

2022年无糖茶饮料发展洞察分析

易观分析

无糖茶 行业洞察

分布式协同AI基准测试项目Ianvs:工业场景提升5倍研发效率

华为云开发者联盟

云计算 云原生

基于 LowCodeEngine 的调试能力建设与实践

阿里巴巴终端技术

前端 低代码

leetcode 409 Longest Palindrome 最长回文串(简单)

okokabcd

LeetCode 算法与数据结构

GitHub宣布新政策:要求所有贡献代码的用户在2023年底前启用双因素认证_AI&大模型_Corin Faife_InfoQ精选文章