什么是DDoS攻击

news2025/2/27 23:22:50

DDoS攻击

  • 1. 定义
  • 2. DDoS攻击类型
    • 2.1 网络层攻击
    • 2.2 传输层攻击
    • 2.3 应用层攻击
  • 3.DDoS攻击态势特点

1. 定义

分布式拒绝服务(DDoS)攻击是一种常见的网络攻击形式。攻击者利用恶意程序对一个或多个目标发起攻击,企图通过大规模互联网流量耗尽攻击目标的网络资源,使目标系统无法进行网络连接、无法提供正常服务。

根据攻击位置的不同,可以将DDoS攻击分为“网络层攻击”、“传输层攻击”和“应用层攻击”三种类型。攻击者经常组合使用不同的攻击类型,攻击复杂度持续演进,产生的攻击威胁也在不断增大。DDoS攻击会给攻击目标造成巨大的经济和品牌损失,同时,受攻击对象的核心业务数据也存在被窃取的风险。因此,各行各业都采取部署“DDoS攻击防御系统”的方式阻断DDoS攻击,降低其对正常业务的影响。

2. DDoS攻击类型

攻击者会针对不同的网络层次发起攻击。根据攻击位置的不同,可以将DDoS攻击分为“网络层攻击”、“传输层攻击”和“应用层攻击”三种类型。

2.1 网络层攻击

“网络层”主要负责处理数据包在不同网络间的路由和转发。针对网络层的DDoS攻击主要目的是消耗网络带宽资源,常见攻击子类包括“ICMP Flood攻击”、“ARP Flood攻击”和“IP分片攻击”等。

(1)ICMP Flood

ICMP(Internet Control Message Protocol,因特网控制报文协议)是TCP/IP协议族的一个子协议,用于在IP主机、路由器之间传递控制消息。ICMP协议本身特点决定了它非常容易被用于攻击网络上的路由器和主机。当攻击者向目标网络发送大量的ICMP数据包时,目标主机会耗费大量的CPU资源去处理和响应,直至耗尽设备资源,无法为合法用户提供正常服务。

在这里插入图片描述

(2)ARP Flood

ARP(Address Resolution Protocol,地址解析协议)是用来将IP地址解析为MAC地址的协议。ARP协议主要以广播的方式发送ARP请求。同网段内的主机都可以收到广播请求,这为攻击者提供了可乘之机。攻击者通过发送大量的ARP请求,使有限的网络资源被无用的广播信息所占用,造成网络拥堵。其次,因为ARP协议没有安全认证机制,所以只要主机接收到ARP应答包,都会缓存在ARP表中,这为ARP欺骗提供了可能。

(3)IP分片攻击

IP协议在传输数据包时,会将数据报文分为若干分片进行传输,并在目标系统中进行重组。IP分片是网络环境中经常发生的事件,但是,如果数据被人为恶意分片就会产生DDoS攻击。攻击者将经过恶意分段的数据包发送至目标网络,导致目标网络耗费大量资源进行重组,直至资源枯竭。

2.2 传输层攻击

“传输层”主要负责设备间的端到端通信和网络间通信流量控制和错误控制。针对传输层的DDoS攻击主要目的是使目标服务器或网络设备过载,常见攻击子类包括“SYN Flood攻击”、“ACK Flood攻击”和“UDP Flood攻击”等。

(1)SYN Flood

SYN Flood是互联网最原始、最经典的DDoS攻击之一,主要利用了TCP协议的三次握手机制。攻击者通常利用工具或控制僵尸主机向服务器发送海量的变源IP地址或变源端口的SYN报文,服务器响应报文后产生大量的半连接,直至系统资源被耗尽,服务器无法提供正常的服务。

在这里插入图片描述

(2)ACK Flood

攻击者通过僵尸网络向目标服务器发送大量的ACK报文,报文带有超大载荷,会引起链路拥塞。或向目标服务器发送极高速率的变源变端口请求,导致转发设备异常,从而引起网络瘫痪。

(3)UDP Flood

UDP Flood攻击常用于大带宽DDoS攻击。攻击者使用包含无状态UDP协议的IP数据包充塞目标主机的端口,受害主机会寻找与UDP数据包相关的应用程序。如果没有找到,就向发送者回发一条“目标不可达”消息。一旦目标主机被攻击流量淹没,系统就会失去响应,从而造成合法用户无法正常访问的现象。

在这里插入图片描述

2.3 应用层攻击

“应用层”主要负责提供常见的网络应用服务,如电子邮件、网页浏览、文件传输和其他应用程序。针对应用层的DDoS攻击主要目的是让真实用户无法正常使用应用程序,常见攻击子类包括“DNS Flood攻击”、“HTTP Flood攻击”和“CC攻击”等。

(1)DNS Flood

攻击者通过操纵大量傀儡机器,对目标网络发起海量域名查询请求,以中断该域的DNS解析。这种攻击将会破坏网站、API或Web应用程序响应合法流量的能力,让合法用户无法查找到用于调用特定资源的地址,导致业务暂时中断或停止。

在这里插入图片描述

