不死鸟作为希腊神话中的一种怪物,拥有不断再生的能力,每当寿限将至时,它会在巢穴中自焚,并在三天后重新复活。就在近期,安天AVL移动安全团队和小米MIUI安全中心发现了病毒界的“不死鸟”,其顽固程度之深,用户很难通过常规的卸载手段清除该病毒。

这款病毒名为Fushicho,一旦运行,它首先会通过一系列手段攻击手机的“免疫系统”:联网下载root工具对用户手机进行提权处理,进一步根据文件中的sql语句将自身插入某知名杀毒软件白名单中,并通过“pm disable”命令禁用某知名杀毒软件,致使手机安全防护功能全线崩溃。

接下来Fushicho病毒会替换系统启动脚本文件,实现开机自启动并获得root权限。而为了使其自身成为手机中唯一具有root权限的应用,该病毒会删除手机中其他root程序、su文件。除此之外,由于病毒应用被锁在系统目录下,用户很难通过常规卸载手段清除该病毒。

至此,Fushicho病毒将紧紧扎根在手机中,像不死鸟一般难以消灭。同时该病毒将通过联网获取恶意扣费指令对手机进行长期的扣费并下载其他恶意扣费软件,使感染用户遭受巨大的财产损失。

接下来,我们将对这只病毒界的“不死鸟”进行详细的解剖分析。

Fushicho病毒运行流程图

详细分析

私自提权

Fushicho病毒运行时加载本地Pxivuurauu.so文件,解密资源文件中的ico.png文件来释放子包oko.jar。子包释放后被动态加载,并在本地解密。Fushicho病毒获取到提权工具下载地址后下载并解密,获取提权工具包cab.zip,解压并加载其中的data.jar文件,对用户手机提权。

获取提权工具下载地址:

解压后的文件如下所示:

各文件功能及作用如下表所示:

提权工具包结构:

将自身写入某知名杀毒软件白名单

Fushicho病毒运行时解密root工具包中的ql文件获取将自身插入某知名杀毒软件白名单的sql语句,通过qlexec文件打开数据库并执行sql语句,将自身插入某知名杀毒软件白名单中来逃避检测。

ql文件内容如下:

删除提权相关文件

Fushicho病毒在获得root权限后会删除手机中其他的root相关文件和apk程序,将下载提权工具包cab.zip中的su文件分别重定向到/system/xbin/.sysd,/system/bin/android.sys,/system/etc/android.sys,/system/etc/android.sys中。

删除其他root权限:

将su文件重定向到系统目录中:

禁用某知名杀毒软件

Fushicho病毒通过“pm disable”命令禁用某知名杀毒软件,将该软件停止使用,并隐藏图标和已安装应用列表中的展示,致使用户无法找到该应用也无法重新安装该应用。

为了验证该命令的效果,我们测试了一下:

Step1:安装某知名杀毒软件,可以在已安装应用程序中看到该应用:

Step2:使用pm disable命令:

Step3:在已安装应用中查找该应用,已经找不到该应用了,说明该应用已被成功禁用:

Step4:用命令行工具查看data/app下的应用列表,可以看出该应用是存在的:

Step5:如果尝试在手机中再次安装该应用,提示已安装:

替换系统脚本文件

Fushicho病毒运行时会替换系统的启动脚本文件install-recovery.sh、install-recovery-2.sh,新的脚本文件将在手机启动后立即给Fushicho病毒赋予root权限。

脚本运行时以守护进程的形式启动对应目录下的.sysd和android.sys文件

恶意扣费

Fushicho病毒的扣费模块通过监听用户解锁、网络变化以及手机开机的系统广播启动,付费模块启动后联网获取付费短信数据和要拦截的短信关键字。

并联网向hxxp:// www.mmchong[.]com上传用户设备信息,获取短信相关扣费短信数据。

扣费短信数据解密后如下,其中字段port、cmd对应的是要发送的号码和内容,字段hport、hcmd对应的是要拦截的号码和短信内容,Fushicho病毒通过以上字段进行恶意扣费而用户无法感知。此外Fushicho病毒还会拦截包含“银行”和“快递”关键字段的短信。在接收到包含msg字段的值的短信时还会自动回复短信或联网发送拦截的短信。

推送恶意应用

Fushicho病毒运行时解密root工具包中的data0文件,通过解析文件中的指令将root工具包中的恶意应用推送到系统目录下并启动。在推送时将这些恶意应用加锁,并修改创建时间为2008-01-01 00:00,伪装成系统应用让用户难以察觉。

推送的恶意应用:

总结

总体而言,Fushicho病毒一旦运行,将会通过攻击感染手机安装的杀毒软件来使整个手机的“免疫系统”形同虚设,并采取一列后续手段将其自身紧紧扎根于手机中,用户很难通过常规卸载手段来清除。此外,从上述攻击步骤可以看出,Fushicho病毒非常注重root权限,从自身提权,到删除其他root工具,再到替换系统启动脚本,使自身可以在系统启动的第一时间得到root权限。这一系列操作之后,Fushicho病毒成为系统第一个也是唯一一个有root权限的应用。 在保证“不死”的情况下,“不死鸟”(Fushicho)病毒将通过发送恶意扣费短信持续对用户的财产造成损害,危害极大。

安全建议

针对Fushicho系列病毒,集成AVL反病毒引擎的MIUI安全中心已经实现全面查杀。安天AVL移动安全团队和MIUI安全中心提醒您:

l  请不要轻易root手机,否则您的手机将遭受巨大的安全风险;

l  请勿在非官方网站或者不知名应用市场下载任何应用;

