本文由  网易云发布。

随着互联网生态逐渐形成,DDoS防护已经成为互联网企业的刚需要求,网易云安全(易盾)工程师根据DDoS的方方面面,全面总结DDoS的攻防对抗。

1、什么是DDoS

DDoS全称Distributed Denial of Service,中文意思为“分布式拒绝服务”,就是利用大量合法的分布式服务器对目标发送请求,从而导致正常合法用户无法获得服务。通俗点讲就是利用网络节点资源如:IDC服务器、个人PC、手机、智能设备、打印机、摄像头等对目标发起大量攻击请求,从而导致服务器拥塞而无法对外提供正常服务,只能宣布game over,详细描述如下图所示:

DDoS攻击示意图

2、黑客为什么选择DDoS

不同于其他恶意篡改数据或劫持类攻击,DDoS简单粗暴,可以达到直接摧毁目标的目的。另外,相对其他攻击手段DDoS的技术要求和发动攻击的成本很低,只需要购买部分服务器权限或控制一批肉鸡即可,而且攻击相应速度很快,攻击效果可视。另一方面,DDoS具有攻击易防守难的特征,服务提供商为了保证正常客户的需求需要耗费大量的资源才能和攻击发起方进行对抗。这些特点使得DDoS成为黑客们手中的一把很好使的利剑,而且所向霹雳。

从另一个方面看,DDoS虽然可以侵蚀带宽或资源,迫使服务中断,但这远远不是黑客的正真目的。所谓没有买卖就没有杀害,DDoS只是黑客手中的一枚核武器,他们的目的要么是敲诈勒索、要么是商业竞争、要么是要表达政治立场。在这种黑色利益的驱使下,越来越多的人参与到这个行业并对攻击手段进行改进升级,致使DDoS在互联网行业愈演愈烈,并成为全球范围内无法攻克的一个顽疾。

3、DDoS的攻击方式

一种服务需要面向大众就需要提供用户访问接口,这些接口恰恰就给了黑客有可乘之机,如:可以利用TCP/IP协议握手缺陷消耗服务端的链接资源,可以利用UDP协议无状态的机制伪造大量的UDP数据包阻塞通信信道……可以说,互联网的世界自诞生之日起就不缺乏被DDoS利用的攻击点,从TCP/IP协议机制到CC、DNS、NTP反射类攻击,更有甚者利用各种应用漏洞发起更高级更精确的攻击。

从DDoS的危害性和攻击行为来看,我们可以将DDoS攻击方式分为以下几类:

a)资源消耗类攻击

资源消耗类是比较典型的DDoS攻击,最具代表性的包括:Syn Flood、Ack Flood、UDP
Flood。这类攻击的目标很简单,就是通过大量请求消耗正常的带宽和协议栈处理资源的能力,从而达到服务端无法正常工作的目的。

b)服务消耗性攻击

相比资源消耗类攻击,服务消耗类攻击不需要太大的流量,它主要是针对服务的特点进行精确定点打击,如web的CC,数据服务的检索,文件服务的下载等。这类攻击往往不是为了拥塞流量通道或协议处理通道,它们是让服务端始终处理高消耗型的业务的忙碌状态,进而无法对正常业务进行响应,详细示意图如下:

服务消耗类攻击

c)反射类攻击

反射攻击也叫放大攻击,该类攻击以UDP协议为主,一般请求回应的流量远远大于请求本身流量的大小。攻击者通过流量被放大的特点以较小的流量带宽就可以制造出大规模的流量源,从而对目标发起攻击。反射类攻击严格意义上来说不算是攻击的一种,它只是利用某些服务的业务特征来实现用更小的代价发动Flood攻击,详细示意图如下:

反射类攻击

d)混合型攻击

混合型攻击是结合上述几种攻击类型,并在攻击过程中进行探测选择最佳的攻击方式。混合型攻击往往伴随这资源消耗和服务消耗两种攻击类型特征。

3、DDoS防护困难

