1. XenForo 1.5.14 中文版——支持中文搜索!现已发布!查看详情
  2. Xenforo 爱好者讨论群:215909318 XenForo专区

一家中国广告公司,利用恶意软件感染全球 8500 万台手机

本帖由 漂亮的石头2016-07-07 发布。版面名称:知乎日报

  1. 漂亮的石头

    漂亮的石头 版主 管理成员

    注册:
    2012-02-10
    帖子:
    487,766
    赞:
    47
    相关链接:From HummingBad to Worse

    [​IMG] 1024

    最近 Check Point 发布了一份非常详细的报告,谈到一款名为 HummingBad 的 Android 恶意程序。此恶意程序在行为方式上和先前一些相当霸道的 Android 恶意程序类似,不过它有几大亮点:其一背后操纵者来自中国重庆(注意下面还有地址哦…);其二其感染范围极为广泛,Check Point 研究人员表示,HummingBad 估计已经感染了 8500 万台设备。

    HummingBad 的实例增长

    HummingBad 幕后团队大曝光

    Check Point 在报告中将这款 Android 恶意程序称作 HummingBad。这款恶意程序的作者是国内的一家广告公司,名叫微赢互动(Yingmob!这下火了!)。Check Point 在报告中毫不留情地揭露了这家公司的一些细节信息。

    连工位都有啊!

    据说微赢互动内部还是有好几个团队在开发合法追踪和广告平台的。而负责开发像 HummingBad 这样恶意产品的团队名为“海外平台开发团队”,这个团队内部有 4 个小组,共 25 名成员。

    该团队有三个开发项目,分别是 Eomobi(就是 HummingBad 恶意组件产品)、Hummer Offers(广告服务器分析平台)、Hummer 启动器(这实际上是个广告服务 Android 应用开发包),共开发 6 条产品线:

    1. Ebomi

    2. Hummer 启动器

    3. Root 软件开发套装(SDK)

    4. Hummer Offers

    5. MAT

    6. Unitemobi​

    这家公司其实算不上恶意程序的新人。早在 2015 年的时候,Palo Alto 曾经发布过一款 iOS 恶意程序 YiSpecter 的报告。当时 Palo Alto 就认为 YiSpecter 应该与微赢互动有关,因为这款恶意程序签名就是微赢企业证书。

    Check Point 这次的报告则提到 HummingBad 和 YiSpecter 相比,有着相同的 C&C 服务器地址,行为方式也很相似。另外 HummingBad 内部还包含 QVOD 快播文档(Check Point 直接将之称作 iOS 色情播放器……),这其实跟 Yispecter 也有关联。

    HummingBad 的目标当然是赚钱!

    CheckPoint 预计,HummingBad 每天都会推 2000 万广告内容,其点击率大约为 12.5%,也就是说每天的广告点击量约为 250 万次。此外,HummingBad 每天还安装超过 50000 个欺诈应用。

    预计微赢互动每天光从广告点击,就能获取超过 3000 美元的收益,而诈骗应用的安装则能获取 7500 美元 / 天。换算下来一个月就是 30 万美元,一年则为 360 万美元。

    当前 HummingBad 已经感染了 8500 万台 Android 设备。不止于此,由于这款恶意程序会非法对 Android 设备进行 Root 操作,实现各类恶意程序的推送,这些设备几乎就是被彻底掌控的。这些设备上的数据风险自不必多说,将它们组成僵尸网络,发起攻击,或者将这些访问权限卖到黑市,都全然不在话下。

    微赢互动用他们自家的 Umeng 服务来追踪 HummingBad 的感染情况(专业!)。从 Umeng 的控制面板来看,这家公司“注册”了近 200 款应用,预计其中 25%都是恶意程序,用于分发 HummingBad 恶意程序。上面这张图也来自 Umeng 的统计,从去年 8 月份开始,其活跃性成长表现还是相当不错的。

    从 HummingBad 当前影响的国家地区来看,这款恶意程序当前应该算是个跨国恶意程序,虽然主要感染地区还是在中国和印度,其他各国的感染数量也是相当可观的。

    恶意行为分析

    这次的报告中提到,HummingBad 首次感染方法应该是隐藏下载攻击(drive-by download),部分成人内容站点也提供了相应的恶意 payload。

    而 HummingBad 本身包含了两个主要组成部分,其中一个组件负责对 Android 设备进行 Root 操作,Rootkit 会考虑利用多种不同的漏洞。Root 成功后,攻击者就能完全获取设备的访问权限。如果 Root 失败,第二套组件就会生成一个欺骗性的系统升级通知,欺骗用户让 HummingBad 获取系统级权限(Root 还是关键呀!)。无论 Root 是否成功,HummingBad 都会尽可能下载大量欺诈应用。

    模拟点击的代码

    整套 HummingBad 包含好几个恶意组件。首要的组件名为 SSP,其作用是显示非法广告、安装欺诈应用。该组件通过 4 个事件触发:设备启动、屏幕开启 / 关闭、设备连接任意变化、用户检测(听说过 Android 系统中的 Receiver 吗?这类行为其实是完全合法的)。

    触发过后,SSP 开启名为 Se 的服务,初始化恶意逻辑,并且开启广告网络。SSP 还会开启计时器,每 10 秒钟计划一次 LockTask,如果满足相应条件(比如互联网连接、从服务器获取到设置,时间延迟等),LockTask 就会重启 Se 服务,并且启动 MainActivity 进程,激活恶意 payload。

    MainActivity 进程开始之后,恶意程序会显示广告 banner,广告上面会有个关闭按钮。实际上恶意程序会阻止用户回到 Home 页,或者是进行返回操作,这样用户就只能点击该广告了。用户点击所谓的“关闭”按钮,实际上也是点击一次广告操作。在点击广告之后,SSP 组件就会向服务器发出请求,给 APK 返回一个链接,SSP 随后再从服务器下载该 APK 文件(就是 Android 安装文件嘛)。

    那个“关闭”按钮相关代码

    APK 文件下载完成后,恶意应用会检查设备是否已经 Root。如果已经 Root,则默默地安装下载的 APK 文件;如果没有 Root 的话,SSP 会弹出用户对话框,仍旧企图进行安装操作。

    下载的 APK 文件安装完成后,SSP 再启动该程序,并且广播 INSTALL_BEFERRER,通过从服务器获取到的信息来伪造 Google Play 的安装,并从广告网络中获取广告收益(难道这不是仅针对国际用户的么?)。

    作为一个合格的恶意程序,肯定还要获取更新、发回报告。SSP 会从某 JSON 文件检索 C&C 域名。这里的 JSON 文件是从 d1qxrv0ap6yf2e.cloudfront[.]net/domain/xxx.json 下载的,值大概是这样的:

    • {"id":3,"name":"CAP","master":"032o[.]com","slave":"032n[.]com"}• {"id":4,"name":"SSP&CCSDK","master":"guangbom[.]com","slave":"ssppsspp[.]com"}• {"id":5,"name":"asdf","master":"asdf","slave":"asdf"} //I think• {"id":6,"name":"efwe","master":"gwsgs","slave":"dgss"}//it's unused• {"id":7,"name":"1","master":"1","slave":"1"} //and this• {"id":8,"name":"CAP-DW","master":"ccaa100[.]com","slave":"ccaa200[.]com"}• {"id":9,"name":"SSP-DW","master":"cscs100[.]com","slave":"cscs200[.]com"}• {"id":11,"name":"HM-JK","master":"hmapi[.]com","slave":"eoapi[.]com"}• {"id":12,"name":"易盟 - 易窗","master":"ma2.heshan88[.]com","slave":"sl2.heshan88[.]com"}• {"id":13,"name":"易盟 - 易推","master":"ma2.heshan88[.]com","slave":"sl2.heshan88[.]com"}• {"id":14,"name":"易盟 - 启弹","master":"ma2.heshan88[.]com","slave":"sl2.heshan88[.]com"}• {"id":15,"name":"iadpush","master":"ma2.lb0408[.]com","slave":"sl2.lb0408[.]com"}• {"id":16,"name":"1mob-fudian","master":"ma2.heshan88[.]com","slave":"sl2.heshan88[.]com"}• {"id":17,"name":"QS","master":"aa0ad[.]com","slave":"aa0ab[.]com"}• {"id":18,"name":"1mob-xin(点滴 /BDSDK ","master":"ma2.heshan88[.]com","slave":"sl2.heshan88[.]com"}

    除此之外,SSP 还有一些行为,比如具体的 Google Play 进程注入(SSP 能够向 Google Play 进程注入一个库,恶意程序也就能够伪装 Google Play 商店中安装、购买、接受点击操作;这里用到的是比较知名的 ptrace,SSP 能够用 ptrace 来调用控制其他应用,读取、写入内存等操作);还有 RightCore 恶意组件,其实应该算是 SSP 的一个早期版本;CAP 组件采用比较复杂的技术负责安装欺诈应用,实现欺骗 IMEI 码注入,执行 Google Play 的点击模拟操作等等。

    对这些感兴趣的同学可以 点击这里,查看 Check Point 提供的详情。

    在 Check Point 看来,微赢互动可能是首个曝光到大众面前、如此高度组织化推恶意程序的团队。或许这种趋势未来还会持续,引来其他团队的学习,实现复杂攻击的独立化运营。甚至将这样掌控僵尸网络的权限,提供给某些组织或政府机关,情况就更加复杂了。


    * FreeBuf 官方报道,本文原创作者:欧阳洋葱,转载请注明来自 FreeBuf 黑客与极客(http://FreeBuf.COM

    阅读原文
     
正在加载...