近期,阿里云安全团队观察到数十起大规模的应用层资源耗尽式DDoS攻击(应用层CC攻击)。阿里云DDoS高防实现智能防护全程自动化检测并清洗,未对用户侧业务产生任何影响,这类攻击存在一些共同的特征,阿里云安全团队对此做了跟踪分析。

几经溯源发现,这些攻击事件源于大量用户在手机上安装了某些伪装成正常应用的恶意APP,该APP在动态接收到攻击指令后便对目标网站发起攻击。根据阿里云安全团队监测的数据显示,近两个月,已经有五十余万台移动设备被用来当做黑客的攻击工具,达到PC肉鸡单次攻击源规模。不难看出,伪装成正常应用的恶意APP已让海量移动设备成为新一代肉鸡,黑灰产在攻击手法上有进一步升级趋势。

海量移动肉鸡下的DDoS攻击有哪些新特征?

通过监测到的数据发现,这类攻击有以下几个特点:

  • 移动端设备系统分布均匀
    iOS系统约占四成,Android系统六成;

  • 攻击规模和肉鸡数量庞大且源IP不固定
    单次攻击峰值达百万QPS(每秒请求次数),来源于50多万个肉鸡源IP,且多次攻击事件之间源IP重合度非常低;

  • 攻击源IP分布极散
    攻击源IP分散于全球160余个国家,近40个运营商,仅中国就有300余个城市存在攻击源,且多数分布在东部及沿海网络发达的省份;

攻击源分布地图

  • 攻击源IP多为基站IP

近一半的攻击源IP为移动网络大型基站出口,意味着同一个源IP同时承载了攻击流量和大量正常用户流量;

  • 攻击调度无规律

由于手机连接的网络变化,以及APP的启动和退出,我们观测到不断有新的攻击源IP加入,超过一半的攻击源并非在攻击开始时就发起攻击,且每个攻击源IP攻击持续时间长短不一,单个攻击源IP请求频率并不高。

某次攻击不同攻击持续时长的IP量及请求量

限速和黑名单在PC肉鸡时代曾是“一键止血”的防御方式。但以伪装成正常应用的恶意APP方式发起的攻击,由于移动设备远活跃于PC设备,哪怕是一个小众的APP,数量都相当庞大。即使单台肉鸡设备请求频率很低,聚合起来的总请求量也足以压垮目标网站,因此,攻击者可以轻易在不触发限速防御策略的情况下实现攻击。

更可怕的是,由于攻击源多为大型出口IP,传统的防御方法简单粗暴的将攻击IP拉黑,这些IP背后的大量正常用户也将无法访问。同时,新的肉鸡会在攻击过程中不断加入,黑名单的方式在这种情况下也不见得能有效封住攻击。曾经强大的护城河,在新攻击态势下变得鸡肋。

黑客是如何借助恶意APP进行攻击的?

  • 黑灰产在APP内嵌了一个WebView,启动后会请求中控链接,该链接指向的页面内嵌及加载了三个JS文件,JS以ajax异步请求的方式动态获得了JSON指令;
  • 在非攻击时间段,获得的JSON指令内容为“{"message": "无数据", "code": 404}”,由于不包含攻击指令,JS加载后进入不断循环,定期重新读取JSON指令;

JSON指令决定循环OR执行攻击

  • 一旦攻击者发布攻击JSON指令,JS即退出循环,在处理解析后会将消息传递回WebView。JSON指令中指定了目标URL、请求方式、header等攻击需发送的包内容,并指定了攻击频率、当前设备开始攻击的条件、攻击结束时间等调度参数来增加攻击复杂度和灵活性;
  • WebView通过UserAgent得到设备信息,判断是iOS还是Android系统,不同设备调用不同函数触发加载恶意APP中的Java代码,让设备根据指令发动攻击。

判断设备类型:同时支持安卓及iOS

通过上述手法,所有安装了这个APP的用户就已经被黑灰产团伙利用,作为攻击肉鸡,神不知鬼不觉地陆续对指定的目标业务发起了无数次的DDoS攻击!

同时这也揭露了一个灰色产业,此类应用的所有者通过发布APP,在各个渠道发布诱导类的广告吸引用户安装使用,之后在通过用户使用APP赚取利润的同时,又将所有安装APP的用户设备作为攻击肉鸡提供给黑灰产来进行DDoS攻击,进行二次获利。

