Evernote 出現Android應用程式漏洞

趨勢科技之前討論過一個可能導致使用者資料被截取或用來發動攻擊的Android漏洞。我們發現相當普及的Evernote Android應用程式包含了此漏洞。趨勢科技披露了細節給Evernote,他們也採取了行動,釋出他們Android應用程式的更新版本。Evernote在Evernote for Android 5.8.5中增加額外的控制來保護使用者資料。使用版本低於5.8.5的Android使用者應該要更新到最新版本。

內容提供者(Content Provider)漏洞

被修補的漏洞跟儲存應用程式資料的Android元件有關。該元件有一屬性(android:exported)可以讓其他應用程式對受影響應用程式讀取或寫入特定的資料。

之前版本的Evernote定義了兩個權限來保護用來儲存幾乎所有使用者資料的內容提供者。然而,這兩個權限的保護層級被設為「正常」,意味著設備上的其他應用程式也可以被授予這兩個權限。

圖1、Evernote內容樣本

圖2、利用內容提供者漏洞所顯示的內容

網路犯罪分子可能會建立惡意應用程式用來截取儲存在Evernote應用程式的資料。對於使用Evernote儲存敏感資料(使用者帳號和密碼)的使用者來說,這可能會導致資料被竊或身份詐騙等後果。

外露、未加密的資料

除了上面所介紹的漏洞外,我們也發現另一漏洞可能會讓惡意應用程式看到儲存記事的受影響設備上的所有記事。

Evernote應用程式將所有使用者的記事儲存在外部儲存裝置的/sdcard/Android/data/con.evernote/files/資料夾內。不幸的是,儲存在該資料夾的檔案並沒有加密,而且可以被其他應用程式讀取。

圖3、記事樣本

圖4、利用SD卡漏洞來存取記事

受影響設備的Android作業系統版本也會影響應用程式所能存取的數量。在Android 4.3及更早版本中,應用程式甚至不需要特殊權限就可以存取該資料夾。在Android 4.4及更高版本中,需要READ_EXTERNAL_STORAGE權限。不過該權限對於一般應用程式來說很常見,所以惡意應用程式請求該權限不會引起懷疑。

惡意使用者可以寫一段簡單的程式碼用來讀/寫上述應用程式所儲存的檔案,然後注入具有READ_EXTERNAL_STORAGE權限的重新包裝應用程式。然後,攻擊者可以利用這重新包裝的應用程式來誘騙使用者給予所要的權限。

我們揭露此一資訊好讓可能同樣不正確使用外部儲存裝置的開發者可以修改他們的應用程式。開發者也要將他們的權限設定在簽章層級以保護其重要元件。我們也建議開發者對於應用程式所建立、處理和傳輸的任何內容都進行加密。可以的話,任何敏感資料都不該儲存在外部儲存裝置。

趨勢科技已經通知Evernote此一新漏洞。我們目前還沒有看到針對此漏洞的攻擊出現。

 

@原文出處:Evernote Patches Vulnerability in Android App作者:Weichao Sun(行動威脅分析師)

FB_banner0331-2