儘管雙重驗證機制為線上帳戶提供了重要的額外保護,但 GitHub 的內部研究表明,目前只有大約 16.5% 的活躍使用者對其帳戶啟用了增強性的安全措施。
GitHub 要求所有上傳程式碼使用者必須使用雙重驗證
5 月 4 日,GitHub 宣布,到 2023 年底,有在GitHub上傳程式碼的使用者都需要啟用一種或多種形式的雙重身份驗證 (2FA),以便能夠繼續使用該平台。
GitHub 首席安全長 (CSO) Mike Hanley 在一篇文章中宣布了這項新政策,Mike Hanley 強調,面對惡意分子接管開發者帳戶所造成的威脅,微軟擁有的平台在保護軟體發展過程完整性方面發揮了重要作用。
「軟體供應鏈從開發者開始,」Mike Hanley 寫道。「開發者帳戶經常是社交工程和帳戶接管的目標,保護開發者免受此類攻擊是確保供應鏈安全的第一步,也是最關鍵的一步。」
儘管雙重身份驗證為線上帳戶提供了重要的額外保護,但 GitHub 的內部研究表明,目前只有大約 16.5% 的活躍使用者(大約六分之一)啟用了增強性的安全措施。在 GitHub 看來,這個數字實在有些低,因為鑒於該平台的使用者群基礎,他們本來就應該意識到「只用密碼保護」存在的風險。
Hanley 在接受 The Verge 採訪時表示,透過引導這些使用者使用更高等級的最低帳戶保護標準,GitHub 希望從整體上提高軟體發展社群的安全性。
「GitHub 在軟體發展生態中處於一個獨特位置,僅憑藉 GitHub.com 上的絕大多數開源和創作者社群,我們可以透過提高安全性標準來對整個生態系統的安全性產生重大的積極影響。」Hanley 說,「我們認為,這確實是我們可以提供的最好的全生態系統效益之一,我們致力克服任何挑戰或障礙,以確保使用者成功採用。」
GitHub 已經為一小部分平台使用者建立了強制使用 2FA 的先例,並已在node套件管理器(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 萬次——我們計畫在今年Q3完成這一批升級。我們將充分利用在 npm 上升級 2FA 的行動中所學到的知識,並將這些經驗應用到我們在 GitHub.com 上的工作中。
我們意識到,GitHub 是所有開發者的家園,這一獨特地位也意味著我們既有機會也有責任提高整個軟體發展生態系統的安全標準。雖然我們正在對我們的平台和更廣泛的行業進行深入投資以提高軟體供應鏈的整體安全性,但如果我們不解決持續存在的帳戶洩露風險,那麼這項投資從一開始就不會起到很大成效。今天,我們仍在繼續應對這一挑戰,並努力為個人開發者提供眾多安全實踐來提高供應鏈的安全性。
從今天開始:
個人使用者
想要搶佔先機?我們最近在 iOS 和 Android 上為 GitHub Mobile 推出了 2FA!按一下此處瞭解如何立即配置 GitHub Mobile 的 2FA。要配置 Mobile 2FA,你需要啟用至少一種其他形式的 2FA。
正在尋找對抗網路釣魚的 WebAuthn 安全金鑰體驗或其他選項?你可以從這裡開始。
為了普及安全金鑰,我們已將YubiKey等安全金鑰分發給關鍵的開源專案維護者,並在 GitHub商店中上架了安全金鑰。SoloKeys或Titan安全金鑰也是不錯的選擇。
此處提供了有關 GitHub.com 2FA 的更多文檔。要為 npm 帳戶配置 2FA,請查看這裡的內容。
不要忘了保存你的回復碼,並配置一種或多種帳戶恢
復方法。
組織和企業
GitHub.com 組織和企業所有者也可以要求組織和企業的成員升級到 2FA。請注意,啟用這些設置後,不使用 2FA 的組織和企業成員和所有者將從組織或企業中刪除。
下一步計畫
在接下來的幾個月裡,我們將分享更多關於強制 GitHub.com 使用者升級到 2FA 的詳細資訊和時間表。雖然我們堅信為活躍的貢獻者(例如上傳程式碼、打開或合併拉取請求、使用 Actions 或發布套裝軟體的使用者)提供 2FA 是正確的做法,但我們也希望為大家提供流暢且可存取的體驗,所以請期待未來在這一方面的改進和新功能。
資料來源:
加入電腦王Facebook粉絲團