当前位置: 首页 > news >正文

网络层的DDoS攻击与应用层的DDoS攻击之间的区别

DDoS攻击(即“分布是拒绝服务攻击”),是基于DoS的特殊形式的拒绝服务攻击,是一种分布式、协作的大规模攻击方式,主要瞄准一些企业或政府部门的网站发起攻击。根据攻击原理和方式的区别,可以把DDoS攻击分为两个不同层次,一种是传统的、基于网络层的DDoS攻击,另一种则是现阶段较为常见的、基于应用层的DDoS攻击,这两类不同层面的DDoS攻击方式各有特点,都对网络的安全造成了极大的危害。

一、网络层DDoS攻击原理及方式

常见的网络层DDoS攻击就是利用TCP/IP协议族的一些特征,控制大量的傀儡机发送合理的请求来消耗攻击目标主机的CPU和内存资源,由于攻击目标主机资源的快速消耗,就会使得合法的用户无法得到所请求的服务。

常见的网络层DDoS攻击方式有:

1、SYN-Flood攻击

SYN-Flood攻击是指攻击者利用TCP三次握手的原理,向目标主机发送大量SYN标志的TCP请求,当服务器接收的这些请求数据包的时候,会为这些连接请求建立会话,并且把这些并未建立完整连接的会话排到缓冲区队列中。攻击者可以发送源地址为假的分组,等待服务器发送分组,而由于源地址为假,因为系统发送回来的分组就等不到源地址主机的响应,因此,服务器的带宽和资源将在维持大量的这类半连接上被消耗掉,一旦请求超过了服务器的缓冲区容量,此时服务器就不能再接收新的连接请求了。此时其他合法的用户就无法建立与服务器的连接。

2、ACK-Flood攻击

ACK Flood攻击。在TCP连接建立之后,所有的数据传输TCP报文都是带有ACK标志位的,主机在接收到一个带有ACK标志位的数据包的时候,需要检查该数据包所表示的连接四元组是否存在,如果存在则检查该数据包所表示的状态是否合法,然后再向应用层传递该数据包。如果在检查中发现该数据包不合法,例如该数据包所指向的目的端口在本机并未开放,则主机操作系统协议栈会回应RST包告诉对方此端口不存在。通常状态检测防火墙所做的事情与此类似,只不过防火墙只拦截非法的数据包,而不主动回应。

对比主机以及防火墙在接收到ACK报文和SYN报文时所做动作的复杂程度,显然ACK报文带来的负载要小得多。所以在实际环境中,只有当攻击程序每秒钟发送ACK报文的速率达到一定的程度,才能使主机和防火墙的负载有大的变化。当发包速率很大的时候,主机操作系统将耗费大量的精力接收报文、判断状态,同时要主动回应RST报文,正常的数据包就可能无法得到及时的处理。这时候客户端(以IE为例)的表现就是访问页面反应很慢,丢包率较高。但是状态检测的防火墙通过判断ACK报文的状态是否合法,借助其强大的硬件能力可以较为有效的过滤攻击报文。当然如果攻击流量非常大,由于需要维护很大的连接状态表同时要检查数量巨大的ACK报文的状态,防火墙也会不堪重负导致全网瘫痪。

3、UDP-Flood攻击

UDP在Internet中的应用是比较广泛的,尤其在一类实时性要求较高,而对数据包传输的完整性要求不高的应用来说,这其中以视频和即时通信最为典型,这些服务首先要求保证的不是质量而是实时性。UDP Flood常发生对DNS服务器以及流媒体视频服务器上,UDP是基于无连接的协议,当攻击目标接收到一个UDP数据包时,它会确定目的端口所对应的应用程序。当攻击目标主机发现该应用程序并不存在时,会产生一个目的地址无法连接的ICMP数据包发送给源地址。如果向攻击目标主机的端口发送了足够多的UDP数据包的时候,攻击目标主机就会崩溃。常见的UDP攻击有NTP攻击。

4、ICMP-Flood攻击

