吾爱破解 - LCG - LSG |安卓破解|病毒分析|www.52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 14087|回复: 17
收起左侧

[转载] 本论坛第一篇关于地狱火病毒(vold病毒)的文章(转自360)

[复制链接]
Unbelievable 发表于 2016-7-28 11:44
使用论坛附件上传样本压缩包时必须使用压缩密码保护,压缩密码:52pojie,否则会导致论坛被杀毒软件等误报,论坛有权随时删除相关附件和帖子!
病毒分析分区附件样本、网址谨慎下载点击,可能对计算机产生破坏,仅供安全人员在法律允许范围内研究,禁止非法用途!
禁止求非法渗透测试、非法网络攻击、获取隐私等违法内容,即使对方是非法内容,也应向警方求助!
本帖最后由 Unbelievable 于 2016-7-28 11:54 编辑

虽然是转载的,但是看在是论坛第一篇关于这种病毒的份上,弱弱问一句,可否加精?接下来是文章正文(有删减)“地狱火”手机病毒——源自安卓系统底层的威胁2016年6月21日
0x00    背景
近 日,多起用户手机中了一种难以清理的病毒,某些用户尝试自行清理掉病毒,发现删除病毒文件vold.apk后,会再次重现。通过分析,发现此病毒已经寄生到系统底层,定时恢复APK实现自我保护。通过分析,我们发现在手机病毒发展史上,首次利用了在Android系统中通过修改系统Boot Image、替换系统核心文件的方式实现自我保护的病毒,目前感染量已过百万,因此我们命名它为:“地狱火”手机病毒。此病毒寄生于系统boot分区、替换系统vold文件、回写APK病毒母包。后面,我们来分析下这个源自系统底层的威胁。

0x01     病毒传播途径与感染分布1.1      病毒传播途径
这个病毒主要靠色情诱惑类应用传播,也通过一些正规的应用捆绑传播,比如“超级锁屏”、“糗事爆料”等。病毒和正规APP捆绑并传播,导致用户也不清楚中毒来源。
图4:传播病毒的APP应用

1.2      病毒感染地区分布
图5:感染地区分布
    “地狱火”病毒感染量巨大,中毒手机超过150万部,由图可见感染量从大到小依次为:广东、河南、江苏、山东、四川、浙江、河北、湖南等。
0x02     病毒详细分析
首先,我们梳理出该病毒的主体功能和框架,如图:
图6:病毒框架
携带“地狱火”手机病毒母包的APP应用运行后会释放android.system.vold.v50.apk(v50为版本号:v36~v50,版本号还在持续递增),病毒母包安装后使用DES加密算法解密出android.system.vold.v50.rp.apk(下面简称为vold.rp.apk),vold.rp.apk调用startService启动MsgPushService,MsgPushService的onCreate方法创建TestNotifier、SetupManager、VersionClean、RootModule四个对象。
图7:MsgPushService功能
SetupManager是vold.rp.apk的核心模块,首先设置时间启动MsgPushService,然后创建需要用到的对象,这些类的功能在构造方法中执行,因此在创建对象的时候就已经调用。SetupManager中的功能模块有(主要的):
1、ROOT模块(RootManager)
2、推广模块(PushManager)
3、寄生到系统底层模块(SysVoldInstaller)
图8:SetupManager模块
2.1      ROOT模块
1、上传手机SDK版本获取云端ROOT方案,下载ZIP压缩包。HTTP请求参数不同,返回的ROOT方案也不同,分为android4.3之前版本ROOT方案、android4.3版本ROOT方案和android4.3之后版本ROOT方案。
2、ROOT压缩包内容为wsroot.sh(SH脚本)、fileWork(加密文件)、Matrix(ELF)。
图9:ROOT包
3、vold.rp.apk运行Matrix(ELF)进行ROOT。Matrix解密fileWork执行ROOT代码,其中包含开源的android-rooting-tools以及CVE-2015-3636代码;通过多种ROOT方案组合,能够适配大多数手机ROOT成功。
图10:ROOT方案之一
2.2      推广模块
“地狱火”手机病毒每隔3分钟获取云端json配置,根据云端配置安装APP应用。推广APP应用是病毒的主要目的,既可以推广正规应用赚取安装费用,也可以推广其他病毒安装到手机。静默推广的有:岛国直播、欧美直播、激情影院、欧美大片等等,这些应用程序打开后都会诱导扣费,有些用户经不住图片诱惑支付后,发现视频图片依旧无法观看,也只好忍气吞声上当。
推广网址:
http://p.bluenemo.com:7354/push
http://p. bluenemo.com:7354/p/
图11:病毒推广扣费APP
图12:诱导用户支付费用
2.3      寄生到系统底层模块流程2.3.1 替换系统vold (ELF文件)
vold.rp.apk的RootMissionExecutor模块创建一条线程,调用installVold函数,installVold函数获取云端配置下载oracle(可执行文件)和bluePill(加密文件),oracle带参数运行时,会解密bluePill替换系统vold(ELF)文件。
图13:带参数运行oracle

