Android應(yīng)用程序暴露了個人隱私
Firebase是Google在2014年收購的移動平臺,可讓用戶快速安全地開發(fā)應(yīng)用程序。將其視為許多開發(fā)人員首選的應(yīng)用程序生產(chǎn)平臺。它使用位于云中的實時數(shù)據(jù)庫,可用于輕松存儲用戶之間的數(shù)據(jù)并使其同步。這使得跨平臺協(xié)作成為孩子們的游戲,將無服務(wù)器應(yīng)用程序的開發(fā)面向公眾,并且用戶的安全性可以得到保障。
如果是這樣,開發(fā)人員將首先安全地配置所有內(nèi)容。 Comparitech的最新研究表明,Google Firebase數(shù)據(jù)庫的常見錯誤配置正在向想要查找的任何人公開敏感信息,包括密碼,電話號碼和聊天消息。 這是您需要知道的。
由鮑勃·迪亞琴科(Bob Diachenko)領(lǐng)導的Comparitech安全研究小組分析了Google Play商店中515,735個Android應(yīng)用的樣本。 其中155,066個使用Firebase。 Diachenko確認從使用Firebase的示例中,大約有11,730個應(yīng)用程序公開暴露了Firebase數(shù)據(jù)庫。
進一步深入研究,9014包括必要的寫權(quán)限,以使?jié)撛诘墓粽吣軌蛐薷臄?shù)據(jù),包括添加或刪除數(shù)據(jù),以及僅查看或下載數(shù)據(jù)。 Comparitech的分析顯示有4282個應(yīng)用程序正在泄漏敏感信息。
根據(jù)該報告,暴露的數(shù)據(jù)包括超過700萬個電子郵件地址,以及幾乎相同數(shù)量的聊天消息。 然后是要考慮的440萬用戶名和100萬密碼,以及500萬電話號碼。
所有這些都足夠令人擔憂,因為這些數(shù)字很大,但是必須從某種角度看待它們。 據(jù)估計,到2020年3月,超過150萬個應(yīng)用程序在Android和iOS上使用Firebase平臺。即使從分析數(shù)據(jù)中推斷出,Comparitech所做的工作也已達到24,000個潛在泄漏敏感數(shù)據(jù)的Android應(yīng)用程序。 通過此類配置錯誤,這僅占使用Firebase的所有應(yīng)用程序的1.6%,占可從Google Play本身下載的所有應(yīng)用程序的0.94%。
通過首先在應(yīng)用程序資源中搜索表示Firebase使用情況的文本字符串,Comparitech研究人員能夠發(fā)現(xiàn)公開暴露數(shù)據(jù)庫的應(yīng)用程序。 從那里,通過Firebase REST API訪問具有已啟用.json的公共數(shù)據(jù)庫的數(shù)據(jù)庫URL附加請求,以存儲數(shù)據(jù)。 研究人員希望獲得訪問被拒絕的響應(yīng),因為這將表明存在非公開曝光,但是如報告所示,他們最終卻過于頻繁地返回了完整的數(shù)據(jù)庫內(nèi)容。 然后,研究人員尋找敏感信息,這些信息經(jīng)過人工檢查是否為假陽性。
研究人員說:“所有訪問的數(shù)據(jù)都被破壞了,確保研究完全符合白帽標準和程序?!? 為了揭示對數(shù)據(jù)庫的任何寫訪問權(quán)限,使用了一個PUT請求來創(chuàng)建一個新節(jié)點,然后將其刪除。
與所有可追溯到配置錯誤的泄漏數(shù)據(jù)庫問題一樣,緩解建議聽起來很簡單:第一次正確設(shè)置數(shù)據(jù)庫配置。不幸的是,事情很少像它們初看起來那樣簡單。
因此,可以肯定的是,在實施適當?shù)臄?shù)據(jù)庫規(guī)則并防止未經(jīng)授權(quán)的訪問訪問敏感數(shù)據(jù)的情況下,研究人員提供的緩解建議是正確的。 建議應(yīng)用程序開發(fā)人員遵循Google Firebase文檔中規(guī)定的“安全和規(guī)則”準則,這很容易,但事實并非如此。
一次又一次地證明了這一點,各種在線數(shù)據(jù)庫配置錯誤,導致數(shù)據(jù)報告被公開泄漏。 確實,在今年早些時候,據(jù)報道,驚人的82%的安全“漏洞”是由于一種或另一種錯誤配置錯誤引起的。
Comparitech研究人員于4月22日使Google意識到了該報告的發(fā)現(xiàn),并收到以下聲明作為回應(yīng):
“ Firebase提供了許多功能,可幫助我們的開發(fā)人員安全地配置其部署。 我們向開發(fā)人員提供有關(guān)其部署中可能存在的錯誤配置的通知,并提供糾正建議。 我們正在與受影響的開發(fā)人員聯(lián)系,以幫助他們解決這些問題?!?