GitHub将要求所有代码贡献者使用2FA

发布时间:2022年05月06日 浏览:1371 来源:创客网络

  最大代码托管平台 GitHub 宣布到 2023 年底所有上传代码的用户都必须使用双因素认证(2FA)。GitHub 首席安全官(CSO)Mike Hanley 在官方博客上宣布了这一政策,此举旨在预防开发者的账号被劫持,防止攻击者劫持账号后上传恶意代码对下游项目发动供应链攻击。

  Hanley 称,软件的供应链始于开发者,开发者的账号经常成为社交工程和劫持的目标,保护开发者免受此类攻击是保护供应链安全的第一步也是最重要的一步。GitHub 的内部数据显示,只有 16.5% 的活跃用户启用了增强保护措施,它希望通过引导开发者采取更安全的账号保护标准,提高软件开发社区的整体安全性。

  GitHub 防黑客升级:码农要在明年年底前启用双因素认证

  “软件供应链始于开发者。社会工程和帐户攻击活动经常把开发者账户作为目标,因此保护开发者免受此类攻击是确保软件供应链安全性的第一步,也是最关键的一步。”当地时间 5 月 4 日,GitHub 首席安全官 Mike Hanley 在博客中公布 GitHub 新政策:在 2023 年底之前,所有在 GitHub.com 上贡献代码的用户都需要启用至少一种形式的双因素身份验证(2FA)。

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

  GitHub 是全球数千万软件开发人员使用的代码托管平台。Hanley 写道,“GitHub 处于独特的位置,仅凭 GitHub.com 上的绝大多数开源和创作者社区,我们就可以通过提高安全标准来对整个生态系统的安全产生重大的积极影响。”

  保护开源软件的安全仍然是软件行业迫切关注的问题,尤其是在去年令企业和政府竞相应对的全球计算机网络重大安全威胁 log4j 漏洞之后。但是,尽管 GitHub 新政策将缓解一些威胁,但系统性挑战仍然存在:许多开源软件项目仍由无偿志愿者维护,缩小资金缺口一直被视为整个科技行业的主要问题。

  双因素身份验证是什么?为什么 GitHub 认为帐户安全和双因素身份验证很重要?  

双因素身份验证概念图

  2FA(2 Factor Authentication,双因素身份验证),是指在秘密信息(密码等)、个人物品(身份证等)、生理特征(指纹/虹膜/人脸等)这三种因素中,同时用两种因素进行认证。

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

  这就是为什么双因素身份验证可以成为保护关键业务系统的有效机制,因为这意味着如果不良行为者获得了私人登录凭据,但利用它们要困难得多。

  如果想要更直观理解,那么可以思考,只用账户和密码进行身份验证会有什么隐患?

  在互联网中,每天都有大量网站遭到黑客攻击以致有数据外泄,而这些数据中就包括用户的账号密码。拿到账号密码后,黑客可以用它们尝试登录其他网站,即“密码撞库”。

  那么为了防止密码撞库,网站就会采取更多手段验证身份信息,像 GitHub 推出的双因素身份验证、登录警报、设备认证、防用泄露密码等。

  GitHub 透露,2021 年 11 月,一些未启用 2FA 的开发者帐户遭到入侵,导致很多 npm 包(Node Package Manager,简称 npm 包管理工具)被入侵者接管,为此 GitHub 承诺在 npm 帐户安全性方面投入更多资源。

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

  在接下来的几个月里,GitHub 将分享更多关于强制 GitHub.com 用户升级到 2FA 的详细信息和时间表。

返回