ICMP Flood 的攻击原理和ACK Flood原理类似,属于流量型的攻击方式,也是利用大的流量给服务器带来较大的负载,影响服务器的正常服务。由于目前很多防火墙直接过滤ICMP报文,因此ICMP Flood出现的频度较低。

二、应用层DDoS攻击原理及方式

传统上的攻击DDoS是指发生在网络层的DDoS攻击,如本章上文所指的DDoS攻击一般就是指代的网络层DDoS攻击。而应用层DDoS攻击是在网络层DDoS攻击的基础上发展起来的,应用层DDoS攻击是一种新型的攻击方式,这类攻击方式的本质还是基于洪水式的攻击方式,即攻击者通过代理服务器或者僵尸网络向攻击目标发送大量的高频合法请求,以达到消耗攻击目标带宽的目的,然而,应用层DDoS攻击更为主要的目的是要能够消耗主机资源。

常见的应用层DDoS攻击有:

1、 DNS-Flood攻击

DNS-Flood就是攻击者操纵大量傀儡机器,对目标发起海量的域名查询请求。为了防止基于ACL的过滤,必须提高数据包的随机性。常用的做法是UDP层随机伪造源IP地址、随机伪造源端口等参数。在DNS协议层,随机伪造查询ID以及待解析域名。随机伪造待解析域名除了防止过滤外,还可以降低命中DNS缓存的可能性,尽可能多地消耗DNS服务器的CPU资源。

2、 慢连接攻击

在POST提交方式中,允许在HTTP的头中声明content-length,也就是POST内容的长度。在提交了头以后,将后面的body部分卡住不发送,这时服务器在接受了POST长度以后,就会等待客户端发送POST的内容,攻击者保持连接并且以10S-100S一个字节的速度去发送,就达到了消耗资源的效果,因此不断地增加这样的链接,就会使得服务器的资源被消耗,最后可能宕机。

3、CC攻击

CC攻击是基于页面攻击的,主要攻击目标是提供网页访问服务的服务器。这些网页往往存在ASP,JSP,PHP等脚本程序,并且CC攻击会重点调用Mssql、Mysql、Oracle等数据库,并对这些数据库发起操作。对于网页的访问来说,如果只是查看静态的网页内容,这种服务是不会占用太多服务器的资源的,然而当需要访问涉及到用户与页面之间存在交互的动态网页,这时就需要占用服务器的大量资源了。

比如用户在对数据库进行查找,修改时,服务器第一次会把用户所发出的对于数据库的操作返回,进行相应的操作后,第二次再把结果返回给用户,这其中就包括了至少两次的输入输出操作。如果同一时刻有大量的用户发起这样的请求,服务器的性能会很快下降。CC攻击利用了这个特点,模拟许多用户不间断的对服务器进行访问,而且CC攻击往往是攻击服务器上开销比较大的动态页面。这样的攻击方式有很强的隐蔽性,使得系统很难区分是正常的用户操作还是恶意的攻击。

CC攻击和HTTP GET攻击的攻击方式差不多,唯一的区别在于CC攻击是利用了代理作为攻击的发起点,这一方面使得追查攻击源变得困难。而HTTP GET攻击则并没有使用代理的方式。另一方面CC攻击还利用了代理服务器的缓存特性,即当客户端断开连接得时候,代理服务器还能保持和服务器的一段时间的连接,这个特性可以保障CC攻击的发起者无需关心由服务器发回的响应,而继续保持对服务器的持续交互。CC攻击的这种特性更加严重损害了服务器的性能。因此,CC攻击对服务器性能所造成的损失将更为巨大,也更加难以防范。而当HTTP GET连接被断开之后,发起攻击的傀儡机也就不能再继续发送请求数据包了,这种情况下HTTP GET攻击就比CC攻击显得易于防范,其危害也相应的就显得较易控制。

三、应用层DDoS攻击与网络层DDoS攻击的差异

应用层DDoS攻击和传统的网络层DDoS攻击之间存在着较大的差别,很多网络层DDoS攻击的特性在应用层攻击中已经不复存在了,这两类攻击的具体差别体现在以下几个方面:

1、两者实现的层次不同

