天天看點

代碼缺陷導緻 CloudFlare 洩露大量客戶站點的密碼等私密資訊

據外媒報道,知名網絡優化服務(cdn)提供商 cloudflare 最近遭遇了一起嚴重的洩露事件,包括 cookies、api 鍵值、以及密碼等在内的許多敏感個人資訊被曝光。另據昨晚一篇博文的詳細披露,該公司為數百上千萬個網際網路站點提供 ssl 加密。雖然 cloudflare 目前暫未證明這批資訊被惡意利用,但搜尋引擎上的部分緩存又是另一個問題。

代碼缺陷導緻 CloudFlare 洩露大量客戶站點的密碼等私密資訊

2 月 18 号的時候,在谷歌 project zero 安全小組工作的 travis ormandy 最先在 twitter 上爆料了此事。但實際上,這個缺陷或許可以追溯至去年 9 月 22 号。

cloudflare 表示,規模最大的一次資訊洩露始于 2 月 13 日,當時發生的代碼異動表明每秒 3,300,300 次的 http 請求可能導緻了記憶體溢出。

代碼缺陷導緻 CloudFlare 洩露大量客戶站點的密碼等私密資訊

在被緩存的資料中,ormandy 看到了某約會站點上的預訂酒店和密碼等完整資訊。他在 2 月 19 号寫到:

我不知道 cloudflare 背後究竟有多少網際網路站點,直到發生了這件事。這包括完整的 https 請求、用戶端 ip 位址、完整的響應、cookies、密碼、鍵值、日期等一切内容。

在 ormandy 釋出了推文之後,cloudflare 工程師禁用了導緻出現問題的三項功能代碼,并與搜尋引擎方攜手清理緩存資訊。

據了解,cloudflare 的 emailobfuscation、server-sideexcludes 和 automatichttps rewrites 這些函數正是此次洩露的罪魁禍首。

這家公司決定為其邊緣伺服器開發一個新的 html 解析器時,問題就出現了。該解析器是使用 ragel 編寫的,随後轉變成機器生成的 c 代碼。這段代碼存在頁面上不成對出現的 html 标簽觸發的緩沖區溢出安全漏洞。這個有缺陷的指針檢查源代碼本該阻止程式覆寫記憶體内容:

結果發生的一幕是,在别的地方,p 變得大于 pe,因而避免了長度檢查,讓緩沖區得以溢出額外的資訊。這最終導緻了 web 會話洩露。

繼續閱讀