安全-DDOS介绍及攻击防御原理说明

1、DDOS是什么

DDoS攻击(Distributed Denial-of-Service
attack)是指利用多台主机对目标服务器发起大量的请求,从而使其无法处理正常的网络流量并导致服务不可用。这些请求通常是恶意的、占用大量带宽的和重复的,导致服务器在瞬间被过载,无法响应真正的客户端请求。DDoS攻击可以通过各种手段进行,如利用僵尸网络、利用漏洞发起攻击或伪造IP地址等。它不仅给网站运营者和用户带来影响,而且可能会导致公司损失巨额资金。
如图所示
攻击目标
攻击类型
攻击类型举例
DDOS攻击包括不限于上述的攻击类型。

2、DDOS造成的损失

近几年,DDoS攻击的规模、频率和影响力都在不断增加,给全球网络安全带来了严重威胁。以下是一些近几年发生的DDoS攻击事件的例子:

  • 2020年9月,美国金融服务公司Akamai遭到了2.3Tbps的DDoS攻击,创下了当时的世界纪录。这次攻击利用了SSDP协议,通过发送恶意的搜索请求来放大流量。Akamai成功地抵御了这次攻击,没有造成客户服务中断。
  • 2020年11月,新西兰股票交易所NZX遭到了持续四天的DDoS攻击,导致其交易平台多次中断。这次攻击是由一个名为Armada Collective的黑客组织发起的,他们向NZX发送了勒索邮件,要求支付比特币,否则就继续发动攻击。
  • 2021年2月,GitHub遭到了1.35Tbps的DDoS攻击,超过了2018年3月对其发起的1.3Tbps的攻击,成为了历史上最大的DDoS攻击。这次攻击利用了memcached协议,通过向开放的memcached服务器发送伪造的请求来放大流量。GitHub及时启用了其DDoS防护服务提供商Akamai Prolexic的服务,成功地缓解了这次攻击。

3、DDOS攻击与防御技术原理

3.1、DDOS防护方式

  • 云防护
    云防护即为利用现有云计算的弹性和高容量的优势来进行DDOS攻击的防护,主要包括如下几个方面:
    1、 云原生
    利用云上DDOS防护设备和云数据中心的能力来进行防护,该方式的部署只需要用户添加云上对应的DDOS防护资源即可,无需变更云的IT架构,其主要的目的是为云上的业务进行防护。如下图参考阿里云原生DDOS防护
    云原生防护
    2、CDN安全
    CDN安全防护的原理是利用CDN全球分布的节点来进行安全的防护,通过分布式的节点来分散攻击,从而达到防护的目的,CDN安全防护的能力主要以分布式的全平台能力作为基准,一般全平台可以高达几个T,如网宿、白山等,特点是接入方式为Cname接入,IT架构上为前置在用户IT架构之前,参考如下架构图:
    CDN安全防护架构
    3、DDOS高防
    DDOS高防主要是利用云计算数据中心具有庞大的负载集群来提供大流量的防护,云中心的DDOS防护能力高达800-1.5Tbps,接入方式为高防BGP的IP接入,但是云厂商在受到大规模攻击的时候会进行黑洞处理,以便保障云数据中心其他用户的正常访问,参考如下架构图:
    高防
    4、硬件防护
    DDOS硬件防护简单来说就是在客户IDC和自己的机房部署硬件DDOS防护设备,一般部署在最前置,来保障内网业务在受到DDOS攻击的时候能进行流量的清洗和防护,但是目前硬件防护设备的性能有限,而且成本较高,参考如下架构图:
    硬件防火策略
    硬件防护
    5、 运营商流量压制
    进入到该运营商的DDOS攻击流量,即可被检测和清洗压制(压制就是封堵攻击源,或者对来自攻击源的流量进行限速处理,在进入到运营商网络中就能实现压制功能),但是目前只能防护来自本运营商的攻击,无法实现跨运营商防护,如下
    防护逻辑:
    运营商流量压制

3.2、DDOS攻防原理介绍

1、SYN flood攻击原理及防御分析

syn flood
深入看下这个抓包的数据包可以看到发送大量的SYN包,每个包实际的长度是0,但是win却是很大的:
数据包1
在服务端抓包,可以看到有大量的SYN信息:
在这里插入图片描述

