GitHub防黑客升級:碼農(nóng)要在明年年底前啟用雙因素認(rèn)證
“軟件供應(yīng)鏈?zhǔn)加陂_發(fā)者。社會工程和帳戶攻擊活動經(jīng)常把開發(fā)者賬戶作為目標(biāo),因此保護開發(fā)者免受此類攻擊是確保軟件供應(yīng)鏈安全性的第一步,也是最關(guān)鍵的一步?!碑?dāng)?shù)貢r間5月4日,GitHub首席安全官Mike Hanley在博客中公布GitHub新政策:在2023年底之前,所有在GitHub.com上貢獻代碼的用戶都需要啟用至少一種形式的雙因素身份驗證(2FA)。
盡管雙因素身份驗證為在線賬戶提供了重要的額外保護,但GitHub的內(nèi)部研究表明,目前只有大約16.5%的活躍用戶和6.44%的npm用戶對其帳戶啟用了增強的安全措施。
GitHub是全球數(shù)千萬軟件開發(fā)人員使用的代碼托管平臺。Hanley寫道,“GitHub處于獨特的位置,僅憑GitHub.com上的絕大多數(shù)開源和創(chuàng)作者社區(qū),我們就可以通過提高安全標(biāo)準(zhǔn)來對整個生態(tài)系統(tǒng)的安全產(chǎn)生重大的積極影響?!?/p>
保護開源軟件的安全仍然是軟件行業(yè)迫切關(guān)注的問題,尤其是在去年令企業(yè)和政府競相應(yīng)對的全球計算機網(wǎng)絡(luò)重大安全威脅log4j漏洞之后。但是,盡管GitHub新政策將緩解一些威脅,但系統(tǒng)性挑戰(zhàn)仍然存在:許多開源軟件項目仍由無償志愿者維護,縮小資金缺口一直被視為整個科技行業(yè)的主要問題。
雙因素身份驗證是什么?為什么GitHub認(rèn)為帳戶安全和雙因素身份驗證很重要?
雙因素身份驗證概念圖
2FA(2 Factor Authentication,雙因素身份驗證),是指在秘密信息(密碼等)、個人物品(身份證等)、生理特征(指紋/虹膜/人臉等)這三種因素中,同時用兩種因素進行認(rèn)證。
Hanley寫道,“大多數(shù)安全漏洞并非少見的零日攻擊(Zero-day attacks,充分利用先前無人知曉的漏洞施展攻擊)的產(chǎn)物,而是來源于很多低成本攻擊手段,如社會工程(social engineering)、憑證盜竊(credential theft)或泄漏,以及其他很多為攻擊者提供對受害者帳戶及其所有資源的廣泛訪問權(quán)限途徑。被入侵的帳戶可用于竊取私有代碼,或?qū)阂飧耐扑偷竭@些代碼上。這不僅會將與受感染帳戶相關(guān)的個人和組織置于危險之中,而且會讓所有使用受影響代碼的用戶都暴露在風(fēng)險環(huán)境下。因此,這種攻擊可能會對更廣泛的軟件生態(tài)系統(tǒng)和供應(yīng)鏈下游產(chǎn)生巨大的影響?!?/p>
這就是為什么雙因素身份驗證可以成為保護關(guān)鍵業(yè)務(wù)系統(tǒng)的有效機制,因為這意味著如果不良行為者獲得了私人登錄憑據(jù),但利用它們要困難得多。
如果想要更直觀理解,那么可以思考,只用賬戶和密碼進行身份驗證會有什么隱患?
在互聯(lián)網(wǎng)中,每天都有大量網(wǎng)站遭到黑客攻擊以致有數(shù)據(jù)外泄,而這些數(shù)據(jù)中就包括用戶的賬號密碼。拿到賬號密碼后,黑客可以用它們嘗試登錄其他網(wǎng)站,即“密碼撞庫”。
那么為了防止密碼撞庫,網(wǎng)站就會采取更多手段驗證身份信息,像GitHub推出的雙因素身份驗證、登錄警報、設(shè)備認(rèn)證、防用泄露密碼等。
GitHub透露,2021年11月,一些未啟用2FA的開發(fā)者帳戶遭到入侵,導(dǎo)致很多npm包(Node Package Manager,簡稱npm包管理工具)被入侵者接管,為此GitHub承諾在npm帳戶安全性方面投入更多資源。
GitHub認(rèn)為,應(yīng)對這種攻擊手段的最佳防御措施就是對原有基于密碼的基本身份驗證手段進行升級?!癎itHub已經(jīng)朝這個方向邁出了一步,棄用了針對git操作和我們API的基本身份驗證,并要求在用戶名和密碼之外添加基于電子郵件的設(shè)備驗證。2FA是下一道防線。”Hanley寫道。
在接下來的幾個月里,GitHub將分享更多關(guān)于強制GitHub.com用戶升級到2FA的詳細信息和時間表。