【信息安全原理】——拒绝服务攻击及防御(学习笔记)

news2025/1/16 7:47:51

📖 前言:拒绝服务攻击(Denial of Service, DoS)是一种应用广泛、难以防范、严重威胁网络安全(破坏可用性)的攻击方式。本章主要介绍DoS的基本概念、攻击原理及防御措施。

在这里插入图片描述


目录

  • 🕒 1. 定义
  • 🕒 2. 分类
  • 🕒 3. 攻击原理
    • 🕘 3.1 剧毒包型DoS攻击
    • 🕘 3.2 风暴型DoS攻击
      • 🕤 3.2.1 直接风暴型DDoS
      • 🕤 3.2.2 反射风暴型DDoS
      • 🕤 3.2.3 其他风暴型DDoS
    • 🕘 3.3 重定向DoS攻击
    • 🕘 3.4 案例分析
  • 🕒 4. 防御
    • 🕘 4.1 检测
    • 🕘 4.2 响应
    • 🕘 4.3 防范

🕒 1. 定义

定义:攻击者通过某种手段,有意地造成计算机或网络不能正常运转从而不能向合法用户提供所需服务或者使服务质量降低

  • 服务(Service):系统提供的,用户在对其使用中会受益的功能
  • 拒绝服务(DoS: Denial of Service):任何对服务的干涉如果使得其可用性降低或者失去可用性称为拒绝服务, 如: 计算机系统崩溃;带宽耗尽;硬盘被填满
  • 攻击方式:消耗系统或网络资源; 阻断访问路径;更改系统配置

DDoS(Distributed Denial of Service):如果处于不同位置的多个攻击者同时向一个或多个目标发起拒绝服务攻击,或者一个或多个攻击者控制了位于不同位置的多台机器并利用这些机器对受害者同时实施拒绝服务攻击。

  • 特点: 攻击来源的分散性、协同性,攻击力度的汇聚性
  • 1999年11月,在由CERT/CC组织的分布式系统入侵者工具研讨会(DSIT Workshop)上,与会专家首次概括了DDoS攻击技术 。

DDoS与DoS的关系

  • 广义上讲, DDoS属于DoS攻击,且是DoS主流的攻击模式
  • 狭义上讲, DoS指的是单一攻击者针对单一受害者的攻击(传统的DoS), 而DDoS则是多个攻击者向同一受害者的攻击

Q:分布式攻击一定是DDoS吗?
A:分布式扫描、分布式口令破解严格意义上只是分布式计算,不能算攻击。

DDoS为什么能成功?

  • TCP/IP协议存在漏洞,可以被攻击者利用
  • 网络提供Best-Effort服务,不区分数据流量是否是攻击流量
  • 网络带宽和系统资源是有限的

在这里插入图片描述

🔎 案例:“中美黑客大战”20周年纪念回顾

🕒 2. 分类

攻击种类来分

  • 物理的(Physical DoS):偷窃、破坏物理设备、破坏电源
  • 逻辑的(Logic DoS)

攻击的目标来分

  • 节点型
    • 主机型:CPU、磁盘、OS等
    • 应用型:Email、DNS、Web等
  • 网络连接型

攻击方式来分

  • 资源消耗:耗尽带宽、内存、CPU、磁盘
  • 物理破坏:雷击、电流、水火等
  • 服务中止:攻击导致服务崩溃或中止

受害者类型来分

  • 服务端DoS:攻击Web服务器,影响大,主要的DoS
  • 客户端DoS:游戏、聊天室中的“踢人”

按攻击是否直接针对受害者来分

  • 直接DoS:直接攻击某个Email帐号使之不可用(如邮件炸弹攻击)
  • 间接DoS:通过攻击Email服务器来间接攻击某个Email帐号(使某个帐号不可用)

攻击地点来分

  • 本地 DoS:与受害者同处一地
  • 远程 DoS:通过网络

攻击机制来分

  • 剧毒包型:利用协议木身或其软件实现中的漏洞
  • 风暴型:通过大量的“无用”数据包占用过多的资源
  • 重定向型:通过修改网络中的一些参数或ARP表等,使得数据包被重定向到了其它地方

🕒 3. 攻击原理

🕘 3.1 剧毒包型DoS攻击

剧毒包或杀手包(Killer Packet) DoS攻击:利用协议本身或其软件实现中的漏洞,通过一些畸形的数据包使受害者系统崩溃,也称为“漏洞攻击”或“协议攻击”。

  • WinNuke攻击
  • 泪滴(Teardrop)攻击
  • Land攻击
  • Ping of death 攻击
  • 循环攻击