可以看到大包有堵带宽,win很大,客户端向服务端一直发送Syn数据:
在这里插入图片描述
大小包混合的情况:
在这里插入图片描述
如下图可以看到发送syn的信息中TCP的标志位有异常,并不是合法的(如果TCP报文段中某些标记位出现不合法的情况,例如同时设置了SYN和ACK标记位,或者没有设置ACK标记位却设置了URG标记位等,那么接收方将会认为这是非法的TCP报文段,有可能会把这个报文段丢弃,也可能会向发送方返回RST标记位来终止连接。因此,在设计和实现TCP协议时,需要对标记位进行正确的设置和处理,避免出现非法标记位的情况)
在这里插入图片描述
抓包看到有DDOS攻击和响应的信息:
在这里插入图片描述
因此总结防护方式:

  • 识别TCP标志位的情况来做判断
  • 防火墙先建立会话链接,防火墙收到SYN包并返回SYN+ACK包时,不分配专门的数据区,而是根据SYN包计算出一个Cookie值,将其当做初始包序号,对返回的ACK包进行Cookie验证,验证通过则分配资源、建立连接来做判断,但是该防护方法很消耗防火墙的性能,尤其传统的硬件防护方式会影响到客户正常的业务。**
2、ACK flood攻击及防御分析

攻击原理如下图所示:
在这里插入图片描述
分析数据包可以看到就是发送大量的ACK包,让服务器判断回复,导致无法相应过来。
在这里插入图片描述
因此分析其防护思路:
服务端收到ACK包后会判断是否有SYN包,因此逻辑上还可以以防火墙先来建立SYN会话,如果没有SYN会话的,直接发送ACK的则丢弃:
在这里插入图片描述

3、UDP flood攻击和防护原理

如下图可以看到UDP flood的攻击原理:
在这里插入图片描述
根据数据包的情况来看为客户端发送大量无状态的UDP包:
在这里插入图片描述
一般模拟攻击平台的发起攻击逻辑可以如图看出,可以设置速率、包大小、内容等,对应抓包的信息:
在这里插入图片描述
因此分析其防火逻辑:

  • 是否有UDP的流量,如果没有建议直接丢弃,从而起到防护
  • 根据UDP数据包的异常情况来深入分析,配置数据包大小、速率阈值,从而实现防护
  • 华为UDP防护可以支持水印防护,通过客户端配置开发水印算法来实现精准防护识别,如下:

在这里插入图片描述

4、反射放大攻击及防护原理

反射放大攻击原理如下所示:
在这里插入图片描述
结合如下抓包数据可以看到一个以很小的攻击实现大的数据包的反馈的反射:
在这里插入图片描述
综合上述分析防护原理:
反射放大攻击主要和有关协议有关,可以通过对涉及攻击的端口进行安全过滤来实现业务的防护,如设置白名单等其他方式。

5、空连接攻击

如下图可以看出空连接攻击的原理:
在这里插入图片描述
通过服务器端的建联来看,可以看出空连接主要为只建立连接,但不发送数据,用句俗话讲就是占着茅坑不拉屎:
在这里插入图片描述
综合上述分析防护方法:
-限制单个IP的连接数量

6、CC攻击原理和防护方法:

如下图可以看到CC攻击的原理展示:
在这里插入图片描述
结合抓包信息来看,可以看到有很多真实的请求,去请求后端的资源,消耗后端数据库等性能,导致无法响应正常用户请求:
在这里插入图片描述
在这里插入图片描述
总结分析CC攻击的防护思路:
首先简单总结下CC的特点,CC并不是大流量攻击,其主要是高并发,CC很难有统一的防护思路或者防护手段,基本都要结合实际的业务来去做对应的防护,因为CC的IP一般是分散、真实的;而且数据包的请求都是真实有效的,无法直接拒绝,因此目前的防护思路来看大概分为几种:

  • 区分攻击者和真实用户,利用携带cookie、解析JS等方式
  • 进行深入的流量分析,通过关键字段来做匹配
  • 结合UA、refer等信息进行判断
  • 添加验证码如数据文字,滑动滑块等方式来达到目的
  • 设置IP黑名单
7、 其他更多攻击方式

