网络安全-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缓解

相关文章
|
22天前
|
机器学习/深度学习 存储 算法
深度神经网络中的BNN和DNN:基于存内计算的原理、实现与能量效率
深度神经网络中的BNN和DNN:基于存内计算的原理、实现与能量效率
29 0
|
28天前
|
NoSQL Redis
Redis原理之网络通信协议笔记
1. RESP协议 ​2. 自定义Socket连接Redis
|
28天前
|
NoSQL Linux Redis
Redis原理之网络模型笔记
Redis采用单线程模型,这意味着一个Redis服务器在任何时刻都只会处理一个请求。Redis的网络模型涉及到阻塞I/O(Blocking I/O)、非阻塞I/O(Non-blocking I/O)、I/O多路复用(I/O Multiplexing)、信号驱动I/O(Signal-driven I/O)以及异步I/O(Asynchronous I/O)。
|
5天前
|
网络协议 Java 网络安全
【JavaEE初阶】 初识网络原理
【JavaEE初阶】 初识网络原理
|
25天前
|
缓存 安全 网络安全
【网络安全】Web缓存欺骗攻击原理及攻防实战
【网络安全】Web缓存欺骗攻击原理及攻防实战
23 0
【网络安全】Web缓存欺骗攻击原理及攻防实战
|
25天前
|
SQL 编译器 网络安全
【网络安全 | SQL注入】一文讲清预编译防御SQL注入原理
【网络安全 | SQL注入】一文讲清预编译防御SQL注入原理
18 0
|
25天前
|
网络协议 网络安全
【网络安全 | 网络协议】结合Wireshark讲解TCP三次握手
【网络安全 | 网络协议】结合Wireshark讲解TCP三次握手
15 0
|
25天前
|
安全 Shell 网络安全
【网络安全】一文讲清文件写入漏洞原理及利用方式
【网络安全】一文讲清文件写入漏洞原理及利用方式
12 0
|
29天前
|
安全 测试技术 网络安全
网络安全的行业黑话 ——攻击篇 之攻击者
网络安全的行业黑话 ——攻击篇 之攻击者
25 0
|
29天前
|
供应链 安全 网络协议
网络安全的行业黑话 ——攻击篇 之攻击方法(2)
网络安全的行业黑话 ——攻击篇 之攻击方法(2)
42 0