oracle运行后解密出work.sh并运行,完成替换系统vold,并且会在vold尾部写入更新网址。
图14:替换系统核心文件vold
如上图所示,“地狱火”将系统原始vold重命名成vold_original,然后在/system/bin/目录建立一个名为vold的链接,指向病毒文件/system/xbin/vold。系统启动时,会按照链接执行病毒文件,病毒自身功能完成后,又会去执行vold_original。病毒就像一个代{过}{滤}理,如果此病毒被直接删除的话会导致系统无法启动。因为安卓中的vold文件是Android核心系统文件,管理和控制外部存储设备,包括SD插拨、挂载、卸载、格式化等。病毒vold核心功能为执行shell代码,shell脚本代码加密存放在病毒vold文件靠近尾部的位置,病毒vold主要功能是回写vold.rp.apk与更新vold.rp.apk,保证apk文件被杀毒软件清理后依旧能死而复活。
2.3.2  修改Boot.img
Android系统以正常模式启动后会加载boot.img分区。Boot.img分区包含Linux内核和ramdisk。ramdisk是一个小型文件系统,包括了初始化系统所需要的全部核心文件,例如:初始化init进程以及init.rc(可以用于设置很多系统的参数)等文件。以下是一个典型的ramdisk中包含的文件列表:
./init.trout.rc   ./default.prop   ./proc   ./dev   ./init.rc    ./init
./sys   ./init.goldfish.rc   ./sbin   ./sbin/adbd   ./system   ./data
该病毒与“不死木马”(http://blogs.360.cn/360mobile/2014/01/18/oldboot-the-first-bootkit-on-android_cn/)都有修改boot.img、拷贝病毒核心文件到/sbin以及修改init.rc的行为;而该病毒在此这些的基础上还新增了修改sepolicy(seandroid策略文件)、dm_verify(每次开机检验分区是否被修改)等行为。
目的:修改boot分区,修改init.rc文件,将主体文件隐藏到boot分区,写入病毒启动脚本,绕过seandroid、dm_verify等Android系统安全防护。病毒操作如下:
1、配置本地环境
(1)安装busybox
(2)配置DNS服务器(便于busybox使用wget)
(3)配置恶意文件主体使用的URL参数
2、搜寻boot分区
3、找到boot分区之后,使用dd命令dump出boot分区
4、解boot分区
5、首先会判断该分区是否已经被patch,准备执行patch Boot.img
(1)创建备份
(2)patch sepolicy
SeAndroid是Android平台的一种安全机制,而Sepolicy则是SeAndroid的安全策略文件。“地狱火”手机病毒通过patch sepolicy来扩大自己的权限。
原始sepolicy的Allow规则有1175条,地狱火病毒patch之后增加了73条Allow规则。
接着使用sesearch对比一下allow规则的详细信息:
我们发现之前很多不允许的规则现在都被允许,导致给了init域几乎完全的控制权限。将会导致用户的手机莫大的危险。
(3)拷贝病毒主体文件heaithd、heaithd.sh到/sbin中
(4)修复init.environ.rc
(5)修复file_contexts
(6)执行patch操作
patch分为两步:
a:patch init.rc
b:patch dm_verify和patch forceencrypt
6、当patch操作成功之后,重新打包
7、写入分区
0x03     与其他病毒狼狈为奸
经取样统计发现,百脑虫病毒与“地狱火”病毒的关系十分密切,他们之间存在互相推广的关系,中百脑虫病毒的手机中,约86%存在“地狱火”病毒。“地狱火”病毒的root模块也与另一种传播量很大的病毒的root模块使用的加密算法与功能一样。
图15:“地狱火”病毒和百脑虫病毒的关系
0x04     “地狱火”病毒清理
删除此病毒必须将手机ROOT,给予360手机急救箱ROOT权限。目前,360手机急救箱支持此病毒的安全删除与修复。
手动删除病毒方案与前提条件:手机有Root权限、一台Windows主机、ADB工具包和Android Image Kitchen工具包。
步骤:
  • 删除APK文件
  • 恢复/system/bin/vold_original到/system/bin/vold
  • 删除/system/xbin/app_process
  • 找到boot分区表
  • 使用dd命令备份boot分区到/sdcard目录
  • 使用Android Image Kitchen解开img
  • 打开Android Image Kitchen\ramdisk\init.rc文件,找到以下内容并删除
  • 打开Android Image Kitchen\ramdisk\sbin目录,删除heaithd、sh文件
  • 使用Android Image Kitchen重新打包
  • 使用dd命令还原修改后的img到手机



点评

经得起好奇、诱惑就能减免类似得案例。根本之法。  发表于 2016-7-28 12:42

免费评分

参与人数 3热心值 +3 收起 理由
Bubble_泡沫 + 1 谢谢@Thanks!
我的爱是你 + 1 我很赞同!
C-FBI-QM + 1 请注明转载地址

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| Unbelievable 发表于 2016-7-28 11:46
自古沙发归楼主,大家觉得好的话就多多评分吧!!毕竟是论坛第二篇帖子,第一篇帖子也是我的!!!!
我来看看看 发表于 2016-7-28 11:46
前排 一楼位置

点评

咱俩又在一起了。  发表于 2016-7-28 12:56
 楼主| Unbelievable 发表于 2016-7-28 11:47
No.16 发表于 2016-7-28 11:55
- -  360搬的
changwei876 发表于 2016-7-28 11:58
谢谢转载
newer 发表于 2016-7-28 12:34
居然还能修改Boot.img。。。。。长见识了!
KaQqi 发表于 2016-7-28 12:55
没遇到这种病毒。还好还好
kylinpapa 发表于 2016-7-28 15:22
每日一血,不错不错,虽然转载,关键知识学到了。
雁穿云罗 发表于 2016-7-28 15:26 来自手机
额谢谢楼主分享
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则 警告:本版块禁止灌水或回复与主题无关内容,违者重罚!

快速回复 收藏帖子 返回列表 搜索

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-4-26 10:43

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表