网络层DDoS攻击发生在低层,而应用层DDoS攻击利用了高层协议实现。网络层DDoS攻击的典型攻击方式是:攻击者使用虚假的IP地址来控制攻击节点,然后由被控制的攻击节点向目标主机发送大量的攻击数据包,这些数据包包括有UDP和ICMP等,同时这种攻击方式将会利用TCP协议三次握手机制的缺点,使得攻击目标在收到这些不存在的IP地址的连接请求之后,为了维护一个开销非常大的半开连接而需要消耗大量的CPU和内存资源,最终将导致无法再为用户提供服务。

而应用层则DDoS则不然,以Web服务为例,基于Web的应用(如HTTP和HTTPS)通过开放的TCP端口为客户提供服务,应用层DDoS攻击利用了高层的协议,其攻击得以实现是以正常TCP连接和IP分组为前提,因此这就不具备传统DDoS攻击的行为特征(以TCP半开放连接最为显著),而且它无法采用虚假的IP地址(利用虚假的IP地址将无法建立合法和有效的TCP连接)的方法。因为基于网络层的检测系统很难对高层的行为进行判断,所以系统就无法判断经过这些端口的用户请求由正常用户还是攻击者发出的,因此针对高层协议的应用层DDoS攻击的请求可以顺利穿越基于底层协议的检测系统。

2、应用层DDoS有更多更复杂的形式

以Web服务器为例,它可以提供诸如数据库查询、客户端服务端的交互等服务,所以攻击者通过大量傀儡机向攻击目标主机发送请求数据包的攻击方式并不是应用层DDoS攻击的主流攻击方式,相反,应用层DDoS攻击可以用低速率的请求、少量的攻击节点来实现攻击效果。从这点上来看,应用层的DDoS攻击远比网络层DDoS攻击来的复杂,它可以实现更多的功能。因此,应用层DDoS攻击可以产生更大的破坏力。这种以简单的HTTP请求就可以触发服务器执行一系列复杂操作的攻击方式是应用层DDoS和网络层DDoS攻击的差异之一。

总的来说,网络层DDoS攻击和应用层DDoS攻击的主要区别在于攻击的目标和手段。网络层攻击主要针对网络基础设施,而应用层攻击则针对应用程序本身。因此,在防御策略上也需要有所不同。对于网络层DDoS攻击,防御措施通常包括配置防火墙、路由器和交换机等网络设备以过滤伪造或无效的数据包,以及使用内容分发网络(SCDN)等技术来分散和缓解攻击流量。对于应用层DDoS攻击,防御措施则更加复杂。除了使用防火墙等基础设施防御手段外,还需要加强应用程序的安全性和稳定性,例如通过限制请求频率、实施验证码机制、使用负载均衡等技术来分散和过滤有害请求。总之,无论是网络层DDoS攻击还是应用层DDoS攻击,都对网络安全构成了严重威胁。因此,我们需要不断学习和研究新的防御技术和策略,以确保网络安全和稳定。

相关文章:

网络层的DDoS攻击与应用层的DDoS攻击之间的区别

DDoS攻击(即“分布是拒绝服务攻击”),是基于DoS的特殊形式的拒绝服务攻击,是一种分布式、协作的大规模攻击方式,主要瞄准一些企业或政府部门的网站发起攻击。根据攻击原理和方式的区别,可以把DDoS攻击分为两…...

Windows系统安全策略设置之本地NTLM重放提权

经安全部门研究分析,近期利用NTLM重放机制入侵Windows 系统事件增多,入侵者主要通过Potato程序攻击拥有SYSTEM权限的端口伪造网络身份认证过程,利用NTLM重放机制骗取SYSTEM身份令牌,最终取得系统权限,该安全风险微软并…...

AI云增强升级!还原生动人像,拍出质感照片

近期不少细心用户发现,在用HUAWEI Mate 60 Pro手机拍照后,使用相册中的AI云增强功能,照片变得更加细腻有质感。这是因为AI云增强升级并更新支持了人像模式拍摄的照片,高清自然的人像细节还原和单反级别的光学景深效果,…...

PHP WebSocket:技术解析与实用指南

