木马通过修改手机ROOT工具攻击安卓设备

简介:

日前,Palo Alto Networks公司安全研究人员Wenjun Hu, Claud Xiao 和 Zhi Xu发现了一款新型木马Rootnik,通过使用商业root工具获取手机root访问权限,进而获取安卓设备的敏感信息,并影响范围甚广。

木马通过修改手机ROOT工具攻击安卓设备

什么是Rootnik

Rootnik使用一款定制的root工具Root Assistant软件获取设备的访问权限,并通过逆向工程和重新打包,获取了至少5个可利用漏洞来支持其恶意行为,运行Android 4.3及之前版本的设备均会受到影响。Root Assistant软件由一家中国公司开发,主要用于帮助用户获取自己设备的root权限,Rootnik正是利用它的这项功能,来攻击安卓设备。目前已经影响了美国、马来西亚、泰国、黎巴嫩和台湾的用户。

Rootnik可以通过嵌入以下合法应用程序的副本中进行传播:

WiFi Analyzer
Open Camera
Infinite Loop
HD Camera
Windows Solitaire
ZUI Locker
Free Internet Austria

目前为止,已经发现超过600个Rootnik样本,执行的恶意操作如下:

利用CVE-2012-4221, CVE-2013-2596, CVE-2013-2597, CVE-2013-6282等安卓漏洞;

在设备的系统分区安装多个APK文件,以维持root访问;

在用户不知情的情况下安装和卸载系统和非系统应用;

使用applight[.]mobi、jaxfire[.]mobi、superflashlight[.]mobi和shenmeapp[.]info域名连接远程服务器,并下载本地可执行文件;

在当前进程中插入推广广告;

窃取WiFi信息,包括密码和SSID或BSSID名称;

获取用户信息,包括位置、MAC地址和设备ID等。

原理

Rootnik通过重新封装和向合法安卓程序中注入恶意代码进行传播。当该木马安装在安卓设备上后,就会启动一个新线程来获取root权限,同时,它会开始一个‘app promotion’进程来在其他应用中显示广告推广。

为了获取root权限,Rootnik会从远程服务器下载加密的有效载荷,然后会尝试利用一些安卓漏洞,成功获取root权限后,它会向系统分区写入四个APK文件,并重启设备。

Rootnik工作流程图

图一 Rootnik工作流程图

设备重启后,APK文件会伪装成系统应用,通过分析,发现这些文件均拥有静态文件名:

AndroidSettings.apk

BluetoothProviders.apk

WifiProviders.apk

VirusSecurityHunter.apk

AndroidSettings.apk的主要功能是广告推广,BluetoothProviders.apk和WifiProviders.apk实际执行几乎相同的任务,安装或卸载应用程序,从远程服务器下载并执行新代码。VirusSecurityHunter.apk则是私人数据收集组件,窃取用户WiFi信息、位置信息及其他敏感信息。

保护和防御

由于Rootnik影响Android OS 4.4及之前版本,所以安卓用户应该确保自己的设备及时升级,并且要从安卓官方应用商店下载应用,不要下载和安卓未知来源的软件,以防Rootnik及同类型木马控制设备,窃取用户信息。


作者:vul_wish

来源:51CTO

相关文章
|
11天前
|
Shell Linux 开发工具
"开发者的救星:揭秘如何用adb神器征服Android设备,开启高效调试之旅!"
【8月更文挑战第20天】Android Debug Bridge (adb) 是 Android 开发者必备工具,用于实现计算机与 Android 设备间通讯,执行调试及命令操作。adb 提供了丰富的命令行接口,覆盖从基础设备管理到复杂系统操作的需求。本文详细介绍 adb 的安装配置流程,并列举实用命令示例,包括设备连接管理、应用安装调试、文件系统访问等基础功能,以及端口转发、日志查看等高级技巧。此外,还提供了常见问题的故障排除指南,帮助开发者快速解决问题。掌握 adb 将极大提升 Android 开发效率,助力项目顺利推进。
33 0
|
2天前
|
编解码 Android开发
【Android Studio】使用UI工具绘制,ConstraintLayout 限制性布局,快速上手
本文介绍了Android Studio中使用ConstraintLayout布局的方法,通过创建布局文件、设置控件约束等步骤,快速上手UI设计,并提供了一个TV Launcher界面布局的绘制示例。
10 1
|
3天前
|
Android开发
基于Amlogic 安卓9.0, 驱动简说(四):Platform平台驱动,驱动与设备的分离
本文介绍了如何在基于Amlogic T972的Android 9.0系统上使用Platform平台驱动框架和设备树(DTS),实现设备与驱动的分离,并通过静态枚举在设备树中描述设备,自动触发驱动程序的加载和设备创建。
4 0
基于Amlogic 安卓9.0, 驱动简说(四):Platform平台驱动,驱动与设备的分离
|
3天前
|
Android开发 C语言
基于Amlogic 安卓9.0, 驱动简说(二):字符设备驱动,自动创建设备
这篇文章是关于如何在基于Amlogic T972的Android 9.0系统上,通过自动分配设备号和自动创建设备节点文件的方式,开发字符设备驱动程序的教程。
5 0
基于Amlogic 安卓9.0, 驱动简说(二):字符设备驱动,自动创建设备
|
3天前
|
自然语言处理 Shell Linux
基于Amlogic 安卓9.0, 驱动简说(一):字符设备驱动,手动创建设备
本文是关于在Amlogic安卓9.0平台上创建字符设备驱动的教程,详细介绍了驱动程序的编写、编译、部署和测试过程,并提供了完整的源码和应用层调用示例。
14 0
基于Amlogic 安卓9.0, 驱动简说(一):字符设备驱动,手动创建设备
|
3天前
|
传感器 Android开发 芯片
不写一行代码(三):实现安卓基于i2c bus的Slaver设备驱动
本文是系列文章的第三篇,展示了如何在Android系统中利用现有的i2c bus驱动,通过编写设备树节点和应用层的控制代码,实现对基于i2c bus的Slaver设备(如六轴陀螺仪模块QMI8658C)的控制,而无需编写设备驱动代码。
12 0
不写一行代码(三):实现安卓基于i2c bus的Slaver设备驱动
|
3天前
|
Android开发
不写一行代码(二):实现安卓基于PWM的LED设备驱动
本文介绍了在Android系统中不编写任何代码,通过设备树配置和内核支持的通用PWM LED驱动来实现基于PWM的LED设备驱动,并通过测试命令调整LED亮度级别。
8 0
不写一行代码(二):实现安卓基于PWM的LED设备驱动
|
3天前
|
Linux Android开发 C语言
不写一行代码(一):实现安卓基于GPIO的LED设备驱动
本文通过实践操作,展示了在Android系统中不编写任何代码,利用设备树(DTS)配置和内核支持的通用GPIO LED驱动来控制LED设备,并进一步通过C语言编写NDK测试APP来实现LED的闪烁效果。
7 0
不写一行代码(一):实现安卓基于GPIO的LED设备驱动
|
7天前
|
Android开发
【Azure 环境】记录使用Notification Hub,安卓手机收不到Push通知时的错误,Error_Code 30602 or 30608
【Azure 环境】记录使用Notification Hub,安卓手机收不到Push通知时的错误,Error_Code 30602 or 30608
|
16天前
|
存储 Ubuntu API
如何使用Python创建服务器向Android设备发送GCM推送通知
如何使用Python创建服务器向Android设备发送GCM推送通知
9 0