网络安全 | 什么是DDoS攻击?

DDoS攻击

关注WX:CodingTechWork

DDoS-介绍

  1. DoS:Denial of Service,拒绝服务。
  2. DDoS是通过大规模的网络流量使得正常流量不能访问受害者目标,是一种压垮性的网络攻击,而不是一种入侵手段。
  3. NTP网络时间协议,设备需要和NTP服务器进行时间的同步。
  4. DDoS中文名称:分布式拒绝服务,英文全称:distributed denial-of-service 。
  5. DDoS通过大规模互联网流量淹没目标服务器或其周边基础设施,以破坏目标服务器、服务或网络正常流量的恶意行为。
  6. 如果把互联网上的网站或服务器看作一个个商店(比如淘宝、京东、微信等等),每个访问网站的网民看作是商店里的顾客。DDoS 就相当于一堆小混混装成正常顾客涌入商店,逛来逛去赖着不走让正常的顾客进不来,或者跟售卖员有一搭没一搭地说话,占用他们的时间,让他们无法正常服务客户。
  7. DDoS 攻击旨在通过无意义的连接请求、虚假数据包或其他恶意流量压垮网站、Web 应用程序、云服务或其他在线资源,从而禁用或关闭网站、Web 应用程序、云服务或其他在线资源。由于无法处理大量非法流量,目标会变得缓慢或完全崩溃,从而导致合法用户无法使用。
  8. DDoS 攻击是较广泛的拒绝服务攻击(DoS 攻击)类别的一部分,其中包括所有减慢或停止应用程序或网络服务的网络攻击。DDoS 攻击的独特之处在于,它们同时从多个来源发送攻击流量,这将“分布式”归为“分布式拒绝服务”。

DDoS-攻击“受欢迎度”

  1. 技术成本低:实施这类攻击需要很少的技能或不需要任何技能。通过从其他黑客那里租用现成的僵尸网络,网络罪犯可以轻松地自行发起 DDoS 攻击,而无需任何准备或计划。
  2. 不易检测:这类攻击很难检测。由于僵尸网络主要由消费者和商业设备组成,因此组织可能很难将恶意流量与真实用户分开。此外,DDoS 攻击的迹象(服务缓慢、站点和应用程序暂时不可用)也可能是由合法流量突然激增引起的,因此很难在最早阶段检测到 DDoS 攻击。
  3. 难以缓解:这类攻击很难缓解,如果发现 DDoS 攻击,网络攻击的分布式性质意味着组织无法仅仅通过关闭单个流量源来阻止攻击。旨在阻止 DDoS 攻击的标准网络安全控制(例如速率限制)也会减慢合法用户的操作速度。
  4. 潜在僵尸网络设备:物联网 (IoT) 的兴起为黑客提供了丰富的设备来源,可以将其转变为僵尸网络设备。支持互联网的设备、工具和小配件(包括卫生保健设备和制造系统等操作技术 (OT))通常在通用默认设置和薄弱或不存在的安全控制下进行销售和操作,因此它们特别容易受到恶意软件感染。这些设备的所有者可能很难注意到它们已受到损害,因为物联网和 OT 设备的使用通常是被动进行,频率也较低。
  5. 大模型AI发展:随着黑客采用人工智能 (AI) 和机器学习 (ML) 工具来帮助引导攻击,DDoS 攻击变得越来越复杂。这导致了自适应 DDoS 攻击的增加,这种攻击使用 AI 和 ML 来查找系统中最容易遭到攻击的漏洞,并自动改变攻击向量和策略,以响应网络安全团队采取 DDoS 缓解措施。

DDoS-攻击方式

概述

  1. DDoS攻击使用超文本传输协议 (HTTP) 和传输控制协议 (TCP) 等标准网络连接协议,不会利用网络资源中的漏洞来破坏计算机系统。
  2. DDoS攻击以超出其处理能力的流量使得端点、应用程序和其他资产无法访问。Web 服务器、路由器和其他网络基础设施在任何给定时间只能处理有限数量的请求并维持有限数量的连接。
  3. DDoS 攻击通过耗尽资源的可用带宽,从而阻止这些资源响应合法的连接请求和数据包。
  4. DDoS攻击分为3阶段:选择目标、创建僵尸网络、发起攻击

