概述:广告是最大、最快、最广泛的信息传递媒介,广告能激发和诱导消费,广告的反复渲染、反复刺激,也会扩大产品的知名度。一个公司要想让一个产品达到最好的效益,必须花大量的成本投放大量的广告,这就促使了以投放广告来获取利益的产业链的形成。推广广告软件也应运而生,虽然一直以来各大安全厂商对软件的审核非常的严格,但是攻击者会使用各种手段躲避安全厂商的检测,从而借助移动软件平台大量向外推广。
我们在日常使用手机的过程中可能常常会受到智能手机上未知来源的广告的侵扰。这些未知来源的广告可能在用户未购买手机设备之前就已嵌入到系统应用或系统库中,用户根本无法删除。
广告软件通过以下两种方式嵌入到设备中将不可删除:
- 该恶意软件获得了设备的root用户访问权限,并在系统分区中安装了广告软件。
- 用于显示广告(或其加载程序)的代码已经预安装到用户设备的系统应用或库中。
其中有以下系统应用中嵌入了广告软件:
(一)HTMLViewer系统应用
HTMLViewer是系统自带的HTML浏览器,进入到手机系统APP目录,可看到HTMLViewer应用目录。
图1-1系统APP目录
该系统应用程序中包含Sivu木马。恶意软件包含两个模块:
- 第一个模块可以在设备上使用root权限执行shell命令。
- 第二个模块可在其他窗口顶部和通知中显示广告。
(1)该应用的asset目录下包含两个jar文件(实际为apk文件)分别对应着该恶意软件的两个功能模块。
图1-2 asset目录下两个恶意模块
(2)程序首先根据判断条件从服务器下载jar文件或从asset目录下获取jar文件并加载。
图1-3 获取jar文件
(3)加载F6.jar文件,该程序具有从服务器下载广告并在屏幕应用程序顶部显示广告的功能。
请求服务器并下载广告:
图1-4 下载广告
检测是否可以在屏幕应用程序顶部显示广告:
图1-5 检测是否可在屏幕应用程序顶部显示广告
图1-6 显示广告
(4)加载g10.jar文件,该程序能够对用户设备进行远程控制:
静态控制用户设备,它的功能包括安装,卸载和运行应用程序。根据入侵者的目标,可用于秘密安装合法或恶意应用程序。
图1-7下载,安装和运行应用
根据设备是否root情况下,获取超级用户权限执行普通cmd命令或更高级的cmd命令。这使应用程序能够通过远程执行命令控制用户设备。
图1-8 执行cmd命令
执行cmd命令静默安装、卸载应用。
图1-9 静默安装、卸载应用
(二)系统服务应用程序
在系统服务应用中我们发现应用程序可以下载并静默安装应用程序,以及在通知中显示广告。
(1)屏幕关闭后静默安装应用:
图2-1 静默安装应用
在获取到root权限的情况下可将apk文件复制到系统目录,并尝试安装。这是用户无法卸载安装在系统目录中的应用。
图2-2 在获取root权限情况下复制apk文件到系统目录
静默从服务器下载广告:
图2-3 静默从服务器下载广告
加载显示广告:
图2-4 加载显示广告
(三)位于系统目录本机库中的应用程序
(1)Necro.d是位于系统目录中的本机库中的木马程序,它的启动机制内置在另一个系统库libandroid_servers.so中(系统服务组件)。
图2-5 启动木马
(2)在C&C的命令下,Necro.d可以下载、安装、卸载和运行应用程序。此外,开发人员还为执行任意shell命令留出后门。
图2-6 执行收到的命令
(3)最重要的是,Necro.d可以下载Kingroot超级用户权限实例程序。
图2-7 下载Kingroot超级用户权限实例程序
除了以上的系统应用和库存在广告软件外。壁纸应用程序、主题类应用程序、Launcher系统应用程序(负责桌面的应用程序)、处理系统图形界面的应用程序、设置应用程序等都或多或少的存在广告软件。可用于秘密安装恶意应用程序、以及在通知中显示广告或定期在浏览器中显示广告并打开广告页面。
(四)制造商自己预先安装的广告软件模块
一些智能手机包含制造商自己预先安装的广告软件模块。供应商将其描述为其业务模型的一部分,以降低用户购买设备成本。
(1)魅族应用商店:
在魅族设备预安装的AppStore应用程序中发现了隐藏的广告软件,可加载广告并在不可见的窗口中显示广告,用户可能无法发现广告,但这将会导致用户设备电池电量的损耗。
图3-1 加载广告
该应用程序还可以下载并执行第三方JavaScript代码:
图3-2 下载执行第三方JavaScript代码
不仅如此它还可以通过监听短信数据库变化,获取短信内容(如短信验证码)并将其内容设置到加载的页面的文本框中。这种方法通常用于在用户不知情的情况下,私自为用户
注册订阅付费服务。
图3-3 获取短信并在网页中设置
(2)魅族音乐应用
在该应用的asset文件目录下发现了一个广告处理插件。
图3-4 asset目录下广告插件
图3-5 广告插件目录
且在一个加密发件中发现该应用下载GinkgoSDK,该SDK是一个广告SDK,可能会在用户不知情的情况下下载广告。
图3-6 下载GinkgoSDK
总结:
移动设备供应商、软件开发者在预安装的软件或系统软件中加入广告软件模块目的是为了实现利润最大化。如果广告网络商愿意为未知来源的浏览量、点击量和安装付费,那么将广告模块嵌入到设备中以增加每台设备的销售利润是有意义的。但如果用户购买带有这种预装广告的设备,则通常不可能在不损害系统风险的情况下将其删除,这将给用户使用设备带来不少困扰。
MD5
42c97a5da141b9cfd7696583875bcef5
0065d7177dfd65cebb1e2e788dce0082
fc0824678f582b0bdf65856e90cf0a01
520b50eee2f9dc522a87398f3bd5be94
cf808957da17f6a0b5d266b0e301bf63
04705df0913ccc0a12abddbcb757bac4
5d05e62fb18c6e1128522fe3371d2c91
5a2e5a1f768e4f33bd007f9acd2a9d0d
6c0d83e9e0eeed44ab1a1e5affb68b85
28119119d19fc3d986df63517dee465e
c81d66f5206193ce76b7f4f0b813f705
00c62413845fba1d9ddfd0e8d99f167b
d7b13e3f54ff5b8ff3e2c78e67e665eb
04fe069d7d638d55c796d7ec7ed794a6
参考链接:https://securelist.com/pig-in-a-poke-smartphone-adware/97607/