GitHub賬戶被黑:舊漏洞導致弱金鑰大量留存
又見歷史原因導致的安全隱患
在七年前開發人員發現GitHub存在一個災難性的漏洞之後,GitHub已經關閉了數量不明的透過金鑰訪問的賬戶。
Github允許授權使用者登入到隸屬於Spotify、Yandex和英國政府的公共倉庫賬戶中,而這些公共倉庫賬戶卻使用了由當時存在缺陷的Linux發行版本Debian生成的SSH金鑰,而這部分金鑰是不安全的——其金鑰的位數太少以至於可以列舉導致暴力破解,分分鐘登入這些存在威脅的賬戶中。
七年後,Debian社群的朋友們修復了bug並且提醒使用者取消舊的金鑰而重新生成一個。倫敦的開發人員Ben Cartwright-cox說,他發現了這一漏洞仍然存在於海量金鑰中,而這些金鑰因位數不足比較容易被人攻擊利用。
Cartwright-cox在週一發表的博文中稱:
“如果你剛剛或者正收到一封關於金鑰被撤銷的郵件,那請你務必仔細瀏覽並且確保確實沒有人攻擊你。如果你使用了存在問題的金鑰,你可能已經遭到了駭客的攻擊。”
金鑰數量有限?
Cartwright-Cox在GitHub上發現了大約94個包括Debian衍生缺陷的金鑰。3月份他向GitHub官方報告之後,才發現實際使用者數量要高得多。GitHub於上月撤銷了這些金鑰,目前GitHub官方沒有作出其他回應。
此外,Cartwright-cox發現了九個GitHub SSH金鑰bits數量存在嚴重不足。其中有兩個只包含256位,導致他能夠在不到一小時內克隆出金鑰,而剩餘的其他7個金鑰都只有512位。
漏洞描述
下面我們看一下這個Debian的漏洞是如何導致列舉的。
該漏洞可謂是十分亮眼。因為漏洞的存在,使得生成的SSH金鑰長度非常短。當生成OpenSSH金鑰的位數不足時,對於一個給定體系結構、金鑰大小和金鑰型別而言只有32767種輸出結果。攻擊者能夠使用相同方法找到弱金鑰,然後使用一些技術來獲取金鑰保護的賬戶。這一任務會在不安全Debian SSH 金鑰的幫助下獲得一個或者更多公共網站,比如這一個:
“如果我想折騰得動靜大一些,我大可去做我在部落格中提到的那些事情,然後或許可以給GitHub他們一些警示(我已經給了他們機會的)。 想要製造這樣的問題可以如下進行: 獲取問題金鑰列表。其中包含了所有SSH金鑰的公共和私密部分,如果使用者有一個存在Debien RNG 漏洞的OpenSSH版本,然後得到列表中的每個金鑰,並嘗試登入帶有金鑰的GitHub ssh。
你使用金鑰最終會告訴你與之匹配使用者姓名是什麼然後進行配對,比如載入我的金鑰便時會顯示 "Hi benjojo! You've successfully authenticated, but GitHub does not provide shell access.", 但如果我使用的是另一個存在缺陷的金鑰,則會顯示 "Hi {user}! You've successfully authenticated, but GitHub does not provide shell access." ,這樣我就知道輕鬆知道我的目標使用者是誰了。”
使用者:快去更新金鑰和作業系統
Rapid7 的高階研究員及Metasploit框架的聯合創始人HD Moore表示(小編:Moore同志又在宣傳推廣他的MSF框架了):
"從技術上講,攻擊者甚至不需要私鑰來檢視網站接受的使用者身份驗證。僅僅是公共金鑰和Metasploit模組就能夠完成了。"
這個漏洞於2006年被發現,當時鑑於一些使用者提交的漏洞報告,Debian維護人員最終去掉了OpenSSL程式碼庫的兩行程式碼。而Debian的維護人員僅僅是去掉了Debian對於OpenSSH的依賴,因此這個存在於OpenSSH中的位數缺陷並沒有被修復,接下來的故事更戲劇化,Ubuntu在不知情的情況下也打包了這個存在缺陷的OpenSSH版本,所以這個漏洞又跑到了Linux的另一發行版本Ubuntu中,而在此後的20個月中,並沒有人發現這個從Debian跑過來的重大問題,而就在這20個月裡,有一批數量不明的金鑰已經生成。
這個問題並不是一個小問題,因為這批數量不明的SSH弱金鑰還大量存在於Github中,補丁也只能保證從此刻開始新生成的SSH金鑰的安全性,想要完全解決問題,還需要使用者主動去撤銷那些在20個月內生成的存在缺陷的金鑰,並使用新的作業系統以生成新的金鑰。由此看來,想要徹底解決這個問題,任務量不可小覷。
小編語
最近Github可謂是多事之秋啊,先是被DDoS,然後又被爆出存在如此多數量的弱金鑰,大家都是碼程式碼的,找個好點的託管平臺容易嘛!程式設計師何苦為難程式設計師!
不過上個月末才傳出Github已經宣佈正在開發一個去中心化的產品——GitTorrent,據官方回覆說,一來是為了防止被DDoS,二來也為了Github未來的發展。Github未來如何,我們拭目以待。不過我們衷心祝願這樣一個好的平臺越做越好!
相關文章
- github,SSH金鑰生成方法Github
- PHP弱型別在實戰中導致的漏洞總結PHP型別
- 網站被黑客入侵導致百度快照收錄大量違規內容網站黑客
- 配置多個git賬號的ssh金鑰Git
- 註冊Github賬戶過程Github
- kubernetes實戰篇之為預設賬戶建立映象拉取金鑰
- 微軟配置錯誤導致大量敏感資料洩露,全球客戶受影響微軟
- 異常程式導致大量資源佔用
- Codeigniter 利用加密Key(金鑰)的物件注入漏洞加密物件
- 作業二:Github註冊賬戶過程Github
- 更改SERVICE_NAME導致大量會話被KILL會話
- 金鑰,私鑰,公鑰的區分
- Github暫停俄羅斯程式設計師賬戶Github程式設計師
- 微軟:99.9%的被黑賬戶沒有使用多因素身份認證微軟
- office產品金鑰大全 office產品金鑰分享
- Mac OS High Sierra root賬戶漏洞問題Mac
- Windows NFS 真弱 → 中文亂碼導致檔案找不到WindowsNFS
- Win10如何更改金鑰 Win10電腦金鑰過期修改金鑰的方法Win10
- iPhone可以充當汽車鑰匙嗎?(蘋果企業開發者賬戶)iPhone蘋果
- bitlocker如何恢復金鑰 bitlocker恢復金鑰的方法
- bandizip註冊產品金鑰 bandizip金鑰使用步驟
- 探討NET Core資料進行3DES加密或解密弱金鑰問題3D加密解密
- 索尼PS5遭破解,黑客利用核心漏洞獲取根金鑰黑客
- 子游標過多導致大量mutex爭用故障分析Mutex
- oracle 隱式金鑰Oracle
- Redis 未授權訪問缺陷可輕易導致系統被黑Redis
- 外媒炒冷飯,翻華為舊軟體漏洞誤導大眾
- git生成ssh金鑰詳細步驟 git如何生成ssh金鑰Git
- server2003安裝金鑰 server金鑰序列號Server
- 統計資訊過舊導致SQL無法執行出來SQL
- Exim漏洞導致數百萬伺服器被接管伺服器
- 網路賭博被黑賬戶餘額被凍結無法提款怎麼辦?
- bitlocker恢復金鑰在哪裡 bitlocker恢復金鑰找回方法介紹
- vmware16許可證金鑰 vmware16金鑰安裝教程
- vmware workstation pro金鑰許可證分享 vmware workstation pro金鑰使用教程
- 【ubuntu】金鑰儲存在過時的 trusted.gpg 金鑰環中UbuntuRust
- 如何在一臺電腦上管理/切換多個github賬戶Github
- 百度推廣賬戶大量被盜 眾多企業SAY GOOD BYEGo