上述攻击方式虽已过时,但其思路仍值得借鉴!

🕘 3.2 风暴型DoS攻击

风暴型DoS攻击:通过大量的“无用”数据包占用过多的资源以达到拒绝服务的目的,也称为“带宽攻击”

  • 直接风暴型攻击
  • 反射攻击(DRDoS)

DDoS原理图释:
DDoS攻击将造成骨干网络资源浪费、链路堵塞、业务中断。
在这里插入图片描述

用于攻击的分组类型有:

  • TCP 洪流(floods)。向目标主机发送大量设置了不同标志的TCP分组。常被利用的标志包括:SYN, ACK, RST。其中,TCP SYN攻击导致目标主机不断地为TCP连接分配内存,从而使其它功能不能分配到足够的内存。Trinoo就是一种分布式的TCP SYN DoS攻击工具。
  • ICMP Echo 请求/响应报文(如,Ping floods)。向目标主机发送大量的ICMP分组。
  • UDP洪流。向目标主机发送大量各种基于UDP协议的应用协议包(如NTP,SSDP,DNS等)。

🕤 3.2.1 直接风暴型DDoS

现在不是主流,但曾经很风光!

攻击原理:
在这里插入图片描述

  • PING风暴攻击(直接型)
  • SYN风暴攻击(直接型)
  • TCP连接耗尽攻击(直接型)
  • UDP风暴攻击(直接型)
  • HTTP风暴攻击(直接型)
  • HTTP/2 PING Flood
  • 对邮件系统的DoS攻击(直接型)

🕤 3.2.2 反射风暴型DDoS

攻击者直接利用控制的僵尸主机向攻击自标发送攻击报文。

攻击原理:
在这里插入图片描述

在这里插入图片描述

SSDP、NTP、DNS和CHARGEN是最常见的反射攻击向量。
在这里插入图片描述

用作反射型DDoS的协议一般具有的特点

  • 互联网上有很多可探测到的支持该协议的服务器
  • 部分协议的请求报文大小远小于响应报文的大小
  • 协议具有无连接特性

NTP(Network Time Protocol,网络时间协议):用于计算机间的时间同步。
在这里插入图片描述

NTP 包含一个 monlist 功能,也被成为 MON_GETLIST,主要用于监控 NTP 服务器,NTP 服务器响应 monlist 后就会返回与 NTP 服务器进行过时间同步的最后 600 个客户端的 IP,响应包按照每 6 个 IP 进行分割,最多有 100 个响应包。
在这里插入图片描述

  • 回复报文长度是申请报文长度的:482 * 100 /234 = 206 倍
  • 使用UDP协议,很容易伪造源地址给NTP服务器发请求。

在这里插入图片描述

SSPD(Simple Service Discovery Protocol,简单服务发现协议)主要用于在局部网里发现通用即插即用(Universal Plug-and-Play,UPnP)网络设备

UPnP是一种用于 PC 机和智能设备(或仪器)的常见对等网络连接的体系结构,尤其是在家庭中。UPnP 以 Internet 标准和技术(例如 TCP/IP、HTTP 和 XML)为基础,使这样的设备彼此可自动连接和协同工作。

在设计上,它支持 0 设置、网络连接过程“不可见”和自动查找众多供应商提供的多如繁星的设备的类型。

  • 一个 UPnP 设备能够自动跟一个网络连接上、并自动获得一个 IP 地址、传送出自己的功能并获悉其它已经连接上的设备及其功能。最后,此设备能自动顺利地切断网络连接,并且不会引起意想不到的问题。
  • 在 UPnP 架构中没有设备驱动程序,取而代之的是普通协议。

在这里插入图片描述

攻击过程:
在这里插入图片描述

🔎 常见DDoS攻击

如何避免被攻击?

  • 大多数人甚至不知道企业或家庭环境中启用了SSDP,而他们很可能都没有使用过这个协议。如果你不使用一个协议或应用程序或服务,最好是关掉。
  • 其次是确保在网络外围,只允许用户应该连接的协议被使用。从安全的角度来看,这是一个良好的习惯。

多选题:
1、下列协议,可用作拒绝服务攻击的有()
A. ICMP B. HTTP C. TCP D. DNS
答案:ABCD
2、下列协议,可用作反射型拒绝服务攻击的有()
A. UDP B. SSDP C. TCP D. NTP
答案:BD