本文旨在帮助初学者掌握在PHP中使用WebSocket的关键概念和技术。我们将深入讨论从建立连接、绑定到监听等各方面的操作,并提供易于理解和实践的指导。 一、socket协议的简介 WebSocket是什么,有什么优点 WebSocket是一个持久化的协议,这是…...

K8S实战:Centos7部署Kubernetes1.24.0集群

本人在参考Kubernetes(k8s) 1.24.0版本基于Containerd的集群安装部署部署Kubernetes1.24.0集群时,遇到几个问题,下面将要注意的点罗列在下面: 集群需要配置hosts,如下所示,IP根据自己的实际情况填写,否则在kubeadm in…...

webpack的使用(中)

前言:(承接webpack的使用(上))在实际开发过程中,webpack 默认只能打包处理以 .js 后缀名结尾的模块,其他非 js 后缀名结尾的模块,webpack 默认处理不了,需要调用 loader 加载器才可以正常打包&a…...

matlab经验模式分解的R波检测算法

1、内容简介 略 56-可以交流、咨询、答疑 2、内容说明 略 心血管疾病是威胁人类生命的主要疾病之一,而心电信号(electrocardiogram, ECG) 则是评价心脏功能的主要依据,因此,关于心电信号检测处理的研究一直为各方所…...

win10编译openjdk源码

上篇文章作者在ubuntu系统上实践完成openjdk源码的编译,但是平常使用更多的是window系统,ubuntu上编译出来JDK无法再windows上使用。所以作者又花费了很长时间在windows系统上完成openjdk源码的编译,陆续花费一个月的时间终于完成了编译。 本…...

mysql 自定义函数create function

方便后续查询,做以下记录; 自定义函数是一种与存储过程十分相似的过程式数据库对象, 它与存储过程一样,都是由 SQL 语句和过程式语句组成的代码片段,并且可以被应用程序和其他 SQL 语句调用。 自定义函数与存储过程之间…...

【析】装卸一体化车辆路径问题的自适应并行遗传算法

0 引言 国内外有关 VRPSPD的文献较多,求解目标多以最小化车辆行驶距离为主,但现实中可能存在由租赁费用产生的单次派出成本,需要综合考 虑单次派车成本和配送路径成本。…...

react项目中的redux以及react-router-dom

扫盲知识点&#xff1a; 1 传递自定义事件&#xff1a; <button onClick{(e)>{change(e)}}>获取事件对象e</button> 将事件对象e传递到了change的这个方法中。 2 同时传递自定义事件和参数&#xff1a; <button onClick{(e)>{change(‘我…...

django学习网址

https://www.django.cn/ Django中文网 https://docs.djangoproject.com/zh-hans/5.0/ Django 教程 | 菜鸟教程 (runoob.com) https://gitee.com/djangoadmin/DjangoAdmin_Django_Layui DjangoStarter: 基于Django定制的快速Web开发模板&#xff0c;功能包括&#xff1a;Do…...

@ 代码随想录算法训练营第4周(C语言)|Day21(二叉树)

代码随想录算法训练营第4周&#xff08;C语言&#xff09;|Day21&#xff08;二叉树&#xff09; Day21、二叉树&#xff08;包含题目 ● 530.二叉搜索树的最小绝对差 ● 501.二叉搜索树中的众数 ● 236. 二叉树的最近公共祖先 &#xff09; 530.二叉搜索树的最小绝对差 题目…...

Android的消息机制--Handler

一、四大组件概述 Android的消息机制是由Handler、Message、MessageQueue&#xff0c;Looper四个类支撑&#xff0c;撑起了Android的消息通讯机制&#xff0c;Android是一个消息驱动系统&#xff0c;由这几个类来驱动消息与事件的执行 Handler&#xff1a; 用来发送消息和处…...

获取用户信息与token理解

获取用户信息和token是在开发Web应用程序时常见的需求&#xff0c;可以通过以下步骤来实现&#xff1a; 用户登录&#xff1a;用户在应用程序中输入用户名和密码进行登录验证。一旦验证成功&#xff0c;应用程序会生成一个唯一的token&#xff0c;并将其返回给客户端。存储tok…...

网络设备和网络软件

