网络安全-DoS与DDoS攻击原理(TCP、UDP、CC攻击等)与防御

简介: 网络安全-DoS与DDoS攻击原理(TCP、UDP、CC攻击等)与防御

DoS

简介

DoS,是Denial of Service的简称,即拒绝服务,造成DoS的攻击行为被称为DoS攻击,其目的是使计算机或网络无法提供正常的服务。最常见的DoS攻击有计算机网络带宽攻击和连通性攻击。

一般是使用一台计算机进行攻击。

常见攻击

Smurf

攻击者向网络广播地址发送ICMP包,并将回复地址设置成受害网络的广播地址,通过使用ICMP应答请求数据包来淹没受害主机的方式进行,最终导致该网络的所有主机都对次ICMP应答请求作出答复,导致网络阻塞。更加复杂的Smurf攻击攻击将源地址改为第三方受害者,最终导致第三方崩溃。

Teardrop

Teardrop是一种基于UDP的病态分片数据包的攻击方法。

攻击者A给受害者B发送一些分片IP报文,并且故意将“13位分片偏移”字段设置成错误的值(既可与上一分片数据重叠,也可错开),B在组合这种含有重叠偏移的伪造分片报文时,某些操作系统收到含有重叠偏移的伪造分片数据包时将会出现系统崩溃、重启等现象。利用UDP包重组时重叠偏移(假设数据包中第二片IP包的偏移量小于第一片结束的位移,而且算上第二片IP包的Data,也未超过第一片的尾部,这就是重叠现象。)的漏洞对系统主机发动拒绝服务攻击,最终导致主机宕掉;对于Windows系统会导致蓝屏死机,并显示STOP 0x0000000A错误。

DDoS

DDoS,是Distributed Denial of Service的简称,即分布式拒绝服务,分布式拒绝服务攻击指借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DDoS攻击,从而成倍地提高拒绝服务攻击的威力。

相关事件

Github DDoS事件

迄今为止最大的DDoS攻击发生在2018年2月。美国东部时间2018年2月28日下午12点15分左右,GitHub 遭遇了可能是迄今为止最大的 DDoS 攻击,最高访问量为 1.35Tbps。当地时间2月28日起,GitHub 经历了两次间歇性不可访问。攻击发生 10 分钟后,GitHub 向 CDN 服务商 Akamai 请求协助,访问 GitHub 的流量交由后者接管。攻击在 Akamai 介入 8 分钟后结束,GitHub 确认该网站上用户数据的机密性或完整性未受到威胁。

这是一个memcached DDoS攻击,因此没有涉及僵尸网络。相反,攻击者利用了一种称为memcached的流行数据库缓存系统的放大效应。通过使用欺骗性请求充斥memcached服务器,攻击者能够将其攻击放大约50,000倍!

幸运的是,GitHub正在使用DDoS保护服务,该服务在攻击开始后的10分钟内自动发出警报。此警报触发了缓解过程,GitHub才能够快速阻止攻击。最终这次世界上最大的DDOS攻击只持续了大约20分钟。

最近发生的事件:

17岁少年买不到票,买DDOS攻击套餐攻击南航

原理

常见的攻击针对以下协议:

  • TCP
  • UDP
  • NTP
  • DNS
  • HTTP
  • SSDP
  • Memcached

这里对其中几个进行简要说明

TCP SYN Flood

TCP SYN Flood是一种利用TCP协议缺陷的攻击,这种方式通过伪造IP向攻击服务器发送大量伪造的TCP SYN请求,被攻击服务器回应握手包后(SYN+ACK),伪造的IP不会回应之后的握手包,服务器会保持在SYN_RECV状态,并尝试重试。这会使得TCP等待连接队列资源耗尽,正常业务无法进行。

UDP

无论是基于 DNS 还是基于 NTP,其最终都是基于 UDP 协议的。在 UDP 协议中正常情况下客户端发送请求包到服务端,服务端返回响应包到客户端,但是 UDP 协议是面向无连接的,所以客户端发送请求包的源 IP 很容易进行伪造,当把源 IP 修改为受害者的 IP,最终服务端返回的响应包就会返回到受害者的 IP。这就形成了一次反射攻击。

放大攻击就是一次小的请求包最终会收到一个或者多个多于请求包许多倍的响应包,这样就达到了四两拨千斤的效果。

CC攻击(Http Flood)

CC(Challenge Collapsar)攻击是一种针对资源的DoS攻击,攻击者通常会常用请求较为消耗服务器资源的方式来达到目的。

CC攻击的方式有很多种,常见的攻击可以通过大量访问搜索页、物品展示页等消耗大的功能来实现。部分HTTP服务器也可通过上传超大文件、发送大量且复杂的参数的请求来实现攻击。