一方面,在过去十几年中,网络基础设施核心部件从未改变,这使得一些已经发现和被利用的漏洞以及一些成成熟的攻击工具生命周期很长,即使放到今天也依然有效。另一方面,互联网七层模型应用的迅猛发展,使得DDoS的攻击目标多元化,从web到DNS,从三层网络到七层应用,从协议栈到应用App,层出不穷的新产品也给了黑客更多的机会和突破点。再者DDoS的防护是一个技术和成本不对等的工程,往往一个业务的DDoS防御系统建设成本要比业务本身的成本或收益更加庞大,这使得很多创业公司或小型互联网公司不愿意做更多的投入。

4、DDoS防护手段

DDoS的防护系统本质上是一个基于资源较量和规则过滤的智能化系统,主要的防御手段和策略包括:

a)资源隔离

资源隔离可以看作是用户服务的一堵防护盾,这套防护系统拥有无比强大的数据和流量处理能力,为用户过滤异常的流量和请求。如:针对Syn Flood,防护盾会响应Syn Cookie或Syn Reset认证,通过对数据源的认证,过滤伪造源数据包或发功攻击的攻击,保护服务端不受恶意连接的侵蚀。资源隔离系统主要针对ISO模型的第三层和第四层进行防护。资源隔离示意图如下:

资源隔离示意图

b)用户规则

从服务的角度来说DDoS防护本质上是一场以用户为主体依赖抗D防护系统与黑客进行较量的战争,在整个数据对抗的过程中服务提供者往往具有绝对的主动权,用户可以基于抗D系统特定的规则,如:流量类型、请求频率、数据包特征、正常业务之间的延时间隔等。基于这些规则用户可以在满足正常服务本身的前提下更好地对抗七层类的DDoS,并减少服务端的资源开销。详细示意图如下:

用户规则清洗

c)大数据智能分析

黑客为了构造大量的数据流,往往需要通过特定的工具来构造请求数据,这些数据包不具有正常用户的一些行为和特征。为了对抗这种攻击,可以基于对海量数据进行分析,进而对合法用户进行模型化,并利用这些指纹特征,如:Http模型特征、数据来源、请求源等,有效地对请求源进行白名单过滤,从而实现对DDoS流量的精确清洗。

指纹过滤清洗

d)资源对抗

资源对抗也叫“死扛”,即通过大量服务器和带宽资源的堆砌达到从容应对DDoS流量的效果。

延伸阅读:

DDoS高防服务-DDOS攻击防御-DDos压力测试_网易云

DDoS防护服务_DDoS检测识别_DDoS攻击防御_大流量攻击-网易云

了解 网易云 :
网易云官网:https://www.163yun.com/
新用户大礼包:https://www.163yun.com/gift
网易云社区:https://sq.163yun.com/