文章目录 网络设备和网络软件网卡交换机交换机的三个主要功能交换机的工作原理第二层交换和第三层交换交换机的堆叠和级联 路由器路由器工作原理 网关网关的分类 无线接入点(AP)调制解调器网络软件 网络设备和网络软件 网卡 网络接口卡又称网络适配器&#xff0c;简称网卡。网…...

全连接层是什么

个人浅显的看法: 当前层的每一个神经元&#xff0c;都和下一层的每一个神经元有连接&#xff0c;叫全连接层。 当前层有n个神经元&#xff0c;下一层有m个神经元&#xff0c;则全连接层&#xff0c;当前层的n个神经元和下一层m个神经元都有连接...

JAVA工程师面试专题-《Redis》篇

目录 一、基础 1、Redis 是什么 2、说一下你对redis的理解 3、Redis 为什么这么快&#xff1f; 4、项目中如何使用缓存&#xff1f; 5、为什么使用缓存&#xff1f; 6、Redis key 和value 可以存储最大值分别多是多少&#xff1f; 7、Redis和memcache有什么区别&#xf…...

JavaScript BOM

BOM&#xff1a;浏览器对象模型&#xff0c;可以让我们通过js来操作浏览器 window 代表整个浏览器窗口 同时也是页面中的全局对象 Location 代表浏览器地址栏信息 Navigator 代表浏览器信息 可以获取不同的浏览器信息 History 代表浏览器的历史记录 Screen 代表用户的屏幕信…...

uniapp微信小程序-项目实战修改密码

图标是使用uview里面的图标&#xff0c;icfont也可以 以下是所有代码 <template><view><!-- 密码三个 --><view class"password" v-for"(item,index) in userList"><view class"contentuser"><view class&qu…...

linux系统---防火墙拓展

目录 一、iptables 1.基本语法 2.四表五链——重点记忆 2.1四表 2.2五链 2.3总结 3.iptables选项示例 3.1 -Z 清空流量计数 3.2 -P 修改默认规则 3.3 -D 删除规则 3.4 -R 指定编号替换规则 4.白名单 5.通用匹配 6.示例 6.1添加回环网卡 6.2可以访问端口 6.3 主…...

就业的二三事

先说一下当前本人的情况&#xff1a;双非本一&#xff0c;研二在读&#xff0c;一篇图像处理方面的sci一区&#xff08;二作&#xff09;&#xff0c;日常工作语言为python&#xff0c;有过一段开源实习。要开始准备实习了&#xff0c;发个帖子记录一下自己所收集的信息。 前几…...

Go语言必知必会100问题-05 接口污染

接口污染 在Go语言中&#xff0c;接口是我们设计和编写代码的基石。然而&#xff0c;像很多概念一样&#xff0c;滥用它是不好的。接口污染是指用不必要的抽象来编写代码&#xff08;刻意使用接口&#xff09;&#xff0c;使得代码更难以理解。这是具有不同习惯&#xff0c;特…...

FastBee商业版本源码获取下载

一、系统功能 系统功能功能说明开源版本商业版本产品管理产品详情、产品物模型、产品分类、设备授权、产品固件支持支持设备管理设备详情、设备分组、设备日志、设备分享、设备实时控制、实时状态、数据监测支持支持物模型管理属性&#xff08;设备状态和监测数据&#xff09;…...

Java实战:Spring Boot集成Elasticsearch全文搜索引擎

本文将详细介绍如何在Spring Boot应用程序中集成Elasticsearch全文搜索引擎。我们将探讨Elasticsearch的基本概念&#xff0c;以及如何使用Spring Boot和Spring Data Elasticsearch模块来实现全文搜索功能。此外&#xff0c;我们将通过具体的示例来展示如何在Spring Boot应用程…...

python 进程笔记二(通讯) (概念+示例代码)

1、为什么要掌握进程间通信 Python代码效率由于受制于GIL全局锁限制&#xff0c;多线程不能利用多核CPU来加速&#xff0c;而多进程方式却可以绕过GIL限制, 发挥多CPU加速的优势&#xff0c;达到提高程序的性能的目的。 然而进程间通信却是不得不考虑的问题。 进程不同于线程&a…...