🕤 3.2.3 其他风暴型DDoS

🔎 RangeAmp attacks can take down websites and CDN servers

🔎 CDN Backfired: Amplification Attacks Based on
HTTP Range Requests

🔎 RangeAmp攻击:将CDN变成DDoS加农炮

🕘 3.3 重定向DoS攻击

通过修改网络中的一些参数或ARP表、DNS缓存,使得受害者发出的或者发向受害者的数据包被重定向到了其它地方。

常被用于窃听或中间人攻击。因此,通常在网络窃听中研究,很多人不把它当作DoS攻击。

🕘 3.4 案例分析

🔎 5.19 DNS大规模攻击事件

🕒 4. 防御

🕘 4.1 检测

检测难点

  • 不容易定位攻击者的位置
    • Internet上绝大多数网络都不限制源地址,也就使伪造源地址非常容易
    • 通过攻击代理的攻击,只能找到攻击代理的位置
    • 各种反射式攻击,无法定位源攻击者
  • 依据DDoS攻击工具的特征标志检测
    • 特定端口。例如,著名的DDoS工具trinoo使用的端口分别为:TCP端口27655, UDP端口27444和31335;NTP DRDoS检测123端口。
    • 标志位。例如,Shaft攻击所用的TCP分组的序列号都是0x28374839。
    • 特定数据内容。
  • 统计检测
  • 主机网络连接特征检测
  • 根据异常流量来检测:
    • 当DDoS攻击一个站点时,会出现明显超出该网络正常工作时的极限通信流量的现象。现在的技术能够分别对不同的源地址计算出对应的极限值。当明显超出此极限值时就表明存在DDoS攻击的通信。因此可以在主干路由器端建立ACL访问控制规则以监测和过滤这些通信。
    • 特大型的ICMP和UDP数据包
    • 不属于正常连接通信的TCP和UDP数据包。隐蔽的DDoS工具随机使用多种通信协议(包括基于连接的和无连接协议)发送数据。优秀的防火墙和路由规则能够发现这些数据包。
    • 数据段内容只包含文字和数字字符(例如,没有空格、标点和控制字符)的数据包 。
    • DoS工具产生的网络通信信息有两种:控制信息(在DoS管理者与攻击代理之间)和攻击时的网络通信(在DoS攻击代理与目标主机之间)。根据以下异常现象在入侵检测系统中建立相应规则,能够较准确地监测出DoS攻击
      • 根据分析,攻击者在进行DDoS攻击前总要解析目标的主机名。BIND域名服务器能够记录这些请求。由于每台攻击服务器在进行一个攻击前会发出PTR反向查询请求,也就是说在DDoS攻击前域名服务器会接收到大量的反向解析目标IP主机名的PTR查询请求。

🕘 4.2 响应

到目前为止,对付风暴型DDoS攻击的方案主要有四种:

  • 通过丢弃恶意分组的方法保护网络;
  • 在源端控制DDoS攻击;
  • 追溯 (Traceback) 攻击的源端, 然后阻止它发起新的攻击;
  • 路由器动态检测流量并进行控制。

最有效的对抗风暴型DDoS的方法是:流量清洗

🔎 秒极黑洞 解决大规模DDoS攻击导致的“躺枪”

DDoS攻击防御就是对DDoS攻击与正常业务数据混合在一起的流量进行净化,净化掉DDoS攻击流量,保留正常业务流量,保证客户业务7×24小时的不间断提供。

DDoS攻击阻断过程一般包括攻击监测和判断、流量牵引、清洗过滤、流量回送四个关键环节。

流量清洗服务是提供给租用IDC服务的政企客户,针对对其发起的DOS/DDOS攻击的监控、告警和防护的一种网络安全服务

  • 第一步,利用专用的检测设备对用户业务流量进行分析监控。
  • 第二步,当用户遭受到DDoS攻击时,检测设备上报给专用的业务管理平台生成清洗任务,将用户流量牵引到流量清洗中心。
  • 第三步,流量清洗中心对牵引过来的用户流量进行清洗,并将清洗后的用户合法流量回注到城域网。同时上报清洗日志到业务管理平台生成报表。

绿盟科技:三位一体解决方案
在这里插入图片描述