第一阶段:选择目标

介绍

  1. DDoS 攻击目标的选择源于攻击者的动机,其范围可能很广。
  2. 一些黑客利用 DDoS 攻击向组织勒索金钱,要求支付赎金才能结束攻击。
  3. 一些黑客利用 DDoS 进行激进主义行动,针对他们反对的组织和机构。
  4. 一些黑客利用 DDoS 攻击来关闭竞争企业,一些民族国家在网络战中使用了 DDoS 策略。
  5. 常见DDoS攻击目标:在线零售商、云服务提供商、金融机构、SaaS提供商、有戏公司。

常见攻击目标

  1. 在线零售商:DDoS 攻击可能会引起零售商的数字商店瘫痪,导致客户在一段时间内无法购物,从而对零售商造成重大财务损失。
  2. 云服务提供商:Amazon Web Services (AWS)、Microsoft Azure 和 Google Cloud Platform 等云服务提供商是常见的 DDoS 攻击目标。由于这些服务为其他企业托管数据和应用程序,因此黑客可以通过一次攻击造成大范围的中断。
  3. 金融机构:DDoS 攻击会导致银行服务脱机,使客户无法访问自己的账户。
    4、软件即服务 (SaaS) 提供商:与云服务提供商一样,Salesforce、GitHub 和 Oracle 等 SaaS 提供商也是有吸引力的目标,因为黑客可以通过它们同时破坏多个组织。
    5、游戏公司:DDoS 攻击可以用流量使服务器瘫痪,中断在线游戏。这些攻击通常是由怀有个人恩怨、心怀不满的玩家发起,

第二阶段:创建僵尸网络

  1. DDoS 攻击通常需要僵尸网络,即一个由已感染恶意软件的互联网连接设备组成的网络,黑客能够使用该恶意软件远程控制设备。
  2. 僵尸网络可以包括笔记本电脑和台式计算机、手机、物联网设备以及其他消费者或商业端点。这些受感染设备的所有者通常不知道自己已被感染或正被用于 DDoS 攻击。
  3. 一些网络罪犯从零开始构建僵尸网络,而另一些网络罪犯则根据名为“拒绝服务即服务”的模式购买或租用预先建立的僵尸网络。
  4. 并非所有 DDoS 攻击都使用僵尸网络;有些攻击利用未受感染设备的正常操作来达到恶意目的,如Smurf 攻击。

第三阶段:发起攻击

  1. 黑客命令僵尸网络中的设备向目标服务器、设备或服务的 IP 地址发送连接请求或其他数据包。
  2. 大多数 DDoS 攻击依靠暴力破解,发送大量请求来耗尽目标的所有带宽;一些 DDoS 攻击会发送较少数量更加复杂的请求,需要目标花费大量资源来响应。无论哪种情况,结果都是相同的:攻击流量使目标系统瘫痪,导致拒绝服务并阻止合法流量访问网站、Web 应用程序、API 或网络。
  3. 黑客经常通过伪造 IP 来掩盖攻击源,网络罪犯通过这种技术为从僵尸网络发送的数据包伪造虚假源 IP 地址。在一种名为“反射”(Reflection) 的伪造 IP 形式中,黑客伪造一种假象,使恶意流量看起来像是从受害者自己的 IP 地址发送的。

DDoS-攻击类型

应用层攻击

介绍

  1. 应用层攻击的目标是 OSI 模型的应用层(第 7 层),即为响应用户请求而生成 Web 页面的层。应用层攻击用恶意请求使 Web 应用程序瘫痪,中断 Web 应用程序。
  2. 最常见的应用层攻击之一是HTTP 洪流攻击。
  3. 发起应用层攻击相对容易,但很难预防和缓解。随着越来越多的公司转向使用微服务和基于容器的应用程序,应用层攻击导致关键 Web 和云服务失效的风险也在增加。

