文/陽淼 山寨發佈會創始人
昨晚(4月8日)是駭客和白帽們的不眠之夜。 他們有的在狂歡,逐個進入戒備森嚴的網站,耐心地收集洩漏資料,拼湊出使用者的純文字密碼;有的在艱苦升級系統,統計漏洞資訊,還要準備說服客戶的說辭,讓他們意識到問題的嚴重性;當然還有淼叔這樣看熱鬧不嫌事大的,拼命惡補安全常識、 尋找專家採訪,試圖記錄這歷史性的一夜。
這一夜,互聯網門戶洞開。
基礎安全協定「心臟出血」
北京知道創宇公司的余弦守在電腦螢幕前徹夜未眠。 作為一家高速發展的安全企業研究部總監,余弦在國內駭客圈資歷頗深。 他向淼叔介紹了這次事件的起源。 該漏洞是由安全公司Codenomicon和谷歌安全工程師發現的,並提交給相關管理機構,隨後官方很快發佈了漏洞的修復方案。 4月7號,程式師Sean Cassidy則在自己的博客上詳細描述了這個漏洞的機制。
他披露,OpenSSL的原始程式碼中存在一個漏洞,可以讓攻擊者獲得伺服器上64K記憶體中的資料內容。 這部分資料中,可能存有安全證書、使用者名與密碼、聊天工具的消息、電子郵件以及重要的商業文檔等資料。
OpenSSL 是目前互聯網上應用最廣泛的安全傳輸方法(基於SSL即安全套接層協定)。 可以近似地說,它是互聯網上銷量最大的門鎖。 而Sean爆出的這個漏洞,則讓特定版本的OpenSSL成為無需鑰匙即可開啟的廢鎖;入侵者每次可以翻檢戶主的64K資訊,只要有足夠的耐心和時間,他可以翻檢足夠多的資料,拼湊出戶主的銀行密碼、私信等敏感性資料; 假如戶主不幸是一個開商店的或開銀行的,那麼在他這裡買東西、存錢的使用者,其個人最敏感的資料也可能被入侵者獲取。
一位安全行業人士在知乎上透露,他在某著名電商網站上用這個漏洞嘗試讀取資料,在讀取200次後,獲得了40多個使用者名、7個密碼,用這些密碼,他成功地登錄了該網站。
發現者們給這個漏洞起了個形象的名字:heartbleed,心臟出血。 這一夜,互聯網的安全核心,開始滴血。
中國有至少三萬台機器「帶病」
一些安全研究者認為,這個漏洞影響可能沒有那麼大,因為受漏洞影響的OpenSSL 1.01系列版本,在互聯網上部署並不廣泛。
國內老資格的安全工作者、安天實驗室首席架構師江海客不認同這種說法。 他在微博上預警:「這一次,狼真的來了」。
余弦則以對問題進行了精確的定量分析。 4月8日的不眠之夜中,他除了在Twitter和各大論壇中即時跟蹤事態的最新進展,更重要的精力放在了 ZoomEye系統的掃描上。 根據該系統掃描,中國全境有1601250台機器使用443埠,其中有33303個受本次OpenSSL漏洞影響!443 埠僅僅是OpenSSL的一個常用埠,用以進行加密網頁訪問;其他還有郵件、即時通訊等服務所使用的埠, 因時間關係,尚未來得及掃描。
ZoomEye 是一套安全分析系統,其工作原理類似Google,會持續抓取全球互聯網中的各種伺服器,並記錄伺服器的硬體設定、軟體環境等各類指標,生成指紋,定期對比,以此確定該伺服器是否存在漏洞或被入侵。 在此次「心臟出血」漏洞檢測中,余弦給該系統後面加上一個「體檢」系統,過濾出使用問題OPenSSL的伺服器,即可得出存在安全隱患的伺服器規模。
從該系統「體檢」結果看,比三萬台問題伺服器更令人驚心的,是這些伺服器的分佈:它們有的在銀行網銀系統中,有的被部署在協力廠商支付裡,有的在大型電商網站,還有的在郵箱、即時通訊系統中。
自這個漏洞被爆出後,全球的駭客與安全專家們展開了競賽。 前者在不停地試探各類伺服器,試圖從漏洞中抓取到儘量多的使用者敏感性資料;後者則在爭分奪秒地升級系統、彌補漏洞,實在來不及實施的則暫時關閉某些服務。 余弦說,這是目前最危險的地方:駭客們已經紛紛出動,一些公司的負責人卻還在睡覺。 而如果駭客入侵了伺服器,受損的遠不止公司一個個體,還包括存放于公司資料庫的大量使用者敏感資料。 更為麻煩的是,這個漏洞實際上出現于2012年,至今兩年多,誰也不知道是否已經 有駭客利用漏洞獲取了使用者資料;而且由於該漏洞即使被入侵也不會在伺服器日誌中留下痕跡,所以目前還沒有辦法確認哪些伺服器被入侵,也就沒法定位損失、 確認洩漏資訊,從而通知使用者進行補救。
問題的應對與新的問題
目前,ZoomEye仍在持續不斷地給全球伺服器」體檢「,這個過程需要20小時左右。 相比之下,僅僅給國內伺服器體檢需要的時間短得多,僅僅需要22分鐘;而給那三萬多台」帶病「伺服器重複體檢,則只需兩分鐘。 目前,余弦已經將這份名單提交給CNCERT/CC(國家互聯網應急中心),由後者進行全國預警。 但是,除了移動、聯通等這些大型企業外,CNCERT也沒有強制力確保其他公司看到預警內容,最後可能還是需要媒體持續曝光一些「帶病」伺服器,以此倒逼相關公司重視該漏洞。
而在漏洞修補期間,普通消費者與公司均應該採取相關措施規避風險。 對於普通使用者來說,余弦建議在確認有關網站安全之前,不要使用網銀、電子支付和電商購物等功能,以避免使用者密碼被鑽了漏洞的駭客捕獲。 「一位銀行朋友告訴我,他們補上這個漏洞需要兩天時間。 這兩天大家最好就別登錄網銀了,確認安全後再登。 如果已經登錄過了,那就考慮換一下密碼吧。 」
與使用者的消極避險不同,相關互聯網企業則應該儘快進行主動升級。 升級到最新的OpenSSL版本,可以消除掉這一漏洞,這是目前企業最便捷的做法。 但在升級後,理論上還應該通知使用者更換安全證書(因為漏洞的存在,證書的金鑰可能已洩漏),並通知使用者盡可能地修改密碼。 後面這兩個措施,企業實施起來會面臨很大的代價,也只能通過媒體儘量曝光,讓意識到的使用者重新下載證書並自行修改密碼了。
由於「心臟出血」 漏洞的廣泛性和隱蔽性,未來幾天可能還將會陸續有問題爆出。 在互聯網飛速發展的今天,一些協定級、基礎設施級漏洞的出現,可能會打擊人們使用互聯網的信心,但客觀上也使得問題及時暴露,在發生更大的損失前及時得到彌補。 作為身處其中的個人,主動應變、加強自我保護,可能比把安全和未來全部託付出去要負責任一些。