更危险的是,从攻击流程看,攻击者想让这些移动设备以怎样的方式、对谁、做什么操作,全都可以通过JSON指令动态下发,可以说黑灰产能利用用户设备为所欲为。

攻击流程图

除了能恶意操控移动设备发起攻击之外,黑灰产还可以通过在APP中植入恶意代码,私自发送扣费类短信,借助运营商的短信支付通道偷取用户资费;获取用户的通讯录、地理位置、身份证、银行卡等敏感信息,使用户受到广告骚扰、电信诈骗等,甚至还有可能被黑灰产盗用身份造成更大的损失。

如何应对这种新兴DDoS攻击威胁?

在PC肉鸡时代,企业抵御肉鸡DDoS攻击的做法相对简单粗暴:

  • 检测单元:请求频率
  • 执行动作:限速和黑名单
  • 防御逻辑:请求频率过高后开始进行源限速或拉黑源IP

在无法有效防御的情况下,还需要人工介入抓包分析,根据攻击具体情况配置防护规则,但这种响应方式相对较慢,业务普遍已经严重受损。

当海量移动设备成为新的攻击源,黑灰产可以轻松绕过上述防御逻辑。企业不应该再对“限速+黑名单就能一招制敌”抱有幻想,而应该采用更为纵深、智能的防护手段:

  1. 丰富攻击流量识别的维度,将每个请求实时的解析出多维度的检测单元;
  2. 防护策略的执行需要与多维度的识别相匹配,需要有精细、灵活、丰富的访问控制单元,让各个维度有机组合,层层过滤攻击流量;
  3. 机器智能替代人工排查,提升响应速度,降低业务中断时间。

尽管黑灰产只是升级了攻击源,但企业针对这一改变所要做的安全防御工作量巨大,需要尽早行动起来做好准备。当然,企业用户也可以选择购买阿里云云盾的DDoS防护产品,对大流量型DDoS攻击及应用层资源耗尽式DDoS攻击(CC)做专业、智能的防护。

对于个人用户而言,为了保障设备安全和数据隐私安全,阿里云安全团队建议,切勿从非正规渠道安装未经审核的APP,让自己手机沦为黑灰产的工具,造成不必要的麻烦;安装APP时请仔细确认请求授予的权限,若发现APP请求了与功能不符的高风险权限,如“访问通讯录”、“发送短信”等,很可能存在问题,请谨慎安装。


本文作者:云安全专家

原文链接

本文为云栖社区原创内容,未经允许不得转载。

DDoS攻击新趋势:海量移动设备成为新一代肉鸡的更多相关文章

  1. 《2019上半年DDoS攻击态势报告》发布:应用层攻击形势依然严峻,海量移动设备成新一代肉鸡

    2019年上半年,阿里云安全团队平均每天帮助用户防御2500余次DDoS攻击,与2018年持平.目前阿里云承载着中国40%网站流量,为全球上百万客户提供基础安全防御.可以说,阿里云上的DDoS攻防态势 ...

  2. IPv6 时代如何防御 DDoS 攻击?

    在互联网世界,每台联网的设备都被分配了一个用于标识和位置定义的 IP 地址.20 世纪 90 年代以来互联网的快速发展,联网设备所需的地址远远多于可用 IPv4 地址的数量,导致了 IPv4 地址耗尽 ...

  3. 破坏之王DDoS攻击与防范深度剖析【学习笔记】

    一.DDoS初步印象 1.什么是分布式拒绝服务攻击? 1)首先它是一种拒绝服务攻击 我们可以这么认为,凡是导致合法用户不能访问服务的行为,就是拒绝服务攻击. 注:早期的拒绝服务主要基于系统和应用程序的 ...

  4. 郭盛华:DNS新漏洞可使黑客可以发起大规模DDoS攻击

    近日,知名网络黑客安全专家.东方联盟创始人郭盛华微博披露了有关影响DNS协议的新缺陷的详细信息,该缺陷可被利用来发起放大的大规模分布式拒绝服务(DDoS)攻击,以击倒目标网站.该漏洞称为NXNSAtt ...

  5. nginx爆出新漏洞 最低限度可造成DDos攻击

    5月9日消息:国内某安全厂商称HTTP代理服务器nginx爆出远程栈缓冲区溢出漏洞,攻击者利用此漏洞可能造成栈溢出,从而执行任意代码,最低限度可造成拒绝服务攻击.目前,官方已经发布安全公告以及相应补丁 ...

  6. 游戏行业DDoS攻击解决方案

    行业综述 根据全球游戏和全球移动互联网行业第三方分析机构Newzoo的数据显示:2017年上半年,中国以275亿美元的游戏市场收入超过美国和日本,成为全球榜首. 游戏行业的快速发展.高额的攻击利润.日 ...

  7. 阿里云:游戏行业DDoS攻击解决方案

    转自:http://www.gamelook.com.cn/2018/01/319420 根据全球游戏和全球移动互联网行业第三方分析机构Newzoo的数据显示:2017年上半年,中国以275亿美元的游 ...

  8. 2018上半年DDoS攻击报告:流量峰值达1.7Tbps

    欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~ 2018年上半年DDoS攻防仍如火如荼发展,以IoT设备为反射点的SSDP反射放大尚未平息,Memcached DDoS又异军突起,以最高可 ...

  9. DDoS攻击与防范策略

    DDoS(Distributed Denial of Service,分布式拒绝服务)攻击的主要目的是让指定目标无法提供正常服务,甚至从互联网上消失,是目前最强大.最难防御的攻击之一. 按照发起的方式 ...

