“心臟出血”漏洞(Heartbleed)已經過去6個月時間,這個一度被視為互聯網上最嚴重的網絡安全漏洞(現在被“破殼”取代),在目前仍不可小視。這個漏洞由Codenomicon、Google兩家公司分別發現。作為最初漏洞發現者,Codenomicon公司的三名成員很早就對外公布了他們的發現經過,不過Google安全工程師一直沒有透露過。
在最近一期Risky.biz播客上,Google安全工程師NeelMehta首度揭秘了他們對“心臟出血”的發現過程。
這與NeelMehta的工作職責有關。他說:“我在做的是OpenSSL審計工作,以及整個SSL通信層安全。”這顯然是一項長期工作,Mehta沒有表示他已經完成此項審計。
SSL(SecureSocketsLayer)是一個保障數據完整、安全的加密協議,它經常用在客戶端與服務器之間,我們常使用的Google搜索、支付寶、微信就是使用它來保障安全。OpenSSL是SSL協議的開源實現,它們類似于Chrome與瀏覽器工作機制(W3C規范)之間的關系。
Mehta表示,發現“心臟出血”漏洞最主要的原因,是由于他在SSL協議棧上的一些早先發現,包括今年2月份發現的GoToFail漏洞、3月份發現的GnuTLS漏洞。
“你會感覺在SSL協議層上,可能存在更多未發現的東西。所以我很好奇它的安全現狀,并順便做了下研究。然后…”
沒想到反響會如此巨大,主流媒體大多都做了報道(WSJ、Reuters、FT等)。Mehta說:“這個結果讓我有些驚訝。”當時還有另一家安全公司也發現了這個漏洞,并上線了一個專門播報漏洞狀況的網站。
不過Mehta對于漏洞的一些夸張說法不太感冒。在漏洞被公布后,彭博社的一篇報道提到:“美國國家安全局在他之前就知道’心臟流血’漏洞,并利用它達成過不可告人的目的。”Mehta表示不太確定這個說法,他個人認為這是不太可能的(原話為unlikely)。
不過這確實是一個問題。“心臟出血”漏洞已經存在了兩年多時間,直到現在才被發現和修補,還是因為Google對自身使用的基礎服務的審查。
“這可能是到達了一個臨界點。”Mehta說,“在斯諾登揭秘美國國家安全局的大規模竊聽計劃后,加密在過去一年被越來越重視。今年早些時候我們就發現了一大堆問題,接下來由于大家的重視,在這方面會有更多的發現。”
在斯諾登揭秘中,美國國家安全局曾經竊聽過Google數據中心之間的加密數據,并成功破解。
Mehta還談到了“破殼”漏洞(Shellshock),他認為這是比“心臟出血”漏洞更為嚴重。
這些漏洞之所以嚴重,是由于類似bash、OpenSSL的開源軟件被廣泛應用于全球數億設備之上。他懷疑其它軟件——被其稱之為“用膠水貼合在一起”的軟件,可能還存在著很多長年未被發現的問題。例如Zlib,一個在很多軟件中使用的壓縮庫;libjpeg,一個被廣泛應用的JPEG庫文件。
“libjpeg庫中的bug,將會有巨大的影響。”Mehta說道。