HTTP洪流攻击

  1. HTTP 洪流攻击,攻击者从多个设备连续向同一网站发送大量 HTTP 请求。该网站无法处理所有 HTTP 请求,并且速度显著减慢或完全崩溃。
  2. HTTP 洪流攻击类似于数百或数千个 Web 浏览器重复刷新同一网页。

协议攻击

介绍

  1. 协议攻击针对 OSI 模型的网络层(第 3 层)和传输层(第 4 层)。
  2. 协议攻击的目标是通过恶意连接请求使关键网络资源无法访问,例如防火墙、负载平衡器和 Web 服务器。
  3. 常见的协议攻击包括:SYN 洪流攻击和Smurf攻击。

SYN洪流攻击

  1. SYN 洪流攻击:利用 TCP 握手,即两个设备相互建立连接的过程。
  2. 在典型的 TCP 握手中,一个设备发送 SYN 数据包来启动连接,另一个设备使用 SYN/ACK 数据包进行响应以确认请求,原始设备发回 ACK 数据包以完成连接。
  3. 在 SYN 洪流攻击中,攻击者向目标服务器发送大量伪造的源 IP 地址的 SYN 数据包。
  4. 服务器将其响应发送到伪造 IP 地址并等待最终的 ACK 数据包。
  5. 由于源 IP 地址是伪造的,因此这些数据包永远不会到达。
  6. 服务器被大量未完成的连接占用,使其无法进行合法的 TCP 握手。

Smurf攻击

  1. Smurf 攻击:Smurf 攻击利用因特网控制报文协议 (ICMP),这是一种用于评估两个设备之间连接状态的通信协议。
  2. 在典型的 ICMP 交换中,一个设备向另一个设备发送 ICMP 回传请求,后一台设备以 ICMP 回传答复进行响应。
  3. 在 Smurf 攻击中,攻击者从与受害者 IP 地址匹配的伪造 IP 地址发送 ICMP 回传请求。
  4. 此 ICMP 回传请求被发送到 IP 广播网络,该网络将请求转发到给定网络上的每个设备。
  5. 收到 ICMP 回传请求的每个设备(可能是数百或数千个设备)都会通过向受害者的 IP 地址发送 ICMP 回传答复来进行响应,从而向设备发送超出其处理能力的信息。
  6. 与许多其他类型的 DDoS 攻击不同,Smurf 攻击不一定需要僵尸网络。

容量耗尽攻击

介绍

  1. DDoS 容量耗尽攻击消耗目标网络内或目标服务与互联网其余部分之间的所有可用带宽,从而阻止合法用户连接到网络资源。
  2. 容量耗尽攻击通常也会以非常高的流量让网络瘫痪,使资源无法访问。
  3. 容量耗尽攻击会击垮清洗中心等 DDoS 防护措施,这些措施旨在从合法流量中过滤掉恶意流量。

UDP洪流攻击

  1. 这些攻击向目标主机的端口发送虚假的用户数据报协议 (UDP) 数据包,促使主机寻找接收这些数据包的应用程序。
  2. 由于 UDP 数据包是虚假的,因此没有应用程序可以接收它们,主机必须向发送者发回 ICMP“目标无法到达”消息。
  3. 主机的资源因响应源源不断的虚假 UDP 数据包流而被占用,导致主机无法响应合法数据包。

ICMP洪流攻击

  1. 这些攻击也称为“ping 洪流攻击”。
  2. 目的:通过来自多个伪造 IP 地址的 ICMP 回传请求来轰炸目标。
  3. 目标服务器必须响应所有这些请求,因此会过载,并且无法处理有效的 ICMP 回传请求。
  4. ICMP 洪流攻击与 Smurf 攻击的区别在于,攻击者从其僵尸网络发送大量 ICMP 请求,而不是通过欺骗网络设备向受害者的 IP 地址发送 ICMP 响应。

DNS放大攻击

  1. 攻击者向一台或多台公共 DNS 服务器发送多个域名系统 (DNS) 查找请求。
  2. 这些查找请求使用属于受害者的伪造 IP 地址,并要求 DNS 服务器为每个请求返回大量信息。
  3. DNS 服务器回复请求时用大量数据使受害者的 IP 地址无法访问。