安天AVL移动安全团队专注于移动互联网安全技术研究及反病毒引擎研发,为合作伙伴提供强大的移动安全解决方案。AVL移动反病毒引擎致力于为企业和厂商伙伴提供针对性的移动终端威胁防护解决方案,如病毒检测、金融安全防护、上网安全防护等安全能力输出。目前除了为小米MIUI输送安全能力外,也与其他众多知名厂商达成战略合作,为猎豹、阿里云YunOS、OPPO、VIVO、步步高、努比亚、LBE、安卓清理大师、AMC等合作伙伴提供移动反恶意代码能力,为全球过亿终端用户保驾护航。

安天AVL联合小米MIUI首擒顽固病毒“不死鸟”的更多相关文章

  1. 病毒四度升级:安天AVL Team揭露一例跨期两年的电信诈骗进化史

    自2014年9月起,安天AVL移动安全团队持续检测到一类基于Android移动平台的间谍类病毒,病毒样本大多伪装成名为"最高人民检察院"的应用.经过反编译逆向分析以及长期的跟踪调查 ...

  2. 彻底理解Toast原理和解决小米MIUI系统上没法弹Toast的问题

    1.Toast的基本使用 Toast在Android中属于系统消息通知,用来提示用户完成了什么操作.或者给用户一个必要的提醒.Toast的官方定义是这样的: A toast provides simp ...

  3. 小米miui系统怎么关闭文件管理里的热门视频和表情?

    小米miui系统怎么关闭文件管理里的热门视频和表情? 打开"文件管理"后,切换到"手机"选项卡. 然后,点击屏幕右上角的一排竖点. . 在弹出的菜单中点击&qu ...

  4. 小米MIUI 360wifi掉线解决方案 落雨

    问: 360WIFI 小米WIFI 联网无网速的解决办法 方法1.退出电脑和手机上的360安全卫士(我抱着试试的态度退出了之后,我艹,速度立马有了!),估计是这些安全软件太强大,导致的. 方法2.我用 ...

  5. 小米MIUI禁止系统更新

    删除downloaded_rom的文件夹,随便找一个文件(文件,不是文件夹),重名为downloaded_rom(是把一个文件重命名),这样系统后台偷偷下载时,就不知道该存放更新包的文件,就无法偷偷更 ...

  6. WannaRen来袭:螣龙安科带你盘点那些年的勒索病毒

    2020年4月7日,360CERT监测发现网络上出现一款新型勒索病毒wannaRen,该勒索病毒会加密windows系统中几乎所有的文件,并且以.WannaRen作为后缀.360CERT该事件评定:危 ...

  7. Client病毒已感染超7万人 暗扣费并频弹广告

    恶意木马病毒横行,您的钱包还hold得住吗?猎豹移动安全实验室与安天AVL移动安全团队于2015年下半年,共同截获一款名为Client的木马病毒,并且对该病毒进行持续监测.通过进一步关注,我们发现该病 ...

  8. 安天移动安全应对“DressCode”威胁,发布企业移动威胁检查工具

    近日,一种名为"DressCode"的恶意代码引起了国内安全行业的关注,该恶意代码以企业员工的移动设备作为跳板对企业内网进行攻击,对企业安全造成严重威胁.安天移动安全公司威胁情报团 ...

  9. 安天透过北美DDoS事件解读IoT设备安全——Mirai的主要感染对象是linux物联网设备,包括:路由器、网络摄像头、DVR设备,入侵主要通过telnet端口进行流行密码档暴力破解,或默认密码登陆,下载DDoS功能的bot,运行控制物联网设备

    安天透过北美DDoS事件解读IoT设备安全 安天安全研究与应急处理中心(安天CERT)在北京时间10月22日下午启动高等级分析流程,针对美国东海岸DNS服务商Dyn遭遇DDoS攻击事件进行了跟进分析. ...

随机推荐

  1. DPM模型简单记录

    这个模型思想很直观(有误),但是写的源码太难懂了(看的是release-3的版本,最接近Object Detection with Discriminatively Trained Part Base ...

  2. Caffe学习

    将binaryproto转为npy import caffe % suppose caffe is already in the path of Python import numpy as np i ...

  3. HTTP 基础知识

    HTTP是一种协议.HTTP使用流程,一般情况下, 第一:由HTTP客户端发出请求,创建端口. 第二:HTTP服务器在端口监听客户端的请求. 第三:一旦收到请求,HTTP服务器向客户端返回状态和内容. ...

  4. DataTable DataRow DataColumn DataSet

    1.DataTable 数据表(内存) 2.DataRow DataTable 的行 3.DataColumn DataTable 的列 4.DataSet 内存中的缓存

  5. express源码剖析1

    在通读源码之前,先把一些比较难理解的代码吃透: 1.EventEmitter.prototype mixin(app, EventEmitter.prototype, false); app为一个函数 ...

  6. Java IO流学习总结

    Java流操作有关的类或接口: Java流类图结构: 流的概念和作用 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...

  7. ADB

    adb logcat 命令详解 log过滤 http://blog.csdn.net/liao277218962/article/details/50129009 如何使用 adb logcat 查看 ...

  8. angularjs-$http.post请求传递参数,后台Controller接受不到原因

    现象回显 js文件 app.controller('indexCtrl', function($scope, $state, $http) { $scope.login = function() { ...

  9. 关于Block的简单使用

    Block在整个iOS开发中无所不见,很重要,很重要,文本在这里block的简单使用介绍.我们可以简单地定义.使用block. 1. Block和C的指针函数很像,但比C的函数灵活多了.废话了.... ...

  10. Visifire Chart相关属性详解

    <vc:Chart x:Name="HourlyChart" Theme="Theme1" Grid.Row="1" xmlns:vc ...