理解DDoS防护本质:基于资源较量和规则过滤的智能化系统的更多相关文章

  1. DDoS防护之TCP防护

    本文由  网易云 发布. TCP协议,相信对于每一个开发工程师都不陌生.由于该协议是一个面向连接,可靠的特性,广泛应用于现在互联网的应用中.如常见的Web.SSH.FTP等都是基于TCP协议.目前TC ...

  2. 从保障淘宝到全球市场“第一阵营”,阿里云的DDoS防护之路走了多远?

    2年前,不少技术圈的朋友,读过论坛里的一篇解读文章:DDoS,阿里为什么要走自己的一条路(https://bbs.aliyun.com/read/271764.html?pos=13),文章讲述了阿里 ...

  3. 大数据DDos检测——DDos攻击本质上是时间序列数据,t+1时刻的数据特点和t时刻强相关,因此用HMM或者CRF来做检测是必然! 和一个句子的分词算法CRF没有区别!

    DDos攻击本质上是时间序列数据,t+1时刻的数据特点和t时刻强相关,因此用HMM或者CRF来做检测是必然!——和一个句子的分词算法CRF没有区别!注:传统DDos检测直接基于IP数据发送流量来识别, ...

  4. DDoS防护方式以及产品

    导航: 这里将一个案例事项按照流程进行了整合,这样查看起来比较清晰.部分资料来自于Cloudflare 1.DDoS介绍 2.常用DDoS攻击 3.DDoS防护方式以及产品 4.Cloudflare ...

  5. 宙斯盾 DDoS 防护系统“降本增效”的云原生实践

    作者 tomdu,腾讯云高级工程师,主要负责宙斯盾安全防护系统管控中心架构设计和后台开发工作. 导语 宙斯盾 DDoS 防护系统作为公司级网络安全产品,为各类业务提供专业可靠的 DDoS/CC 攻击防 ...

  6. 滥用基于资源约束委派来攻击Active Directory

    0x00 前言 早在2018年3月前,我就开始了一场毫无意义的争论,以证明TrustedToAuthForDelegation属性是无意义的,并且可以在没有该属性的情况下实现“协议转换”.我相信,只要 ...

  7. 权限管理系统(五):RBAC新解,基于资源的权限管理

    本文讨论以角色概念进行的权限管理策略及主要以基于角色的机制进行权限管理是远远不够的.同时我将讨论一种我认为更好的权限管理方式. 1.什么是角色 当说到程序的权限管理时,人们往往想到角色这一概念.角色是 ...

  8. Atitit 深入理解软件的本质 attilax总结 软件三原则"三次原则"是DRY原则和YAGNI原则的折

    Atitit 深入理解软件的本质 attilax总结 软件三原则"三次原则"是DRY原则和YAGNI原则的折 1.1.1. 软件的本质:抽象  1 1.2. 软件开发的过程就是不断 ...

  9. Security » Authorization » 基于资源的授权

    Resource Based Authorization¶ 基于资源的授权 68 of 73 people found this helpful Often authorization depends ...

随机推荐

  1. 什么是Shell、Shell脚本

    Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁.Shell既是一种命令语言,又是一种程序设计语言.作为命令语言,它交互式地解释和执行用户输入的命令:作为程序设计语言,它定义了各种 ...

  2. Linux readelf命令

    一.简介 readelf用来显示一个或者多个elf格式的目标文件的信息,可以通过它的选项来控制显示哪些信息.这里的elf-file(s)就表示那些被检查的文件.可以支持32位,64位的elf格式文件, ...

  3. NOIP 2016 游记

  4. [SoapUI] 通过正则表达式从xml格式的response中提取ID

    import com.eviware.soapui.support.GroovyUtils import java.util.regex.* //Get response def groovyUtil ...

  5. ApplicationContextAware学习--存疑问题

    先看下ApplicationContextAware的源码:     package org.springframework.context; import org.springframework.b ...

  6. Spring Boot与Logback的运用(自定义异常+AOP)

    在开发以及调试过程中,程序员对日志的需求是非常大的,出了什么问题,都要通过日志去进行排查,但是如果日志不清或者杂乱无章,则不利于维护 这边就比较详细的列举几种类型的日志,供大家参考 首先明白logba ...

  7. delphi XE7 数组操作中缺少的find(POS)功能

    delphi xe7 中对数组操作做了很多扩充,比如加入了类似字符串处理的功能. 例如,数组相加 var A: array of integer; B: TBytes = [1,2,3,4]; //I ...

  8. Devexpress VCL Build v2014 vol 14.2.1 beta发布

    已经快到2015 年了. 14.2.1 beta 才出来了. 还好,有一些新东西. 官网地址 VCL Gauge Control Designed to clearly convey informat ...

  9. 2018.10.18 poj2187Beauty Contest(旋转卡壳)

    传送门 旋转卡壳板子题. 就是求凸包上最远点对. 直接上双指针维护旋转卡壳就行了. 注意要时刻更新最大值. 代码: #include<iostream> #include<cstdi ...

  10. 2018.08.21 bzoj4668: 冷战(并查集+启发式合并)

    传送门 可以发现需要维护连通性和两点连通时间. 前者显然是并查集的常规操作,关键就在于如何维护两点的连通时间. 然后会想到这个时候不能用路径压缩了,因为它会破坏原本树形集合的结构,因此可以启发式按si ...