📖 前言:拒绝服务攻击(Denial of Service, DoS)是一种应用广泛、难以防范、严重威胁网络安全(破坏可用性)的攻击方式。本章主要介绍DoS的基本概念、攻击原理及防御措施。
🕒 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攻击:通过大量的“无用”数据包占用过多的资源以达到拒绝服务的目的,也称为“带宽攻击”
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
博客链接:🔎 作者博客主页