作者:钱盾反诈实验室
0x1.背景近期,钱盾反诈实验室通过钱盾恶意
代码智能监测引擎感知并捕获一批恶意应用。由于该批病毒会联网加载“CWAPI”插件,故将其命名为“DowginCw”病毒家族。“DowginCw”通过插件形式集成到大量儿童游戏应用中,然后通过发布于各大应用商店或强制
软件更新等手段,将恶意代码植入用户手机设备中,用户一旦运行,设备将不停下载、安装其他恶意应用,直接造成用户手机卡顿,话费资损,个人隐私泄漏等风险等。
“DowginCw”能上架知名应用商店和长期驻留用户设备,是因为它使用了一套成熟的
免杀技术,利用这套技术,免杀病毒可在杀软面前肆无忌惮地实施恶意行为而不被发现,其免杀技术手段包括:代码加固保护、插件化,以及代码延迟加载。
0x2.影响范围相关数据表明,早在去年10月“DowginCw”病毒家族应用就上架应用商店。其中几款应用下载量甚至高达3千万,疑似存在刷榜,刷量和刷评分,来诱骗用户下载。
目前,钱盾反诈实验室已
拦截查杀“DowginCw”病毒家族2603款应用。下图近两月病毒感染设备次数已达93w,平均每日感染用户过万,共计感染87w用户设备。
下表感染用户top10的应用。
应用名 | 包名 | 感染量 |
魔仙公主换装 | com.cocoplay.iceskater | 107543 |
大球吃小球烧烤 | com.mahjong.sichuang | 39403 |
魔仙公主装扮游戏 | com.colorme.game.gongzhuhuayuano | 28339 |
巴拉拉公主蛋糕 | com.fcl.anaadwqra | 22798 |
奇妙蛋糕屋游戏 | com.qiyou.kxct_MM | 19951 |
小芭比公主游戏 | air.com.empiregames.fungirlgames | 14619 |
公主化妆和换装 | com.cocoplay.ryenpncocoiceprincess_googleplay | 12940 |
叶萝莉美甲师(免费版) | com.fc.mhklmjslnad | 12249 |
可爱公主医生小游戏 | com.andromo.dev249143.app236834 | 12058 |
丛林发型制作世界 | com.fancywing.s3 | 11697 |
0x3.恶意样本分析对“DowginCw”病毒家族其中一样本分析。
应用名:王子结婚换装小游戏
包名:com.brainsterapps.google.katyinternational
3.1主包解析:首先将主包脱壳,拿到加固前代码。下图主包
功能模块。
l 启动恶意代码;
l 从云端获取恶意推广插件信息;
l 加载执行恶意推广行为;
l 监听应用安装、
网络改变,进而调用子包,执行恶意行为;
1.恶意代码是在入口activity的attachBaseContext被加载的,也就是应用一启动就会加载恶意代码块。为了躲避动态沙盒监测,恶意行为会延迟30s执行。
2.访问http://mail[.]zbmcc.cn/s获取插件Json数据。数据如下,a:插件包下载地址;b:版本号;c:设备sd卡存放位置;d:恶意弹窗控制指令数据,函数call的参数。
{ "a": "http://d2[.]chunfeifs[.]com/jfile/ter.jar", "b": "5.0", "c": "download/br/", "d": "1=2,1;3=2;4=2,1;7=3,2,1,30;8=1,1;"}3.插件下载地址来自xiongjiong[.]com或chunfeifs[.]com。成功下载后,随后动态加载ter5.0.jar,并反射执行“init”方法完成恶意推广行为初始化,下图“CWAPI”的静态代码块,可知DowginCw的弹窗方式。
最后主包通过反射执行子包“call”函数启动恶意推广。
4.应用安装成功、网络改变广播监听,通过反射调用子包LCReceiver类onReceive函数实现。
3.2子包恶意推广下图子包工作图:
设置恶意推送模式和定时弹应用安装提示窗的指令数据,来自mail[.]zbmcc[.]cn返回的json数据中的b字段值,例如数据指令“1=2,1;3=2;4=2,1;7=3,2,1,30;8=1,1;”会开启以下3种推送模式和设定弹应用安装提示窗口定时器:
内插轮番,在指定的间隔时间在主包应用窗口弹推送窗;
解锁,设备解锁弹推送窗;
外插轮番,在指定的间隔时间在任意应用窗口弹推送窗;
“DowginCw”每发起一次恶意推送,都会从go[.]1mituan[.]com获取加密的待推送应用数据。
经解压解密可获取数据如下,包括应用编号、弹窗图片地址、推送应用下载地址:
为了能够在设备解锁,任意应用界面弹窗,病毒需要获取当前运行Activity实例。“DowginCw”通过反射获取ActivityThread中所有的ActivityRecord,从ActivityRecord中获取状态不是pause的Activity。
成功弹出恶意推广窗,用户触屏图片区域,甚至点击“取消”也会下载准备的应用。
安装提示窗也是定时执行,若监测到下载应用没被安装,则会弹窗诱导用户安装应用。当应用成功安装,LCReceiver会接受处理“android.intent.action.PACKAGE_ADDED”广播,实现应用自启动。如此环环相扣,完成一个又一个恶意应用植入用户设备。
我们发现恶意推送的应用全部来自域名:xiongjiong[.]com和youleyy[.]com,下载的应用以伪装成游戏和色情类app为主,大部分属于SmsPay家族(启动发送扣费短信),部分Rootnik家族(root设备向
系统目录注入恶意应用),下表部分推送应用:
应用名 | 包名 |
我的世界 | com.xiaodong.android.mc.chwan0724 |
绝地求生 | il.fhatiazsfv.f.k2be42121f2539.f9b1 |
复仇者联盟 | com.union.theavenger20713 |
贪吃蛇大作战 | yoq.yvlha.tfyz.HX2017_728 |
私密空间 | com.simsiskongj20088ian.cdsqcgpmdpfm |
女神来了 | ymju567_thjtyu.juki |
我的安吉拉 | bgbg_67_n_6666.ghgyh |
越野飙车 | com.kkpo.iibs61108 |
我的世界 | cdf.khyhkgdgd.lfdbvbhbngx |
0x4.黑色产业链分析如下图所示,由制马人、广告平台、多渠道分发、转账洗钱构成了“DowginCw”黑色产业链的关键环节。
其中制马人团队负责
开发维护,以及免杀处理,目前病毒已迭代到5.0版本,特点包括:能以插件形式集成到任意app;代码延迟加载,由云端下发恶意插件;字符串加密,代码强混淆等技术,可见“DowginCw”开发团队专业度之高。“广告平台”角色是“DowginCw”病毒的主要赚钱方式,通过在黑市宣传推广能力,以成功下载应用或成功安装病毒木马收费。“多渠道分发”团队在整个链条中处于相对核心的地位,通过与某些应用合作,成功集成“DowginCw”插件,致使能上架知名应用商店。从实际运作来看,整个圈子除了上述几个重要角色外,一些环节还会有其他黑产人员参与其中,比如上架应用商店后,想要让app曝光诱骗用户下载,会请专业人员进行刷榜,刷量,涮好评。
Ox5.团伙溯源我们通过钱盾恶意代码智能监测引擎,从“DowginCw”病毒家族中提取出如下C&C地址:zbmcc.cn、smfoja.cn、typ
ipe.cn、unfoot.com、yuchanglou.com.cn、inehzk.cn、chunfeifs.com、xiongjiong.com.cn、1mituan.cn、elianke.cn、youleyy.com、cd.zciec.com。从域名的注册邮箱分析,可挖掘出该产业链部分人员,如下图所示。
分析发现:
1、黑产团伙使用ailantian198*@126.com、lantian198*@foxmail.com、30854789*@qq.com作为“DowginCw”域名地址的公共邮箱,并使用这些邮箱注册大量其他恶意域名。
2、其团伙成员包括:黄某、余某、程某、石某、齐某等9名成员,其中黄某负责平台推广;余某负责已注册的老域名购买;石某和齐某疑是病毒插件开发人员;其余人员属于下游工作者。