(2)HTTP Flood

  • HTTP GET 攻击:攻击者操控多台设备向目标服务器发送对图像、文件或其他资产请求,当目标服务器被传入请求和响应所淹没时,来自正常流量源的业务请求也将被拒绝。
  • HTTP POST 攻击:与发送 POST 请求所需的处理能力和带宽相比,处理表单数据和运行必要数据库命令的过程相对密集。这种攻击利用相对资源消耗的差异,直接向目标服务器发送大量POST请求,直至目标服务器容量饱和并拒绝服务为止。
    在这里插入图片描述

(3)CC攻击

CC(Challenge Collapsar)攻击常用于攻击提供网页访问服务的服务器。CC攻击是一种针对Http业务的攻击手段,该攻击模式不需要太大的攻击流量,它是对服务端业务 处理瓶颈的精确打击,攻击目标包括:大量数据运算、数据库访问、大内存文件等。攻击者通过代理服务器向目标服务器发送大量貌似合法的请求,使CPU长时间处于高负荷运行状态,永远都有处理不完的连接。攻击会导致正常访问被中止,最终宕机崩溃。

3.DDoS攻击态势特点

  • 大流量攻击持续呈现秒级加速态势,爬升速度再创新高,不断挑战防御系统响应速度。 T级攻击将大流量攻击“Fast Flooding”的特点演绎至极致。攻击流量峰值爬升至800Gbps-1Tbps区间,2021年需20秒。2022年仅需要10秒。
  • 网络层攻击和应用层攻击持续演绎“短平快”战术,攻击复杂度持续演进。 57.40%的网络层攻击持续时长不超过5分钟,40.49%的应用层攻击持续时长不超过5分钟。

2022年,SYN Flood、ACK Flood、UDP Flood、UDP反射、TCP反射是Top5网络层攻击。其中,ACK Flood和UDP Flood频次占比近三年呈逐年递增趋势;2022年,随着互联网HTTP流量逐步采用TLS加密,HTTP Flood攻击频次占比呈逐年降低趋势,但TLS层攻击活跃,亦进一步拉升了TLS异常会话攻击占比。

  • 网络层CC攻击持续演进,攻击威胁增大,不断挑战防御系统自动化程度。 网络层CC攻击是攻击者将“虚假源泛洪攻击技术”和“会话层攻击技术”巧妙结合的典型案例。因攻击效果显著,被广泛应用于攻击HTTP和HTTPS端口。攻击者会在一次攻击中采用高速和低速混合的攻击模式,这极大地增加了防御难度。

2021年-2022年,网络层CC攻击演进出了多个变种,使得网络层CC攻击成为了互联网最难防御的攻击之一。

  • 传媒和互联网行业、政府和公共事业、教育、金融、医疗卫生是Top5攻击目标行业。

相比2021年,2022年教育行业攻击频次占比增长56.6倍,医疗卫生行业占比增长8.6倍,政府和公共事业占比增长3.6倍。“工业互联网”作为新兴发展领域,也逐渐进入黑产攻击视线,2022年遭受攻击频次是2021年的18倍。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1278296.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

java学习part29线程通信

139-多线程-线程间的通信机制与生产者消费者案例_哔哩哔哩_bilibili 1.等待唤醒 类似于golang的channel, 1.1用法 类似于go的wait(), 1.sleep和wait的一个重大区别是,sleep不会让线程失去同步监视器,而wait会释放 2.wait必须tr…

【深度学习】深度学习框架的环境配置

目录 1. 配置cuda环境 1.1. 安装cuda和cudnn 1.1.1. 显卡驱动配置 1.1.2. 下载安装cuda 1.1.3. 下载cudnn,将解压后文件复制到cuda目录下 1.2. 验证是否安装成功 2. 配置conda环境 2.1. 安装anaconda 2.2. conda换源 2.3. 创建conda环境 2.4. pip换源 3…

使用MD5当做文件的唯一标识,这样安全么?

