search
尋找貓咪~QQ 地點 桃園市桃園區 Taoyuan , Taoyuan

Cloudflare泄露用戶信息長達數月:系「編程錯誤」導致

Cloudflare是一家位於美國的網路安全服務商,為包括Uber(優步),Fitbit,1password等在內的眾多公司提供網站安全管理,性能優化等服務。近日,Google安全人員在研究中發現:某些情況下,Cloudflare的系統可能會將伺服器內存中的數據(包括cookie,API密鑰和用戶密碼等)泄露到網頁中——這可謂是數據泄漏的大事。由於會讓人回憶起當年OpenSSL的「心臟滴血」事件,也有評論將這次事件稱作「雲出血(cloudbleed)」。

這就意味著:當用戶訪問由Cloudflare提供支持的網站時,可能隨機獲取到他人網路會話(session)中的敏感信息——好比你在一家餐廳里剛剛就座,服務員不僅給你遞上了菜單,還贈送了其他某個倒霉客人的錢包。沒錯,這位服務員就受雇於Cloudflare。

無意發現

這一問題是由Google Project Zero安全團隊(該團隊似乎長時間專註於漏洞發掘,我們曾前不久報道過他們公布了一個影響Windows GDI庫的漏洞)的漏洞獵人(bughunter,也就是國內的白帽子)Tavis Ormandy首先發現的。當時他在搞一個業餘項目,無意間在Google搜索引擎的緩存頁面中發現了包含完整的https請求,cookie,API密鑰和密碼在內的大量數據。經過確認后他通知了Cloudflare,後者則迅速成立了團隊調查此事。

在一開始,Ormandy懷疑是Cloudflare一款叫做ScrapeShield的應用程序(該程序本是設計用來防禦爬蟲大量複製網站信息)引發了數據泄露(點擊查看Ormandy發布的公告),並在推特上表示他發現了來自各大交友網站的私密信息,知名聊天服務網站的信息和在線密碼管理器的數據等。

後來隨著Cloudflare調查的深入,他們發現事情並沒有那麼簡單——這種情況已經悄無聲息地持續幾個月了。

罪魁禍首

Cloudflare在上周四公布的一份報告中給出了調查結果:該事件是由一個編程錯誤引起,主要體現在Email Obfuscation、Server-Side Excludes和Automatic HTTPS Rewrites這三個功能上。

原來,在此之前Cloudflare曾為其邊緣伺服器開發一個新的HTML解析器。該解析器用Ragel(一種有限狀態機編譯器)編寫,後轉換成C語言源碼。這段代碼存在一個緩衝區溢出漏洞,可由網頁上不成對的HTML標籤觸發,本是作為指針檢查機制來防止內存覆蓋的。(如下)

/* generated code. p = pointer, pe = end of buffer */

if ( ++p == pe )

goto _test_eof;

某些情況下,p可能會大於pe,從而避開長度檢查,造成緩衝區數據溢出,最終引起了上文所述的信息泄露。Cloudflare工程主管John Graham-Cumming在調查報告中總結道:

「這個問題的根源在於,緩衝區末端檢查使用了相等運算符(==),導致指針可以跳過這一段。如果能使用>=而不是==,那麼至少可以發現跳過緩衝區尾部的事件。」

另據補充,要致使數據泄露,最後的緩衝區必須以格式錯誤的腳本或img標籤結尾,長度不能超過4KB(否則Nginx會崩潰),並運行上述函數。

為時已晚?

通常此類泄露的信息會隱藏在網頁源碼中,並不引人注意。這次Ormandy在Google緩存頁面中發現了這個問題,意味著很可能在此之前一段相當長的時間裡,已經有大量信息被分散泄露到各處,比如爬蟲程序,甚至不法分子的手裡。

這裡簡要回顧一下Cloudflare官方報告中給出的時間線:

去年9月22日,啟用Automatic HTTP Rewrites函數

今年1月30日,Server-SideExcludes移至新的解析器

今年2月13日,EmailObfuscation部分移至新解析器

今年2月18日,Google向Cloudflare通報了此情況

可以看出,早期的數據泄露事件可能在去年9月就開始了。官方認為,受到衝擊最大的時間段可能在今年2月13日開始的4天內,因為當時Automatic HTTP Rewrites還沒有開始廣泛使用,Server-Side Excludes也只針對惡意IP地址。

不過好在Cloudflare事發后的應對也很迅速。他們在接到通報的47分鐘內就禁用了Email Obfuscation。三個小時后,對Automatic HTTPS Rewrites採取了同樣的措施。不過對於Server-Side Excludes的終止卻稍顯棘手,Cloudflare表示他們已經專門發布了一個補丁針對此事。GitHub上已經發布了可能受此漏洞影響的網站名單,對於後續更大範圍的補救措施,相信Cloudflare正在落實中。目前尚未有確切的大規模數據以此種途徑被不法分子利用的報道,希望一切還不會為時太晚。



熱門推薦

本文由 yidianzixun 提供 原文連結

寵物協尋 相信 終究能找到回家的路
寫了7763篇文章,獲得2次喜歡
留言回覆
回覆
精彩推薦