当攻击者熟读兵法,Camouflage病毒实战演示暗度陈仓之计
“明修栈道,暗度陈仓”的典故许多人都听说过,该典故出自楚汉争霸时期,刘邦意图进入关中,需要攻下关中咽喉之地——陈仓。韩信献出一计:表面上浩浩荡荡地修复通往陈仓的栈道以迷惑陈仓守将,暗地里派兵从小道偷袭陈仓。最终刘邦采用此计一举夺取关中之地,为后续争霸天下铺路。
通过表面的行动迷惑敌人,隐藏自己的攻击路线,暗地里实施真正的攻击,这一直是战争中的常用手法。如今这一手法却被恶意开发者学了去,在病毒中使用该手法迷惑感染用户,攻击用户手机于无形之中。
近期,安天AVL移动安全和猎豹移动安全实验室捕获一种病毒程序” Camouflage”,该病毒正是利用暗度陈仓之计攻击用户手机:根据远程控制指令弹出锁屏界面,强制锁定用户手机屏幕,锁屏界面伪装成内存清理界面以迷惑用户;实际在锁屏期间,该病毒会私自拨打扣费电话、发送扣费短信并删除通话、短信记录,在用户毫不知情的情况下使其承受资费损失。
除此之外,该病毒还会联网下载恶意子包,利用子包联网获取多种root工具对用户手机提权,一旦提权成功立即删除并替换系统root工具,使自身成为手机中唯一具备root权限的应用。与此同时,该病毒通过联网获取相关推送数据,向用户手机推送广告,私自下载同类恶意应用并安装运行,严重影响用户手机使用体验。为防止自身被卸载,该病毒会监控手机中正在运行的应用包名,如果与指定杀毒软件的包名重合,则立即卸载该应用。
恶意程序运行流程图
病毒传播途径和感染数据
传播途径
通过分析大量Camouflage病毒家族样本,我们发现该类病毒主要通过重打包成游戏类、休闲类应用进行传播,部分应用名称如下图所示。
用户感染数据
该病毒在2016年10.1~12.1期间至今累计感染518,311次,其日均感染事件数如下图所示:
统计该病毒的感染区域信息,我们发现感染情况最严重的是广东省,其次是四川省、北京市:
详细分析
推送广告和其他同类恶意应用
该病毒运行时在本地解密url和网址后缀并拼接,以获取广告和其他恶意应用推送数据的下载地址。
网址后缀及其对应功能如下表所示:
广告数据:
推送的应用数据:
该病毒会不断获取推送信息和下载应用,并将这些文件保存在SDK下指定目录下。
在获取推送信息后,该病毒会定时以广告弹窗、通知栏提示、安装快捷方式和提示用户安装的方式进行广告推送。
推送的应用被安装后会通过am命令启动:
联网下载恶意子包
该病毒在推送广告和恶意应用的同时,本地解密URL后联网获取子包相关的数据和下载地址。
联网获取的恶意数据:
解密后数据如下:
该病毒私自下载恶意子包文件并将其保存到SD卡/.w/目录下(手机中文件夹名前带“.”的为隐藏文件夹,可以使用shell命令“ls -a”查看),文件名称为119.tmp,解密后即得到子包文件,最后利用反射调用子包的MS服务运行。、
私自root提权
恶意子包运行时会联网获取多种root方案和root工具的下载地址并下载,私自对用户手机进行提权。攻击者通过尝试多种root方案和工具最终达到root用户手机的恶意目的。
联网获取的恶意数据:
解密后的数据为:
下载的文件说明:
Testcomn.zip文件解压后里面包含多个文件,文件名与功能如下:
替换系统文件
恶意子包在成功提权后,通过postsh脚本命令删除系统原本的权限管理文件,并将自己的权限管理文件以及启动脚本推送到指定目录下,导致用户无法获取root权限。
删除系统原本的权限管理文件:
复制手机自身的权限管理文件到系统目录中:
在启动脚本中以守护进程的形式启动指定目录下的提权文件:
在获取Root权限后,该病毒还会将子包推送到系统目录下,导致用户即使成功卸载该病毒主程序,也会继续受到该病毒恶意行为的影响。
私自扣费
恶意子包在运行时,该病毒会联网获取扣费指令信息并下载锁屏图片,强制置顶锁屏动图对用户手机进行锁屏,在锁屏时后台私自执行拨打扣费电话、发送扣费短信等恶意行为。在发送短信和拨打电话后,该病毒会将相关短信、通话记录删除,使用户完全无法感知资费消耗。
联网获取的扣费指令信息:
对扣费指令信息进行解密后,解密信息如下:
该病毒伪装成清理内存的界面,对用户手机进行锁屏:
对用户手机锁屏后,该病毒会私自在后台发送扣费短信:
监听用户接收的回执短信并删除相关的短信记录:
用户手机被锁屏后私自拨打扣费的sp号码:
监听通话状态,解锁屏幕时结束通话并删除通话记录:
卸载指定程序和杀毒软件
恶意子包在运行时会根据指定包名列表--UPKEY中的包名与正在运行的程序对比,若包名相同则将其禁用,后续通过命令直接卸载该应用。包名列表中包含了与该病毒相似的恶意应用,联想到该病毒下载并安装其他恶意应用的行为,我们合理推测这部分恶意应用就是该病毒下载的应用,在完成推广行为或恶意行为之后进行卸载。此外我们在该病毒的代码中也发现了许多知名杀软的包名,该病毒一旦检测到这些杀毒软件正在运行,会立即禁用并卸载,以逃避杀毒软件的查杀。
UPKEY中的包名列表:
病毒代码中的包名列表:
下载相关文件和数据
在执行恶意行为的过程中,该恶意程序会下载大量文件和数据,以达到执行恶意行为的目的。
总结
Camouflage病毒通过重打包游戏类、休闲类应用进行传播,从感染情况来看,这种伪装手段带来了惊人的传播量。通过分析发现,该病毒主程序本身代码恶意性不强,但是在进入感染手机后通过解密、拼接URL的形式下载恶意子包、推广数据以执行其主要恶意攻击行为,行为方式非常隐蔽。另外,该病毒以监控运行程序的方式对手机中的杀毒软件进行卸载,以此逃脱杀毒软件的查杀。
为成功root手机,该病毒会下载多种root方案和工具对手机进行提权,并替换系统的提权文件,使得自身成为手机中唯一具有root权限的应用,在一定程度上避免自身被卸载,同时为后续的恶意扣费的行为做好铺垫。
该病毒在执行私自恶意扣费行为时,通过置顶一个内存清理的页面来欺骗用户,并在扣费完成之后,删除对应的短信、电话记录,使用户在毫无感知的情况下蒙受较大的资费损耗。
安全建议
针对Camouflage系列病毒,AVL移动反病毒引擎合作方产品和猎豹专杀工具已经实现全面查杀。安天AVL移动安全和猎豹移动安全实验室提醒您:
- 请保持良好的上网习惯,不要在非官方网站或者不知名应用市场下载任何应用。
- 当发现手机中突然出现不知来源广告或页面时,请立即下载安全软件进行查杀。
- 建议使用手机安全软件,并保持定期扫描的良好习惯。
安天移动安全成立于2010年,是安天实验室旗下专注于移动互联网安全技术和安全产品研发的公司。安天移动安全公司核心产品体系为AVL Inside移动反病毒引擎和AVL Insight移动威胁情报平台。
AVL Inside曾以年度最高平均检出率荣获国际权威测评机构AV-TEST颁发的“移动设备最佳防护”奖项,这是亚洲安全厂商首次获此殊荣。AVL Insight是国内首个移动威胁情报大数据平台,主要用于呈现移动威胁的高价值情报信息,通过对移动威胁的全面感知能力和快速分析响应能力,提供对抗移动威胁的预警和处置策略。
目前安天移动安全公司已与OPPO、VIVO、小米MIUI、阿里云YunOS、金立、步步高、努比亚、乐视、猎豹、LBE安全大师、安卓清理大师、AMC等国内外50多家知名厂商建立合作,为全球6亿终端用户保驾护航。
转载请注明来源:http://blog.avlsec.com/?p=4179
当攻击者熟读兵法,Camouflage病毒实战演示暗度陈仓之计的更多相关文章
- 特别篇:Hyper-v群集模拟实战演示
介绍 由于前面几张的都是直接整理了下 九叔的hyper-v电子书发上来的,个人觉得他写的不是最详细,因此今天我按照自己的实际情况来写个模拟的实战演示.所有的东西都通过VMware WorkStatio ...
- Docker小白到实战之Dockerfile解析及实战演示,果然顺手
前言 使用第三方镜像肯定不是学习Docker的最终目的,最想要的还是自己构建镜像:将自己的程序.文件.环境等构建成自己想要的应用镜像,方便后续部署.启动和维护:而Dockerfile就是专门做这个事的 ...
- awk实战演示
awk:报告生成器,格式化文本输出. 我们一般使用的awk命令其实就是gawk,在centos7系统下,awk是gawk的链接文件. 基本用法:gawk [options] 'program' FI ...
- 实战演示疑惑 mysql insert到底加什么锁
innodb的事务隔离级别是可重复读级别且innodb_locks_unsafe_for_binlog禁用,也就是说允许next-key lock 实验来自网上. ( 如果你没有演示出来,请check ...
- clamav完整查杀linux病毒实战(转)
开篇前言 Linux服务器一直给我们的印象是安全.稳定.可靠,性能卓越.由于一来Linux本身的安全机制,Linux上的病毒.木马较少,二则由于宣称Linux是最安全的操作系统,导致很多人对Linux ...
- nginx基础配置加基础实战演示
目录 基本配置 设置用户 工作衍生进程数 错误日志存放路径 pid文件存放路径 设置最大连接数 http->server gzip 字符编码 nginx的基本格式 实战配置 虚拟主机配置 开始配 ...
- clamav完整查杀linux病毒实战(摘抄)
http://dadloveu.blog.51cto.com/blog/715500/1882521 Linux服务器一直给我们的印象是安全.稳定.可靠,性能卓越.由于一来Linux本身的安全机制,L ...
- gRPC四种模式、认证和授权实战演示,必赞~~~
前言 上一篇对gRPC进行简单介绍,并通过示例体验了一下开发过程.接下来说说实际开发常用功能,如:gRPC的四种模式.gRPC集成JWT做认证和授权等. 正文 1. gRPC四种模式服务 以下案例演示 ...
- 查杀病毒实战----------------》ddg.223 and AnXQV
htop 发现导常: 接着发现可疑进程: 首先检测crontab,发现问题: # crontab -l */ * * * * curl -fsSL http://www.bdyutiudwj.com/ ...
随机推荐
- STL的使用
Vector:不定长数组 Vector是C++里的不定长数组,相比传统数组vector主要更灵活,便于节省空间,邻接表的实现等.而且它在STL中时间效率也很高效:几乎与数组不相上下. #include ...
- C#之索引器
实际中不使用这个东西,只做了解 using System; using System.Collections.Generic; using System.Linq; using System.Text ...
- coreseek安装过程
一.sphinx 全文检索 通过sphinx检索到id,然后到mysql里面拿到记录 什么是劝我呢检索?结构化数据: 具有固定格式或者长度的数据非结构化数据: 标题 内容 等不定长的数据非机构化数据还 ...
- Struts2--属性设置方式
Struts2自动获取/设置数据的方式一共分为两种 属性驱动(FieldDriven) 模型驱动(ModelDriven) 属性驱动 属性又分为两种: |- 基本数据类型 |- JavaBean属性类 ...
- [Unreal]学习笔记之材质说明
取消蓝图中的连接线:Alt+鼠标左键 在蓝图中,通过按住1,2,3,4加鼠标左键,可以快速生成1,2,3,4维的向量 材质和材质实例的区别:使用一个母材质,可以创建出多种场景中的材质实例:每次修改母材 ...
- python 反射
python 反射的核心本质其实就是利用字符串的形式去对象(模块)中操作(查找/获取/删除/添加)成员,一种基于字符串的事件驱动! 反射的四个基本函数使用 hasattr,getattr,setatt ...
- Spring Boot入门实例
简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置 ...
- WdatePicker 使用
限制范围为今年之后的3年 $("input[name='year']").attr("onClick","WdatePicker({dateFmt:' ...
- iOS多线程-多线程实现之GCD
什么是GCD? GCD: Grand Central Dispatch (重要的中枢调度器) GCD是纯C语言的, 学习它就是学习一些函数的使用. GCD的核心概念和使用步骤 核心概念 任务 : 执行 ...
- 一些LINQ的使用
var list = from staff in staffList from extraRecord in extraList where staff.staffID == extraRecord. ...