防御

  • 基于特定攻击的指纹检测攻击,对相应流量进行封禁/限速操作
  • 对正常流量进行建模,对识别出的异常流量进行封禁/限速操作
  • 基于IP/端口进行综合限速策略
  • 基于地理位置进行封禁/限速操作
    云服务商一般都会提供DDOS防御服务,一般通过流量清洗的方式,视频类的网站可以购买CDN。

参考

gatekeeper

TCP协议详解

UDP协议详解

NTP协议

SSDP协议

Memcached

阿里云-DDOS缓解

相关文章
|
2天前
|
域名解析 存储 网络协议
TCP套接字【网络】
TCP套接字【网络】
18 10
|
23天前
|
云安全 缓存 网络协议
如何防护DDoS攻击,筑牢网络安全防线
随着信息技术的飞速发展,网络已成为现代社会不可或缺的一部分,极大地便利了个人社交和商业活动。然而,网络空间在创造无限机遇的同时,也潜藏着诸多威胁,其中分布式拒绝服务攻击(DDoS,Distributed Denial of Service)以其高破坏力和难以防范的特点,成为网络安全领域的一大挑战。本文将从DDoS攻击的原理出发,详细探讨如何有效防护DDoS攻击,以筑牢网络安全防线。
|
1月前
|
网络协议 C语言
C语言 网络编程(十三)并发的TCP服务端-以进程完成功能
这段代码实现了一个基于TCP协议的多进程并发服务端和客户端程序。服务端通过创建子进程来处理多个客户端连接,解决了粘包问题,并支持不定长数据传输。客户端则循环发送数据并接收服务端回传的信息,同样处理了粘包问题。程序通过自定义的数据长度前缀确保了数据的完整性和准确性。
|
1月前
|
网络协议 C语言
C语言 网络编程(十四)并发的TCP服务端-以线程完成功能
这段代码实现了一个基于TCP协议的多线程服务器和客户端程序,服务器端通过为每个客户端创建独立的线程来处理并发请求,解决了粘包问题并支持不定长数据传输。服务器监听在IP地址`172.17.140.183`的`8080`端口上,接收客户端发来的数据,并将接收到的消息添加“-回传”后返回给客户端。客户端则可以循环输入并发送数据,同时接收服务器回传的信息。当输入“exit”时,客户端会结束与服务器的通信并关闭连接。
|
1月前
|
网络协议 C语言
C语言 网络编程(十二)TCP通信创建-粘包
TCP通信中的“粘包”现象指的是由于协议特性,发送方的数据包被拆分并在接收方按序组装,导致多个数据包粘连或单个数据包分割。为避免粘包,可采用定长数据包或先传送数据长度再传送数据的方式。示例代码展示了通过在发送前添加数据长度信息,并在接收时先读取长度后读取数据的具体实现方法。此方案适用于长度不固定的数据传输场景。
|
29天前
|
网络协议
网络协议概览:HTTP、UDP、TCP与IP
理解这些基本的网络协议对于任何网络专业人员都是至关重要的,它们不仅是网络通信的基础,也是构建更复杂网络服务和应用的基石。网络技术的不断发展可能会带来新的协议和标准,但这些基本协议的核心概念和原理将继续是理解和创新网络技术的关键。
65 0
Adobe XD CC 55.2.12.2 是一款非常专业的矢量图形规划软件Adobe XD 2023版本软件下载安装教程(内含所有版本)
Adobe XD CC 55.2.12.2 是一款非常专业的矢量图形规划软件,全新的桌面端UX原型工具,这是新一代网页与移动应用的UX设计工具。xd能够帮助设计者快速有效的设计图形、建立手机APP以及网站原型等等设计制作,支持设备的尺寸多样。集原型、设计和交互等功能于一体,从网站和移动应用程序到语音交互都可轻松实现,Adobe XD CC带来了响应调整大小、自动动画、语音原型、插件和应用程序集成等新功能,
Adobe Photoshop CC 2019下载中文永久安装和破解教程
Adobe Photoshop CC 2019下载中文永久安装和破解教程
49961 0
Animate CC 2019免费下载丨Adobe Animate CC 2019下载中文完整版永久安装教程
Adobe 提供了一整套可互相配合使用的动画应用程序,助您实现所有创意。使用 Animate CC 创建适用于游戏、应用程序和 Web 的交互式矢量动画。利用 Character Animator CC 将人物实时制成动画。
8397 0
AICC2019下载Adobe Illustrator CC 2019中文完整破解版免费下载与安装教程
AICC2019下载Adobe Illustrator CC 2019中文完整破解版免费下载与安装教程 在2018年10月15日,Adobe公司正式宣布Adobe Illustrator CC 2019更新之后,很多小伙伴都迫不及待的要下载使用,体验一下最新的功能,以及如何永久的使用它呢?那么接下来小编就带大家如何进行安装与永久使用的教程。
14223 0
下一篇
无影云桌面