用戶防不勝防: Android內進擊的in-app廣告

近日研究人員在 Google Play 的受歡迎應用程式內,發現可疑的廣告函數庫越來越多,利用這種 SDK 去賺錢對用戶構成威脅,而且比白名單廣告模組的開發員獲利更多,因為有更高的瀏覽量,以下將會展示從近年流行的應用程式內的可疑廣告模組例子。

一解鎖裝置便展示廣告
其中一個被研究的樣本是一款可以匿名發問的應用程式,在較早期的版本被編入的模組為 com.haskfm.h5mob,它會在用戶解鎖電話後顯示入侵性的廣告,明顯違反了 Google 的規則。這意味著模組可以無視應用程式是否正在執行,都可以顯示廣告,甚至整個螢幕只顯示廣告,完全破壞用戶的使用體驗。在研究人員把發現通知開發者後,後者已把 com.haskfm.h5mob 移除。

當螢幕解鎖便顯示廣告的編碼

為了取得廣告的供應,模組連接到 C&C 伺服器,而地址是加密儲存在應用程式編碼內,C&C 的回覆裡包含顯示參數和接收廣告的平台,其中以 appintset 參數最吸引到研究員,在安裝應用程式後它刻意延遲首次顯示廣告的時間,在樣本中被設定為 432 萬微秒 (即 12 小時),這個延遲令用戶更難察覺突然顯示廣告的源頭,而這種技術也經常被網絡罪犯用來迴避防護機制,例如應用程式商店內的沙盒,主要的參數則依照外來的廣告地址清單。

只有廣告沒有其他功能
既然是 in-app 的廣告,這就總有一個本身的應用程式,但並非每個都有其事前說好的功能,在其中一個樣本中,發現同樣由 C&C 伺服器 com.haskfm.h5mob 管理,也擁有相同展示廣告功能的模組,但是這個應用程式則不具備任何界面和正常功能,甚至不會顯示在裝置的應用程式選單之內,單純用作展示入侵性廣告,情況就像這樣

半個螢幕被廣告擋住
有些開發商知道問題發生後願意移除模組,但並非每人都一樣,例如一個名為 Cut – Cut 的相片背景編輯工具,就毫不介意當用戶解鎖後用廣告覆蓋半個螢幕,無論該應用程式是否執行當中,而 Fast Cleaner 也被發現使用相同的函數庫 com.vision.lib 去處理廣告的顯示。

總結:用戶防不勝防
最後需要注意一點,有時惡意的廣告程式也並非一定出自貪婪,也有機會是應用程式的開發人員並不精通廣告 SDK,並且缺乏測試的技術,然後就把相關函數庫收錄在內,說白一點就是他們不知道加入了甚麼在編碼內。對用戶而言,如果可疑的函數庫通過更新的方式進入應用程式內,實在是防不勝防,而且極難去從近期更新的應用程式中,分辨入侵性廣告是從何而來。

資料來源:Securelist