木马通过修改手机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

相关文章
|
4月前
|
Shell Linux 开发工具
"开发者的救星:揭秘如何用adb神器征服Android设备,开启高效调试之旅!"
【8月更文挑战第20天】Android Debug Bridge (adb) 是 Android 开发者必备工具,用于实现计算机与 Android 设备间通讯,执行调试及命令操作。adb 提供了丰富的命令行接口,覆盖从基础设备管理到复杂系统操作的需求。本文详细介绍 adb 的安装配置流程,并列举实用命令示例,包括设备连接管理、应用安装调试、文件系统访问等基础功能,以及端口转发、日志查看等高级技巧。此外,还提供了常见问题的故障排除指南,帮助开发者快速解决问题。掌握 adb 将极大提升 Android 开发效率,助力项目顺利推进。
114 0
|
25天前
|
前端开发 数据处理 Android开发
Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍
本文深入探讨了Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍,以及具体操作步骤、常见问题解决、高级调试技巧、团队协作中的调试应用和未来发展趋势,旨在帮助开发者提高调试效率,提升应用质量。
44 8
|
2月前
|
存储 Android开发 网络架构
点心云-N1盒子、机顶盒、手机等设备-小白保姆式刷机教程
本文介绍了N1盒子的刷机教程,包括未刷机和已刷其他系统的N1。教程详细列出了所需工具和具体步骤,如下载工具包、制作安装盘、打开ADB模式、降级、刷入新系统等,确保用户能够顺利完成刷机操作。对于已刷第三方系统的N1,还提供了解决USB线不被识别、驱动问题及供电不足等常见问题的方法。
210 1
点心云-N1盒子、机顶盒、手机等设备-小白保姆式刷机教程
|
1月前
|
Web App开发 定位技术 iOS开发
Playwright 是一个强大的工具,用于在各种浏览器上测试应用,并模拟真实设备如手机和平板。通过配置 `playwright.devices`,可以轻松模拟不同设备的用户代理、屏幕尺寸、视口等特性。此外,Playwright 还支持模拟地理位置、区域设置、时区、权限(如通知)和配色方案,使测试更加全面和真实。例如,可以在配置文件中设置全局的区域设置和时区,然后在特定测试中进行覆盖。同时,还可以动态更改地理位置和媒体类型,以适应不同的测试需求。
Playwright 是一个强大的工具,用于在各种浏览器上测试应用,并模拟真实设备如手机和平板。通过配置 `playwright.devices`,可以轻松模拟不同设备的用户代理、屏幕尺寸、视口等特性。此外,Playwright 还支持模拟地理位置、区域设置、时区、权限(如通知)和配色方案,使测试更加全面和真实。例如,可以在配置文件中设置全局的区域设置和时区,然后在特定测试中进行覆盖。同时,还可以动态更改地理位置和媒体类型,以适应不同的测试需求。
54 1
|
4月前
|
编解码 Android开发
【Android Studio】使用UI工具绘制,ConstraintLayout 限制性布局,快速上手
本文介绍了Android Studio中使用ConstraintLayout布局的方法,通过创建布局文件、设置控件约束等步骤,快速上手UI设计,并提供了一个TV Launcher界面布局的绘制示例。
68 1
|
4月前
|
Android开发
基于Amlogic 安卓9.0, 驱动简说(四):Platform平台驱动,驱动与设备的分离
本文介绍了如何在基于Amlogic T972的Android 9.0系统上使用Platform平台驱动框架和设备树(DTS),实现设备与驱动的分离,并通过静态枚举在设备树中描述设备,自动触发驱动程序的加载和设备创建。
77 0
基于Amlogic 安卓9.0, 驱动简说(四):Platform平台驱动,驱动与设备的分离
|
4月前
|
Android开发 C语言
基于Amlogic 安卓9.0, 驱动简说(二):字符设备驱动,自动创建设备
这篇文章是关于如何在基于Amlogic T972的Android 9.0系统上,通过自动分配设备号和自动创建设备节点文件的方式,开发字符设备驱动程序的教程。
72 0
基于Amlogic 安卓9.0, 驱动简说(二):字符设备驱动,自动创建设备
|
4月前
|
自然语言处理 Shell Linux
基于Amlogic 安卓9.0, 驱动简说(一):字符设备驱动,手动创建设备
本文是关于在Amlogic安卓9.0平台上创建字符设备驱动的教程,详细介绍了驱动程序的编写、编译、部署和测试过程,并提供了完整的源码和应用层调用示例。
111 0
基于Amlogic 安卓9.0, 驱动简说(一):字符设备驱动,手动创建设备
|
4月前
|
传感器 Android开发 芯片
不写一行代码(三):实现安卓基于i2c bus的Slaver设备驱动
本文是系列文章的第三篇,展示了如何在Android系统中利用现有的i2c bus驱动,通过编写设备树节点和应用层的控制代码,实现对基于i2c bus的Slaver设备(如六轴陀螺仪模块QMI8658C)的控制,而无需编写设备驱动代码。
58 0
不写一行代码(三):实现安卓基于i2c bus的Slaver设备驱动
|
4月前
|
Android开发
不写一行代码(二):实现安卓基于PWM的LED设备驱动
本文介绍了在Android系统中不编写任何代码,通过设备树配置和内核支持的通用PWM LED驱动来实现基于PWM的LED设备驱动,并通过测试命令调整LED亮度级别。
59 0
不写一行代码(二):实现安卓基于PWM的LED设备驱动