该恶意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、安装手机管家等安全软件,实时进行防护。