🕘 4.3 防范

  • 限制带宽
    • 限制特定协议占用的带宽,但并不是完善的方法
  • 终端防御:
    • 及时安装厂商补丁,减少被攻击的机会
    • 运行尽可能少的服务
    • 增强容忍性
  • 入口过滤:只允许必要的通信
    • 设置严格的防火墙策略
    • 封锁所有无用的数据
  • 完全阻止是不可能的,防范可减少被攻击的机会

OK,以上就是本期知识点“拒绝服务攻击及防御”的知识啦~~ ,感谢友友们的阅读。后续还会继续更新,欢迎持续关注哟📌~
💫如果有错误❌,欢迎批评指正呀👀~让我们一起相互进步🚀
🎉如果觉得收获满满,可以点点赞👍支持一下哟~

❗ 转载请注明出处
作者:HinsCoder
博客链接:🔎 作者博客主页

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

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

相关文章

无人职守自动安装linux操作系统

无人职守自动安装linux操作系统 1. 大规模部署案例2. PXE 技术3. Kickstart 技术4. 配置安装服务器4.1 DHCP服务4.2 TFTP 服务4.3 NFS服务 5. 示例5.1 搭建server1. 启动dhcp并设为开机自启2. 设置并启动tftp3. 将客户端所需启动文件复制到TFTP服务器4. 创建Kickstart自动应答文…

再谈动态SQL

专栏精选 引入Mybatis Mybatis的快速入门 Mybatis的增删改查扩展功能说明 mapper映射的参数和结果 Mybatis复杂类型的结果映射 Mybatis基于注解的结果映射 Mybatis枚举类型处理和类型处理器 文章目录 专栏精选摘要引言正文动态sql标签ifchoose...when...otherwisewhere、…

0基础学习VR全景平台篇第132篇:曝光三要素—快门速度