多向量攻击

  1. 多向量攻击旨在利用多个攻击向量来最大限度制造损害并阻碍采取 DDoS 缓解措施。
  2. 当一个向量受阻时,攻击者可以同时使用多个向量,或者在攻击中途在向量之间切换。例如,黑客可能会从 Smurf 攻击开始,但来自网络设备的流量被关闭时,他们可能会从僵尸网络发起 UDP 洪流攻击。

DDoS-预防措施

黑洞路由

  1. 有一种解决方案几乎适用于所有网络管理员:创建黑洞路由,并将流量汇入该路由。在最简单的形式下,当在没有特定限制条件的情况下实施黑洞过滤时,合法网络流量和恶意网络流量都将路由到空路由或黑洞,并从网络中丢弃。
  2. 如果互联网设备遭受 DDoS 攻击,则该设备的互联网服务提供商(ISP)可能会将站点的所有流量发送到黑洞中作为防御。这不是理想的解决方案,因为它相当于让攻击者达成预期的目标:使网络无法访问。

速率限制

  1. 限制服务器在某个时间段接收的请求数量也是防护拒绝服务攻击的一种方法。
  2. 虽然速率限制对于减缓 Web 爬虫窃取内容及防护暴力破解攻击很有帮助,但仅靠速率限制可能不足以有效应对复杂的 DDoS 攻击。

Web应用程序防火墙(WAF)

  1. Web 应用程序防火墙(WAF) 是一种有效工具,有助于缓解第 7 层 DDoS 攻击。在互联网和源站之间部署 WAF 后,WAF 可以充当反向代理,保护目标服务器,防止其遭受特定类型的恶意流量入侵。
  2. 通过基于一系列用于识别 DDoS 工具的规则过滤请求,可以阻止第 7 层攻击。有效的 WAF 的一个关键价值是能够快速实施自定义规则以应对攻击。了解 Cloudflare 的 WAF。
  3. 标准防火墙在端口级别提供保护,而 WAF 在将请求转发到 Web 服务器之前确保请求是安全的。WAF 知道哪些类型的请求是合法的,哪些类型是非法的,因此能够丢弃恶意流量并防止应用层攻击。

Anycast 网络扩散

  1. 此类缓解方法使用 Anycast 网络,将攻击流量分散至分布式服务器网络,直到网络吸收流量为止。
  2. 这种方法就好比将湍急的河流引入若干独立的小水渠,将分布式攻击流量的影响分散到可以管理的程度,从而分散破坏力。
  3. Anycast 网络在缓解 DDoS 攻击方面的可靠性取决于攻击规模及网络规模和效率。采用 Anycast 分布式网络是 Cloudflare 实施 DDoS防护策略的一个重要组成部分。
  4. Cloudflare 拥有 121 Tbps 的网络,比有记录的最大 DDoS 攻击大一个数量级。
  5. 如果您目前恰好受到攻击,可以采取一些措施摆脱压力。如果已使用 Cloudflare,则可按照以下步骤缓解攻击。
  6. 我们在 Cloudflare 实施多方位 DDoS 保护,从而缓解可能采用的大量攻击手段。了解有关 Cloudflare DDoS 防护及其工作原理的更多信息。

内容交付网络CDN

  1. CDN 是一个分布式服务器网络,可以帮助用户更快速、更可靠地访问在线服务。
  2. 通过使用 CDN,用户的请求不会一直传回服务的源服务器。相反,系统会将它们路由到地理位置较近的 CDN 服务器来交付内容。
  3. CDN 可以通过提高服务的整体流量容量来帮助防御 DDoS 攻击。如果 CDN 服务器因 DDoS 攻击而瘫痪,用户流量可以路由到网络中其他可用的服务器资源。

安全信息和事件管理SIEM

  1. SIEM 系统提供一系列功能,用于在生命周期的早期检测 DDoS 攻击和其他网络攻击,包括日志管理和网络洞察。
  2. SIEM目标是对本地和基于云的安全工具生成的安全数据进行集中式管理。
  3. SIEM 可以监控连接的设备和应用程序是否存在安全事件和异常行为,例如过多的 ping 或非法连接请求。然后,SIEM 会标记这些异常,以便网络安全团队采取适当的措施。