使用MD5作为文件唯一标识符可靠么? 文章目录 使用MD5作为文件唯一标识符可靠么?什么是MD5?MD5的用途MD5作为文件唯一标识的优劣优势劣势 使用MD5作为文件唯一标识的建议其他文件标识算法结束语 什么是MD5? MD5(Messag…

企业计算机服务器中了locked1勒索病毒怎么解锁,locked1勒索病毒数据恢复

随着网络技术在企业的不断应用,企业的生产运营效率得到了极大提升,越来越多的企业利用网络开展工作,这也导致了企业的受到的网络安全威胁也不断增加。在本月,云天数据恢复中心陆续接到很多企业的求助,企业的计算机服务…

无线物理层安全学习

文章目录 3.17到3.203.85到3.88 3.17到3.20 3.85到3.88

np.array无法直接用matplotlib画图,因为需要借用np.squeeze先转化

文章目录 前言一、使用步骤1.没使用np.squeeze转化2.使用np.squeeze转化 前言 实际工作中,时而难免会遇见np.array无法直接用matplotlib画图的情况,这个时候,是因为在画图之前少了一个步骤,需要先借用np.squeeze先转化 一、使用步…

Gateway网关--java

网关是建立于请求到服务之前的,可以用网关限制访问量,添加过滤等 创建网关模块,引入相关pome依赖 配置yml 具体相关的作用可以参考 Spring Cloud Gateway 这样就可以了 基础的网关配置,我们的实现效果 我们可以通过10010端口访问,通过转发到nacos,再找到相应的模块,实现…

JS逆向-mytoken之code参数

前言 本文是该专栏的第60篇,后面会持续分享python爬虫干货知识,记得关注。 本文以mytoken为例,通过js逆向获取其code参数的生成规律。具体的“逆向”思路逻辑,笔者将会详细介绍每个步骤,并且将在正文结合“完整代码”进行详细说明。 接下来,跟着笔者直接往下看正文详细…

P5 链表 尾部插入新节点(不是指定点)

目录 前言 01 链表数据插入之直接在链表尾插入(不是指定点) 02 尾插创建链表优化 示例代码 前言 🎬 个人主页:ChenPi 🐻推荐专栏1: 《C》✨✨✨ 🔥 推荐专栏2: 《 Linux C应用编程(概念…

跟着chatgpt一起学|2.clickhouse入门(1)

上周我们一起学习了spark,这周让chatgpt帮我们规划下clickhouse的学习路径吧! 目录 ​编辑 1.了解Clickhouse的基本概念 1.1 Clickhouse是什么? 1.2 ClickHouse的特点和优势 1.3 Clickhouse的基本架构与组件 1.了解Clickhouse的基本概念…

Sql Server数据库跨机器完整恢复(源文件恢复)

问题描述 在操作系统异常的情况下,SQL Server 和相关的业务系统遭受了不可用的情况。由于操作系统问题,导致旧服务器无法正常运行。为了恢复业务功能并确保数据完整性,采取了以下步骤来在新机器上进行 SQL Server 的重新安装和数据恢复。 面…

软件工程 - 第8章 面向对象建模 - 3 - 动态建模

状态图 状态是指在对象生命周期中满足某些条件、执行某些活动或等待某些事件的一个条件和状况 。 案例一:描述烧水器在工作时的详细行为细节 “人就是一个类,而你”、我”、张三”等都是“人这个类的一个实例,站着”、“躺着等都是对象的一…

POSTGRESQL中如何利用SQL语句快速的进行同环比?

1. 引言 在数据驱动的时代,了解销售、收入或任何业务指标的同比和环比情况对企业决策至关重要。本文将深入介绍如何利用 PostgreSQL 和 SQL 语句快速、准确地进行这两种重要分析。 2. 数据准备 为了演示,假设我们有一张 sales 表,存储了销…

基于社区电商的Redis缓存架构-写多读多场景下的购物车缓存架构

社区电商的购物车缓存架构 在购物车中的功能主要有这几个:商品加入购物车、查看购物车列表、删除购物车商品、选中购物车商品进行结算 这里购物车的场景和之前用户信息以及菜谱分享信息还不同,如果在举办了大型购物活动时,购物车可能需要面…

古琴零基础自学考级入门,从初级到高级古琴教学全集

一、教程描述 本套教程是古琴的组合教程,内容是超级齐全的,包括了很多套完整的古琴教程,来自国内知名的古琴教师、专家,教授等,都是从零基础开始讲起的,而且理论与实践相结合,对于刚学古琴入门…

【LeetCode热题100】【双指针】移动零

给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进行操作。 示例 1: 输入: nums [0,1,0,3,12] 输出: [1,3,12,0,0] 示例 2: 输入: nums [0] 输出…

MyBatis的创建,简单易懂的一篇blog

文章目录 一、MyBatis是什么二、操作流程三.配置resource总结 一、MyBatis是什么 MyBatis 是⼀款优秀的持久层框架,它⽀持⾃定义 SQL、存储过程以及⾼级映射。MyBatis 去除了⼏乎所有的 JDBC 代码以及设置参数和获取结果集的⼯作。MyBatis 可以通过简单的 XML 或注…

试用 Windows Terminal 中的 Terminal Chat 功能

文章目录 1. 引言2. 设置 Terminal Chat2.1 安装 Windows Terminal Canary2.2 设置服务地址和密钥 3. 使用 Terminal Chat3.1 打开聊天3.2 对话使用 4. 最后 1. 引言 最近,Windows Terminal Canary 推出了一项名为 Terminal Chat 的新功能,它允许用户在…

深入理解贝叶斯分类与朴素贝叶斯模型(Naive Bayes, NB):从基础到实战

目录 贝叶斯分类 公式 决策规则 优点 贝叶斯分类器的例子——垃圾邮件问题 1. 特征(输入): 2. 类别: 3. 数据: 4. 模型训练: 注:类别先验概率 5. 模型预测: 朴素贝叶斯模…

进程间通信 管道

在Linux中,管道是一种通信机制,用于将一个程序的输出直接连接到另一个程序的输入。从本质上说,管道也是一种文件,但它又和一般的文件有所不同,它可以克服使用文件进行通信的两个问题,具体表现为限制管道的大…