GitHub防黑客新措施:棄用賬密驗(yàn)證Git操作,改用token或SSH密鑰,14號(hào)0點(diǎn)已執(zhí)行
蕭簫 發(fā)自 凹非寺
量子位 報(bào)道 | 公眾號(hào) QbitAI
還在用賬戶+密碼對GitHub上的Git操作進(jìn)行身份驗(yàn)證?
趕緊整個(gè)token(令牌)或SSH密鑰吧!

8月14號(hào)0點(diǎn)(8月13日9:00 PST)開始,在GitHub上執(zhí)行Git操作就會(huì)導(dǎo)致失敗。
GitHub官方表示,這一舉措是為了提高Git操作的安全性,防止密碼撞庫等事情發(fā)生。
哪些操作會(huì)受影響?
簡單來說,如果你還在用賬密驗(yàn)證Git操作,這些行為都會(huì)受到影響:
- 命令行Git訪問
- 采用Git的桌面應(yīng)用程序(GitHub Desktop不受影響)
- 賬密訪問GitHub上Git repo的一切應(yīng)用程序/服務(wù)
這些用戶不會(huì)受影響:
- 已經(jīng)采用token或SSH密鑰方式驗(yàn)證,即啟用雙因素身份驗(yàn)證(2FA)的用戶
- 使用GitHub Enterprise Server本地產(chǎn)品的用戶(該產(chǎn)品尚未對此進(jìn)行更改)
- 使用GitHub App的用戶,此前已經(jīng)不支持賬密驗(yàn)證
當(dāng)然,大部分經(jīng)常使用Git的用戶應(yīng)該都已經(jīng)知道這件事了。
在今年6月30號(hào)(15~18時(shí))、7月1號(hào)(0~3時(shí))、7月28號(hào)(15~18時(shí))和29號(hào)(0~3時(shí)),GitHub已經(jīng)針對這件事進(jìn)行了預(yù)演,所有Git操作都被要求用token或SSH密鑰驗(yàn)證。
現(xiàn)在,這項(xiàng)舉措已經(jīng)變成一個(gè)永久措施。
GitHub究竟為什么要這樣做呢?
token和SSH密鑰安全在哪里?
首先需要了解,只用賬戶和密碼進(jìn)行身份驗(yàn)證會(huì)有什么隱患。
互聯(lián)網(wǎng)上,每天都有大量網(wǎng)站遭受黑客攻擊,導(dǎo)致數(shù)據(jù)外泄,這些數(shù)據(jù)中就包括不少用戶的賬號(hào)密碼。
拿到賬號(hào)密碼后,黑客會(huì)用它們試著登錄其他網(wǎng)站,也就是所謂的密碼撞庫。
簡單來說,如果你ABC網(wǎng)站用的是一套賬戶密碼,在A網(wǎng)站的密碼被泄露后,BC網(wǎng)站也可能會(huì)被盜號(hào)。

為了防止密碼撞庫,網(wǎng)站會(huì)采取更多手段驗(yàn)證身份信息,像GitHub就推出了雙因素身份驗(yàn)證、登錄警報(bào)、設(shè)備認(rèn)證、防用泄露密碼及支持WebAuth等措施。
雙因素身份驗(yàn)證,是指在秘密信息(密碼等)、個(gè)人物品(身份證等)、生理特征(指紋/虹膜/人臉等)這三種因素中,同時(shí)用兩種因素進(jìn)行認(rèn)證的過程。
現(xiàn)在,GitHub開始強(qiáng)制用戶采用token或SSH密鑰進(jìn)行身份驗(yàn)證。相比于賬密,這兩者的安全性顯然更高:
- 唯一性:僅限GitHub使用,根據(jù)設(shè)備/使用次數(shù)生成
- 可撤銷性:可隨時(shí)被單獨(dú)撤銷,其他憑證不受影響
- 區(qū)域性:使用范圍可控,只允許在部分訪問活動(dòng)中執(zhí)行
- 隨機(jī)性:不受撞庫影響,比賬密復(fù)雜度更高
那么,token和SSH密鑰之間,哪個(gè)更合適呢?
雖然目前GitHub官方推薦的是token,因?yàn)樗O(shè)置更為簡單,不過相比之下,SSH密鑰的安全性要更高一些。
還沒有設(shè)置token或SSH密鑰的Git用戶,可以戳官方教程整起來了~
GitHub設(shè)置教程:
[1]https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token
[2]https://docs.github.com/en/github/authenticating-to-github/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent
參考鏈接:
[1]https://github.blog/changelog/2021-08-12-git-password-authentication-is-shutting-down/
[2]https://www.theregister.com/2021/08/12/git_proxyshell_gigabyte/