随机推荐

  1. TZ_02MyBatis_lazy SqlMapConfig.xml

    Mybatis的延迟加载又称为懒加载 mybatis在一对多的查询中,例如查询一个用户时需要查询这个用户下的所有账户信息,如果一次性的select * from user u left join ac ...

  2. UnhandledPromiseRejectionWarning: SequelizeConnectionError: Client does not support authentication protocol requested by server; consider upgrading MySQL client

    UnhandledPromiseRejectionWarning: SequelizeConnectionError: Client does not support authentication p ...

  3. javax.el.PropertyNotFoundException: Property 'studentAge' not found on type com.hs.model.StudentModel

    mi明明已经把这个字段重构了,为啥还这样提示呢?整个工程全部 查找也找不到这个字段了啊

  4. Jboss配置HTTPS

    配置jboss的HTTP请求走SSL(HTTPS协议) l         生成keystore 文件 用keytool生成server.keystore文件: 进入命令行 C:\Documents ...

  5. day37 02-Hibernate二级缓存:二级缓存的散装数据

    一级缓存存放的是对象的地址.把对象的地址缓存下来了.二级缓存里面存放的是对象的散装数据.你再去获取的时候,因为一级缓存的生命周期结束了,它会从二级缓存中获取.从二级缓存中获取,因为它又会得到一个对象. ...

  6. 洛谷P1077 [NOIP2012普及组]摆花 [2017年四月计划 动态规划14]

    P1077 摆花 题目描述 小明的花店新开张,为了吸引顾客,他想在花店的门口摆上一排花,共m盆.通过调查顾客的喜好,小明列出了顾客最喜欢的n种花,从1到n标号.为了在门口展出更多种花,规定第i种花不能 ...

  7. 【JZOJ3636】【BOI2012】Mobile(mobile)

    Mission 著名的手机网络运营商Totalphone 修建了若干基站收发台,以用于把信号网络覆盖一条新建的高速公路.因为Totalphone 的程序员总是很马虎的,所以,基站的传功功率不能独立设置 ...

  8. 洛谷 P2955 [USACO09OCT]奇数偶数Even? Odd?【字符串/易错】

    题目描述 Bessie's cruel second grade teacher has assigned a list of N (1 <= N <= 100) positive int ...

  9. 从零开始写一个npm包,一键生成react组件(偷懒==提高效率)

    前言 最近写项目开发新模块的时候,每次写新模块的时候需要创建一个组件的时候(包含组件css,index.js,组件js),就只能会拷贝其他组件修改名称 ,但是写了1-2个后发现效率太低了,而且极容易出 ...

  10. java获取外网ip地址

    转自:http://blog.163.com/houjunchang_daxue/blog/static/13037938320134543310451/ /** * 获取外网IP.归属地.操作系统 ...