电机控制-----电机极对数,相电感,相电阻以及磁链常数的测量

电机控制-----电机极对数&#xff0c;相电感&#xff0c;相电阻以及磁链常数的测量 我们在做电机控制的时候&#xff0c;拿到一个电机首先要知道它的参数&#xff0c;然后才能进行相应的开发&#xff0c;我这里介绍的是通过平常常用的手段去获得电机的参数&#xff1a;极对数&…...

SQL注入之oracle注入+SQLbypass+sqlmap实战

学习路还很长&#xff0c;切莫轻言放弃&#xff01; 目录 Oracle数据库介绍 Oracle数据库和MySQL数据库的差别 Oracle数据库注入 SQLbypass姿势 sqlmap工具实战(kali自带) Oracle数据库介绍 Oracle数据库是全球最知名的关系型数据库管理系统&#xff08;RDBMS&#xff09…...

【GPTs分享】GPTs分享之Write For Me

Write For Me 是一个专门定制的GPT版本&#xff0c;旨在为用户提供高质量的文本内容创作服务。它适用于各种写作需求&#xff0c;从商业计划、学术文章到创意故事等。下面是从简介、主要功能、使用案例、优点和局限性几个方面对Write For Me 的详细介绍。 简介 Write For Me …...

css4浮动+清除浮动

浮动 一.常见网页布局1.三种布局方式2.布局准则 二.浮动&#xff08;float&#xff09;1.好处2.概念3.三大特性4.使用5.常见网页布局模板6.注意点 三.清除浮动1.why2.本质3.语法4.四种way&#xff08;后三个都是给父级添加&#xff09;清除浮动总结 一.常见网页布局 1.三种布局…...

做游戏ppt下载网站有哪些内容/直销的八大课程

绑定两台路由器之间的多条E1链路的方法有如下几种1.硬件IMUX 2-82.ATM IMA 2-323.Multilink ppp 2-84.Load balancing 2-6其中1、2为硬件解决方式&#xff0c;3、4为软件解决方式 PPP multilink配置方法&#xff1a;interface Mu…...

wordpress标志/全面的seo网站优化排名

6、到这里我们就可以打开Win7本地连接属性了&#xff0c;在里边即可更高本地连接IP地址了&#xff0c;如下图所示&#xff0c;我们切换到网络一栏&#xff0c;然后选中“ Internet 协议版本4 ”&#xff0c;然后点击下边的属性&#xff0c;如下图所示1、2、3步骤&#xff1a;7…...

做代练网站能备案/广西南宁市有公司网站设计

关于AVL树&#xff08;平衡二叉搜索树&#xff0c;高度为lgn&#xff09;的讲解&#xff0c;双手呈上某大佬博客&#xff1a;https://www.cnblogs.com/zhuwbox/p/3636783.html 我从这题get到一个新的结构体写法&#xff08;姿势&#xff09;&#xff1a; typedef struct treeNo…...

广汉做网站/seo搜狗排名点击

assertNotContains()函数是PHPUnit中的内置函数&#xff0c;用于断言没有值的数组。如果数组不包含所提供的值&#xff0c;则该断言将返回true&#xff1b;否则返回false&#xff1b;如果为true&#xff0c;则断言了已通过测试的用例&#xff0c;否则测试用例失败了。用法&…...

局域网内建立网站/百度公司电话是多少

MP4文件的基本单元是“box”&#xff0c;这些box既可以包括data&#xff0c;也可以包括metadata。MP4文件标准允许多种方式来组织data box和metadata box。将metadata放在data之前&#xff0c;客户端应用程序可以在播放video/audio之前获得更多的关于video/audio的信息&#xf…...

佛山网站建设网站制作公司/口碑营销成功案例

1. 链接 标签&#xff1a;<a></a> 属性&#xff1a;href&#xff1a;链接地址target&#xff1a;打开方式_blank&#xff1a;新标签页打开_self&#xff1a;当前页面打开&#xff08;默认&#xff09;title&#xff1a;链接提示2. 文本标记 标题元素 <h1><…...