检测和响应技术

  1. 端点检测和响应 (EDR)、网络检测和响应 (NDR) 以及扩展检测和响应 (XDR) 解决方案均使用高级分析和 AI 来监控网络基础设施的受感染指标(例如可能指示存在 DDoS 攻击的异常流量模式)以及实时响应正在进行的攻击的自动化功能(例如终止可疑的网络连接),如威胁情报服务。

参考:https://developer.ibm.com/

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

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

相关文章

Springboot整合Milvus向量库

1. Milvus的Maven依赖&#xff0c; 配置如下 <dependency><groupId>io.milvus</groupId><artifactId>milvus-sdk-java</artifactId><version>2.3.4</version><exclusions><exclusion><artifactId>log4j-slf4j-imp…

百度语音识别

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、建号—获取试用KEY二、测试代码三、运行四、运行结果五、验证五、总结 一、建号—获取试用KEY https://console.bce.baidu.com/ai/#/ai/speech/overview/index…

记一次Cannot deploy POJO class [xxx$$EnhancerBySpringCGLIB$$xxx]的错误

最近项目上需要使用websocket做服务端&#xff0c;那好说啊&#xff0c;直接springboot集成的websocket 引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId><versi…

赛氪网在长沙宣布启动“徽文化外宣翻译大赛”

2024年3月30日下午&#xff0c;在美丽的星城长沙&#xff0c;赛氪网作为承办方&#xff0c;在中国翻译协会年会期间成功举办了备受瞩目的“AI科技时代竞赛与就业分论坛”。此次论坛汇聚了众多翻译界、科技界和教育界的专家学者&#xff0c;共同就科技、实践、就业与竞赛人才培养…

使用C++调用讯飞星火API的详细指南

正文&#xff1a; 科大讯飞是中国领先的人工智能公司&#xff0c;其讯飞星火API为开发者提供了丰富的接口和服务&#xff0c;支持各种语音和语言技术的应用。下面是使用C接入讯飞星火API的步骤和代码示例。 步骤一&#xff1a;注册账号并创建应用 首先&#xff0c;您需要访问科…

蓝色wordpress外贸建站模板

蓝色wordpress外贸建站模板 https://www.mymoban.com/wordpress/7.html

保护你的 Java 代码:深入了解代码混淆

在当今数字化时代&#xff0c;软件开发领域竞争激烈&#xff0c;而保护你的代码免受恶意攻击和盗用是至关重要的。代码混淆是一种常用的技术&#xff0c;用于增加攻击者分析和逆向工程代码的难度&#xff0c;从而提高代码的安全性。本文将介绍代码混淆的基本概念和详细办法&…

element-ui badge 组件源码分享

今日简单分享 badge 组件的源码实现&#xff0c;主要从以下两个方面&#xff1a; 1、badge 组件页面结构 2、badge 组件属性 一、badge 组件页面结构 二、badge 组件属性 补充几个标签的用途&#xff1a; sub&#xff1a;下标、sup&#xff1a;上标、var 变量 代码如下&am…

<网络> 网络Socket 编程基于UDP协议模拟简易网络通信

目录 前言&#xff1a; 一、预备知识 &#xff08;一&#xff09;IP地址 &#xff08;二&#xff09;端口号 &#xff08;三&#xff09;端口号与进程PID &#xff08;四&#xff09;传输层协议 &#xff08;五&#xff09;网络字节序 二、socket 套接字 &#xff08;…

Java基础知识总结(第八篇):集合:Collection(List、Set)、Map、Collections 工具类

声明: 1. 本文根据韩顺平老师教学视频自行整理&#xff0c;以便记忆 2. 若有错误不当之处, 请指出 系列文章目录 Java基础知识总结&#xff08;第一篇&#xff09;&#xff1a;基础语法 Java基础知识总结&#xff08;第二篇&#xff09;&#x…

Kaggle:收入分类