省略,不在一一举例,DDOS攻击的变种也比较多,可以自行研究学习。

8、离线日志分析-人工加安全防护策略

攻击手段会随着技术、防护的方式而不断地变化,攻击者只会越来越聪明,规则很难防住左右的攻击者,因此最通用的方式为深入分析客户业务流量日志,通过安全专家进行攻击的发现,来添加对应的防护规则或者策略,达到防护的目的。

4、目前DDOS防护的一些厂商

  • 云厂商:阿里云、腾讯云、华为云等
  • CDN厂商:网宿科技、知道创宇、白山科技等
  • 安全厂商:绿盟、深信服、华为、长亭等;
  • 运营商:电信云堤、移动、联通等;

5、DDOS有关的思考

关于DDoS,这是一种非常危险和破坏性的网络攻击方式,它不仅会给目标网站或服务器带来严重的损失,也会影响正常的网络通信和服务。企业应该加强对DDoS攻击的预防和应对,提高网络安全意识和能力,在发生DDOS攻击的时候可以第一时间报警处理。

学习网络安全技术的方法无非三种:

第一种是报网络安全专业,现在叫网络空间安全专业,主要专业课程:程序设计、计算机组成原理原理、数据结构、操作系统原理、数据库系统、 计算机网络、人工智能、自然语言处理、社会计算、网络安全法律法规、网络安全、内容安全、数字取证、机器学习,多媒体技术,信息检索、舆情分析等。

第二种是自学,就是在网上找资源、找教程,或者是想办法认识一-些大佬,抱紧大腿,不过这种方法很耗时间,而且学习没有规划,可能很长一段时间感觉自己没有进步,容易劝退。

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

第三种就是去找培训。

image.png

接下来,我会教你零基础入门快速入门上手网络安全。

网络安全入门到底是先学编程还是先学计算机基础?这是一个争议比较大的问题,有的人会建议先学编程,而有的人会建议先学计算机基础,其实这都是要学的。而且这些对学习网络安全来说非常重要。但是对于完全零基础的人来说又或者急于转行的人来说,学习编程或者计算机基础对他们来说都有一定的难度,并且花费时间太长。

第一阶段:基础准备 4周~6周

这个阶段是所有准备进入安全行业必学的部分,俗话说:基础不劳,地动山摇
image.png

第二阶段:web渗透

学习基础 时间:1周 ~ 2周:

① 了解基本概念:(SQL注入、XSS、上传、CSRF、一句话木马、等)为之后的WEB渗透测试打下基础。
② 查看一些论坛的一些Web渗透,学一学案例的思路,每一个站点都不一样,所以思路是主要的。
③ 学会提问的艺术,如果遇到不懂得要善于提问。
image.png

配置渗透环境 时间:3周 ~ 4周:

① 了解渗透测试常用的工具,例如(AWVS、SQLMAP、NMAP、BURP、中国菜刀等)。
② 下载这些工具无后门版本并且安装到计算机上。
③ 了解这些工具的使用场景,懂得基本的使用,推荐在Google上查找。

渗透实战操作 时间:约6周:

① 在网上搜索渗透实战案例,深入了解SQL注入、文件上传、解析漏洞等在实战中的使用。
② 自己搭建漏洞环境测试,推荐DWVA,SQLi-labs,Upload-labs,bWAPP。
③ 懂得渗透测试的阶段,每一个阶段需要做那些动作:例如PTES渗透测试执行标准。
④ 深入研究手工SQL注入,寻找绕过waf的方法,制作自己的脚本。
⑤ 研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架。
⑥ 了解XSS形成原理和种类,在DWVA中进行实践,使用一个含有XSS漏洞的cms,安装安全狗等进行测试。
⑦ 了解一句话木马,并尝试编写过狗一句话。
⑧ 研究在Windows和Linux下的提升权限,Google关键词:提权
image.png
以上就是入门阶段

第三阶段:进阶

已经入门并且找到工作之后又该怎么进阶?详情看下图
image.png

给新手小白的入门建议:
新手入门学习最好还是从视频入手进行学习,视频的浅显易懂相比起晦涩的文字而言更容易吸收,这里我给大家准备了一套网络安全从入门到精通的视频学习资料包免费领取哦!

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

  • 23
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值