上课!全体起立~ 大家好,欢迎观看蛙色官方系列全景摄影课程! 经过前面两节课的学习我们认识了曝光三要素中的感光度和光圈,这节课我们将一同去了解影响曝光的最后一个要素——快门速度。 (曝光三要素:感光度、光圈、…

记录一下亿级别数据入库clickhouse

需求背景 公司的业务主要是广告数据归因的,每天的pv数据和加粉数据粗粗算一下,一天几千万上亿是有的。由于数据量大,客户在后台查询时间跨度比较大的数据时,查询效率就堪忧。因而将数据聚合后导到clickhouse进行存储,…

Secondo数据库下载安装

SECONDO - An Extensible Database System (secondo-database.github.io) 官网地址 1配置环境 ubuntu20.04.2(这个版本不能错,我试了20.04.3就安装不超过),镜像下载地址如下:Index of /releases/20.04.2 2安装步骤 安…

Springboot使用log4j2日志框架

文章目录 1.pom.xml引入依赖2.配置文件引入log4j2的配置文件3.导入log4j2配置文件4.通过Slf4j注解来使用log.info()等最后 1.pom.xml引入依赖 提示&#xff1a;lombok用于Slf4j注解 <dependency><groupId>org.springframework.boot</groupId><artifactId&…

bat命令清理Window应用注册表(Unity开发Window应用)

bat命令清理Window应用注册表&#xff08;Unity开发Window应用&#xff09; 介绍出现的问题方案一方案二方案二解决方案1. 首先使用【Win】【R】组合快捷键&#xff0c;快速打开运行命令框&#xff0c;在打开后面键入命令&#xff1a;【Regedit】2. 完后后按回车键&#xff08;…

异步通知

文章目录 一、异步通知1、应用场景2、执行流程&#xff08;基于读取按键值的情景&#xff09;2.1、应用程序具体做什么&#xff1f;2.2、驱动程序具体做什么&#xff1f; 三、程序1、驱动程序2、测试应用程序 三、总结 一、异步通知 1、应用场景 当应用程序不想休眠时&#x…

[SWPUCTF 2021 新生赛]sql

[SWPUCTF 2021 新生赛]sql wp 输入 1 正常回显&#xff1a; ?wllm1 返回&#xff1a; Want Me? Cross the Waf Your Login name:xxx Your Password:yyy输入单引号引发报错&#xff1a; ?wllm1 返回&#xff1a; Want Me? Cross the Waf You have an error in your SQL s…

springboot整合minio做文件存储

一,minio介绍 MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口&#xff0c;非常适合于存储大容量非结构化的数据&#xff0c;例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等&#xff0c;而一个对象文件可以是任意大小&…

《数据结构、算法与应用C++语言描述》- 平衡搜索树 -全网唯一完整详细实现插入和删除操作的模板类

平衡搜索树 完整可编译运行代码见&#xff1a;Github::Data-Structures-Algorithms-and-Applications/_34Balanced search tree 概述 本章会讲AVL、红-黑树、分裂树、B-树。 平衡搜索树的应用&#xff1f; AVL 和红-黑树和分裂树适合内部存储的应用。 B-树适合外部存储的…

一种删除 KubeSphere 中一直卡在 Terminating 的 Namespace--KubeSphere Logging System的简单方法

文章目录 一、问题提出二、删除方法1&#xff0c;获取kubesphere-logging-syste的详细信息json文件2&#xff0c;编辑kubesphere-logging-system.json3&#xff0c;执行清理命令 三、检查结果 一、问题提出 在使用 KubeSphere 的时候发现有一个日志服务KubeSphere Logging Sys…

考研结束,以下事情要抓紧做了!

Hello&#xff0c;大家好&#xff0c;我是 Sunday。 首先恭喜大家考研结束&#xff0c;也在这里祝各位考研的同学们可以 成功上岸 ✿✿ヽ(▽)ノ✿。 不过&#xff0c;考试结束并不是一个终点&#xff0c;而是另外一个新的起点。摆在大家面前的&#xff0c;还有很多新的问题&a…

安卓全球定位系统RTK测量仪 手持GPS北斗定位仪可用于国土电力

RTK&#xff0c;英文全名叫做Real-time kinematic&#xff0c;也就是实时动态。这是一个简称&#xff0c;全称是RTK&#xff08;Real-time kinematic&#xff0c;实时动态&#xff09;载波相位差分技术。 RTK定位是一种高精度的全球卫星导航技术&#xff0c;是实时运用技术&…

系统活动监测:iStat Menus中文 for Mac

iStat Menus是一款功能强大的系统监测和监控软件&#xff0c;可用于 macOS 平台。它提供了实时的系统状态和性能数据&#xff0c;以及各种监控工具和定制选项&#xff0c;帮助用户全面了解和管理他们的计算机系统。 以下是iStat Menus的一些主要特点和功能&#xff1a; 实时系…

深入浅出图解C#堆与栈 C# Heap(ing) VS Stack(ing) 第五节 引用类型复制问题及用克隆接口ICloneable修复

深入浅出图解C#堆与栈 C# Heaping VS Stacking 第五节 引用类型复制问题及用克隆接口ICloneable修复 [深入浅出图解C#堆与栈 C# Heap(ing) VS Stack(ing) 第一节 理解堆与栈](https://mp.csdn.net/mdeditor/101021023)[深入浅出图解C#堆与栈 C# Heap(ing) VS Stack(ing) 第二节…

数据库开发之图形化工具以及表操作的详细解析

2.3 图形化工具 2.3.1 介绍 前面我们讲解了DDL中关于数据库操作的SQL语句&#xff0c;在我们编写这些SQL时&#xff0c;都是在命令行当中完成的。大家在练习的时候应该也感受到了&#xff0c;在命令行当中来敲这些SQL语句很不方便&#xff0c;主要的原因有以下 3 点&#xff…

【JavaScript】new原理解析

✨ 专栏介绍 在现代Web开发中&#xff0c;JavaScript已经成为了不可或缺的一部分。它不仅可以为网页增加交互性和动态性&#xff0c;还可以在后端开发中使用Node.js构建高效的服务器端应用程序。作为一种灵活且易学的脚本语言&#xff0c;JavaScript具有广泛的应用场景&#x…

vue3 根据用户权限控制左侧菜单和路由拦截

目录 前言 整体思路 详细开发 1.左侧菜单的显隐控制 2.控制路由权限 补充权限控制 总结 前言 我这里是vue3开发的一个后台管理系统&#xff0c;所以涉及用户权限管理&#xff0c;以及页面权限等&#xff0c;其他模块部分可以查看专栏&#xff0c;这里只对怎么实现根据用…

做亚马逊测评不知道怎么找客户?这才是亚马逊测评的正确打开方式!

如今的跨境电商内卷严重&#xff0c;花费大量资金做广告推广的效果却微乎其微&#xff0c;这也是亚马逊测评迅速崛起的最根本原因。做亚马逊测评是近年来兴起的一种方式&#xff0c;许多卖家都需要大量的测评来提高自己的产品排名和信誉度。很多兄弟最近来问龙哥亚马逊测评怎么…