先看一下数据的统计信息 import pandas as pd # 加载数据&#xff08;保留原路径&#xff0c;但在实际应用中建议使用相对路径或环境变量&#xff09; data pd.read_csv(r"C:\Users\11794\Desktop\收入分类\training.csv", encodingutf-8, encoding_errorsrepl…

STM32-02基于HAL库(CubeMX+MDK+Proteus)GPIO输出案例(LED流水灯)

文章目录 一、功能需求分析二、Proteus绘制电路原理图三、STMCubeMX 配置引脚及模式&#xff0c;生成代码四、MDK打开生成项目&#xff0c;编写HAL库的GPIO输出代码五、运行仿真程序&#xff0c;调试代码 一、功能需求分析 在完成开发环境搭建之后&#xff0c;开始使用STM32GP…

玩机进阶教程-----高通9008线刷XML脚本修改备份 檫除的操作步骤解析

在高通9008官方固件中我们可以看到刷写需要的脚本rawprogram0.xml和辅助脚本patch0.xml&#xff0c;脚本的作用在于将固件内各个分区对应写入手机内。根据分区地址段。然后判断脚本中那些分区不写入。以下步骤将分析emmc字库为例来讲解如何将默认刷入脚本修改为备份 檫除脚本。…

2013年认证杯SPSSPRO杯数学建模B题(第二阶段)流行音乐发展简史全过程文档及程序

2013年认证杯SPSSPRO杯数学建模 B题 流行音乐发展简史 原题再现&#xff1a; 随着互联网的发展&#xff0c;流行音乐的主要传播媒介从传统的电台和唱片逐渐过渡到网络下载和网络电台等。网络电台需要根据收听者的已知喜好&#xff0c;自动推荐并播放其它音乐。由于每个人喜好…

乐校园二手书交易管理系统的设计与实现|Springboot+ Mysql+Java+ B/S结构(可运行源码+数据库+设计文档)大学生闲置二手书在线销售

本项目包含可运行源码数据库LW&#xff0c;文末可获取本项目的所有资料。 推荐阅读300套最新项目持续更新中..... 最新ssmjava项目文档视频演示可运行源码分享 最新jspjava项目文档视频演示可运行源码分享 最新Spring Boot项目文档视频演示可运行源码分享 2024年56套包含ja…

蓝桥杯相关算法学习(Python)

一、排序 排序算法是指将一组数据按照某种规则重新排列&#xff0c;使得数据呈现出递增或递减的顺序。常见的排序算法包括冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等。 1.冒泡排序 解释&#xff1a; 冒泡排序通过不断交换相邻两个元素的位置&#xff0c;使…

Redis从入门到精通(四)Redis实战:短信登录

文章目录 前言第4章 Redis实战&#xff1a;短信登录4.1 基于session实现短信登录4.1.1 短信登录逻辑梳理4.1.2 创建测试项目4.1.3 实现发送短信验证码功能4.1.4 实现用户登录功能4.1.5 实现登录拦截功能4.1.6 session共享问题 4.2 基于Redis实现短信登录4.2.1 Key-Value的结构设…

mysql语句学习

SQL Select语句完整的执行顺序&#xff1a; 1、from子句组装来自不同数据源的数据&#xff1b; &#xff08;先join在on&#xff09; 2、where子句基于指定的条件对记录行进行筛选&#xff1b; 3、group by子句将数据划分为多个分组&#xff1b; 4、使用聚集函数进行计算&a…

取证之内存取证工具Volatility学习

一、简介 Volatility是一款开源的内存取证分析工具&#xff0c;支持Windows&#xff0c;Linux&#xff0c;MaC&#xff0c;Android等多类型操作系统系统的内存取证方式。该工具是由python开发的&#xff0c;目前支持python2、python3环境。 二、安装 1、下载地址 GitHub - …

搭建 Qt 开发环境

&#x1f40c;博主主页&#xff1a;&#x1f40c;​倔强的大蜗牛&#x1f40c;​ &#x1f4da;专栏分类&#xff1a;QT❤️感谢大家点赞&#x1f44d;收藏⭐评论✍️ 目录 一、QT SDK 的下载和安装 1.QT SDK 的下载 二、QT SDK的安装 1、找到下载的文件并双击 2、双击之…