独家|神秘SDK暗刷百度广告 植入数千款APP
4月22日,雷鋒網(公眾號:雷鋒網)從騰訊安全了解到,騰訊安全反詐騙實驗室追蹤到暴風影音、天天看、塔讀文學等眾多應用中集成的某SDK存在下載惡意子包,通過webview配合js腳本在用戶無感知的情況下刷百度廣告的惡意操作。
該惡意SDK通過眾多應用開發者所開發的正規應用,途經各中應用分發渠道觸達千萬級用戶;其背后的黑產則通過惡意SDK留下的后門控制千萬用戶,動態下發刷量代碼,大量刷廣告曝光量和點擊量,賺取大量廣告費用,給廣告主造成了巨額廣告費損失。
根據安全人員詳細分析,此惡意SDK主要存在以下特點:
1、該SDK被1000+千應用開發者使用,通過應用開發者的分發渠道抵達用戶。主要涉及的應用包括掌通家園、暴風影音、天天看、塔讀文學等,潛在可能影響上千萬用戶;
2、刷量子包通過多次下載并加載,并從服務器獲取刷量任務,使用webview加載js腳本實現在用戶無感知的情況下自動化的進行刷量任務。
此類流量黑產給傳統的廣告反作弊帶來了極大挑戰,傳統通過IP、曝光頻率、點擊率等表象數據形成的反作弊策略難以識別這種控制大量真實設備做’肉雞’的刷量作弊,使得大量廣告費用流入黑產手中,卻無法給廣告主帶來應有的廣告效果。
SDK作惡流程和影響范圍
此惡意SDK集成在應用中的那部分代碼沒有提供實際功能,其在被調用后會定時上報設備相關信息,獲取動態子包的下載鏈接,下載子包并加載調用。然后由子包執行相應的惡意行為。
惡意SDK作惡流程示意圖:
受惡意SDK影響的主要應用列表:
惡意SDK作惡行為詳細分析
此惡意SDK被眾多的中小應用開發者集成,我們以應用塔讀文學為例,對其惡意行為進行詳細分析。
惡意SDK代碼結構
????
此sdk代碼較少,沒有什么實際的功能。其在被加載調用后,會設置定時任務,每隔3600秒(1小時)啟動GatherService,上報設備相關信息,獲取動態子包__gather_impl.jar的下載鏈接
GatherService鏈接服務器,獲取__gather_impl.jar的下載鏈接?
請求鏈接:http://gather.andr****.com:5080/gupdate/v1
請求數據:包括uid、應用包名、設備id、應用版本、手機廠商、型號、系統版本、imei、sdk版本等內容
返回內容:包括子包的版本、下載url、文件md5
動態加載下載的__gather_impl.jar?
子包__gather_impl.jar代碼結構,此子包的主要功能有:1、上傳用戶設備信息,2、下載并動態加載子包stat-impl.jar
?
1)、鏈接服務器,上傳用戶設備信息?
服務器鏈接:http://userdata.andr****.com/userdata/userdata.php?(此url在分析時已失效,無法鏈接)
上報內容:包括位置信息(經緯度),用戶安裝列表(軟件名、包名),設備信息(廠商、型號、fingerprint,是否root),deviceid、手機號、運營商、imei、mac等。?
2)、再次請求服務器,獲取stat-impl.jar的下載鏈接
請求鏈接:http://iupd.andr****.com:6880/wupdate/v1
請求數據:包括uid、imei、sdk版本、手機廠商、型號、系統版本、應用包名、設備id、設備指令集等內容?
返回內容:包括子包的版本、下載url、文件md5
?子包下載完成后,調用native方法動態加載此子包
stat-impl.jar的代碼結構:
?
stat-impl.jar子包被加載后,線程com.drudge.rmt.g會被啟動,其作用主要是用來聯網獲取刷量任務,并調度任務的執行。
?
主要的刷量任務包括:1、刷百度搜索的關鍵字,2、使用js腳本實現自動點擊、滑動來刷百度廣告和億量廣告的點擊,3、使用webview刷網頁訪問。
1、刷百度關鍵字搜索
此任務會根據獲取json字符串,進行相應的操作,包括設置BAIDUID、更新配置、添加任務、設置剪切板和使用關鍵字刷百度搜索
?
設置關鍵字,使用webview加載對應的url
捕獲到的刷百度關鍵字的webview加載請求:?
?
鏈接服務器http://tw.andr****.com:6080/wtask/v1獲取相關任務,并將任務內容存入[package]/cache/volley目錄下?
2、使用js腳本刷百度廣告
使用webview加載http://mobads.baidu.com/ads/index.htm,并在加載完成后執行js腳本實現自動滑動、點擊、保存等操作來自動刷廣告
相關的js腳本
1)、js函數定義滑動、點擊、保存等操作?
Java層解析并實現js層傳遞過來的操作命令
?
2)、js函數判斷并獲取頁面元素?
...
?
3)、js函數計算頁面元素相對位置,并進行滑動、點擊操作?
...
捕獲到的刷百度廣告的webview加載請求:
3、使用webview刷網頁訪問
此任務向服務器請求需要訪問的url鏈接,在獲取到相應的網頁url后,使用webview加載進行訪問。
請求需要訪問的url鏈接
?
請求鏈接
http://us.yiqimeng.men:8080/geturls?k=beike-xinshiye&c=5
返回內容
["http://m.xinshiye.cc/cars/17/10/21/707989.html?content_id=707989u0026key=x2HAJuZaaa9YWpVa8EXTqOmHHUxhSnj75xhhAS7f6tveQsphsCm3jc9xrhV4RZbRzgm%2FQqzCVcw2dvukMqw25Q%3D%3Du0026_t=1511190410",
"http://m.xinshiye.cc/cars/17/10/11/234818.html?content_id=234818u0026key=NzLZyHQXsCdpS6bkAWab2LSzd2XApbGOJYUuN%2Bm4PFsoWk1l%2FnZSD8M1yp1cuhz%2FdL0uoNG93TVt8ai6zEU%2BQw%3D%3Du0026_t=1511190560",
"http://m.xinshiye.cc/cars/17/11/26/1769446.html?content_id=1769446u0026key=8KLxL1fm2gwNDxqT6nsSAbQ07kcEZRHBrekhzNSJcNaAg1nZmbW49pQ3EaEYJfMUeMlwSX4KzdliXJ3O37fs9g%3D%3Du0026_t=1513046929",
"http://m.xinshiye.cc/cars/17/10/31/1444661.html?content_id=1444661u0026key=mODVhDy0zyzBGH1G6sTwDYXqiy3D7pDfymsirda6s5%2BW8tarfIDPjuhT3mkqeMMDKzKr%2BFVC2Py2gzsNkMniHw%3D%3Du0026_t=1509589907",
"http://m.xinshiye.cc/cars/17/12/09/1921549.html?content_id=1921549u0026key=0XFxkCX0Bn4k%2Fw5%2FqvlSIOCREqEWoJ5jimqn%2BZAeJIwksQzydyT0AZFAVZJAritm3hpGza4TFNlONZDtoY%2BfTA%3D%3Du0026_t=1513045278"]
使用webview訪問獲取url
?
捕獲到的刷求醫不如健身網的webview加載請求:?
相關URL整理
安全建議和防范手段
從近期Android端惡意應用的作惡手法來看,惡意開發者更多地從直接開發App應用轉向開發SDK,向Android應用供應鏈的上游轉移。通過提供惡意的SDK給應用開發者,惡意開發者可以復用這些應用的分發渠道,十分有效的擴大影響用戶的范圍。而在惡意SDK的類別方面,黑產從業者主要把精力放在用戶無感知的廣告刷量和網站刷量等方向,通過使用代碼分離和動態代碼加載技術,可以完全從云端下發實際執行的代碼,控制用戶設備作為“肉雞”進行廣告、網站刷量等黑產行為,具有很強的隱蔽性。
這類流量型黑產逐漸增多,不僅對手機用戶造成了危害,同時也給移動端廣告反作弊帶來了很大的挑戰,傳統基于IP、曝光頻率、點擊率等表象數據形成的反作弊策略難以識別這種控制大量真實設備做’肉雞’的刷量作弊,難以保障應用開發者和廣告主的正當權益。
針對終端用戶,有如下安全建議:
1、盡可能使用正版和官方應用市場提供的APP應用;
2、移動設備即使進行安全更新;
3、安裝手機管家等安全軟件,實時進行防護。
本研究報告由騰訊安全研究團隊輸出,授權雷鋒網編輯。
雷鋒網
總結
以上是生活随笔為你收集整理的独家|神秘SDK暗刷百度广告 植入数千款APP的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java爬虫抓取极客时间专栏页面
- 下一篇: VC6.0中使用Activex控件小结