手机网站的作用,广告公司名字免费起名大全,搭建平台的成语,wordpress分类管理文章目录 Slowloris攻击的概念Slowloris攻击原理Slowloris攻击的步骤其他的DDoS攻击类型UDP FloodICMP (Ping) FloodSYN FloodPing of DeathNTP AmplificationHTTP FloodZero-day DDoS 攻击 推荐阅读 Slowloris攻击的概念
Slowloris是在2009年由著名Web安全专家RSnake提出的一… 文章目录 Slowloris攻击的概念Slowloris攻击原理Slowloris攻击的步骤其他的DDoS攻击类型UDP FloodICMP (Ping) FloodSYN FloodPing of DeathNTP AmplificationHTTP FloodZero-day DDoS 攻击 推荐阅读 Slowloris攻击的概念
Slowloris是在2009年由著名Web安全专家RSnake提出的一种攻击方法Slowloris是一种针对Web服务器的攻击方式。它利用了服务器在处理HTTP连接时的一些弱点通过向服务器发送大量的HTTP请求但在每个请求的头部只发送部分数据并保持连接不断开的方式来耗尽服务器资源。
Slowloris攻击原理
攻击者使用Slowloris攻击时会向目标服务器发送大量的请求但这些请求不会完全发送完整的HTTP头部信息而是会保持未完成状态。由于这些请求未完成服务器会为每个请求保持连接状态但却不会响应或关闭这些连接。这导致服务器的连接资源最终被耗尽无法响应其他正常的合法请求使得服务器无法向合法用户提供Web服务。 在正常的HTTP包头中是以两个CLRF1表示HTTP Headers部分结束的。如果Web Server只收到了一个\r\n因此将认为HTTP Headers部分没有结束并保持此连接不释放继续等待完整的请求。此时客户端再发送任意HTTP头保持住连接即可。
import requests# 定义头部信息
headers {User-Agent: My User Agent, # 用户代理信息Accept: application/json, # 接受的内容类型Content-Type: application/json, # 请求的内容类型Authorization: Bearer YOUR_TOKEN, # 授权信息# 添加其他需要的头部信息...
}# 构造请求
url https://api.example.com/endpoint
response requests.get(url, headersheaders)# 输出响应内容
print(response.text)
以python为例在引入requests库时requests 库会自动处理生成符合 HTTP 标准的头部信息包括正确的 CRLF 格式。你只需提供键值对形式的头部信息库会负责构建正确格式的头部。这样就避免了开发人员无意间造成的慢速访问或者慢速攻击。
Slowloris攻击不会占用很大的网络带宽只是利用看起来正常但是很慢并且是正常的流量来消耗服务器的资源所以被归类为“慢速”攻击。
Slowloris攻击的步骤 建立连接 攻击者利用自动化工具向目标服务器发起大量的网络连接请求。 发送部分请求头 每个连接都会发送一个HTTP请求但请求头部信息只会发送部分内容保持请求处于未完成状态。 保持连接打开 攻击者会定期向服务器发送少量数据以保持连接处于打开状态但不会完成整个HTTP请求。这样服务器为每个连接保持打开状态并等待请求的完成。 耗尽服务器资源 由于服务器在等待这些请求完成而保持连接打开这会消耗服务器的连接资源。随着攻击者不断创建新的连接并保持它们处于未完成状态服务器的连接资源最终会耗尽导致合法用户无法建立新的连接或访问服务器。 拒绝服务 一旦服务器的连接资源被耗尽它将无法响应新的合法请求导致服务不可用即拒绝服务攻击Denial of Service。
其他的DDoS攻击类型
UDP Flood
UDP flood是指用用户数据报协议(UDP)数据包淹没目标的任何DDoS攻击。攻击的目的是攻击远程主机上的随机端口。这使得主机反复检查在该端口侦听的应用程序并且(当没有找到应用程序时)发送一个ICMP“目的地不可达”数据包的响应。这个过程会消耗主机资源最终导致其他用户无法访问。
ICMP (Ping) Flood
与UDP flood攻击类似ICMP flood攻击通过ICMP Echo Request (ping)报文淹没目标资源通常以最快的速度发送报文而不等待应答。这种类型的攻击会消耗传入和传出带宽因为受害者的服务器通常会尝试使用ICMP Echo Reply数据包进行响应从而导致整个系统的显著减速。
SYN Flood
SYN flood DDoS攻击利用了TCP连接序列中的一个普遍弱点(“三次握手”)其中SYN发起到主机的TCP连接的请求必须由该主机的SYN-ACK响应响应然后由请求者的ACK回复确认。在SYN洪水的场景中请求者将发送多个SYN请求但要么不响应主机的SYN- ack响应要么从欺骗的IP地址发送SYN请求。 无论哪种方式主机系统都会继续等待每个请求的确认绑定资源直到无法建立新的连接并最终导致拒绝服务。
Ping of Death
POD或死亡ping攻击涉及攻击者向计算机发送几个恶意或畸形的ping。IP报文的最大长度(包括报头)为65,535字节。然而数据链路层经常对最高帧大小设置限制——例如在以太网网络上限制为1500字节。在这种情况下一个大的IP数据包被分成不同的IP数据包(分片)接收主机将这些IP分片重新组装成一个完整的数据包。 在Ping of Death的攻击中在恶意操纵片段内容后重新组装时会给接收方留下一个大于65,535字节的IP数据包。这可能超出为数据包分配的内存缓冲区从而导致拒绝合法数据包的服务。
NTP Amplification
NTPNetwork Time Protocol放大攻击是一种利用NTP服务器的特性来发起分布式拒绝服务DDoS攻击的方式。NTP是用于同步计算机系统时间的协议攻击者利用其Monlist命令的特性来进行攻击。
攻击者向运行NTP服务器的计算机发送伪造的请求将目标IP地址设置为受害者的IP。NTP服务器会响应这个请求并将一个包含最多最近的客户端的IP地址的响应发送回被伪造的IP地址即受害者的IP地址。攻击者利用这一点向NTP服务器发送大量伪造请求并导致NTP服务器向受害者发送大量的响应数据从而将其网络连接耗尽造成拒绝服务。
攻击的效果类似于其他放大攻击例如DNS放大攻击攻击者发送小型请求但服务器的响应会远远大于请求的大小这导致了数据的放大效应最终使受害者遭受大量的网络流量超出其网络带宽和处理能力的承受范围。 HTTP Flood
HTTP flood攻击是一种DDoS分布式拒绝服务攻击利用大量伪造的HTTP请求同时向目标服务器发送请求目的在于超载服务器的处理能力使其无法有效地处理合法用户的请求导致服务不可用。攻击者通过发送大量请求耗尽服务器的资源如带宽、处理器等造成网络阻塞或服务器崩溃使合法用户无法访问或使用目标网站或服务。 Zero-day DDoS 攻击
Zero-day DDoS Attacks是指利用针对未知漏洞的攻击手法针对网络系统进行分布式拒绝服务DDoS攻击攻击者利用这些未被厂商或组织发现的安全漏洞通过快速开发和利用这些漏洞来对网络设施进行攻击导致系统服务不可用。 【网络安全】零日漏洞0day是什么如何防范零日攻击 这类攻击对于网络防御者来说尤其具有挑战性因为攻击利用了未知漏洞使得预防和应对变得更为困难通常需要实时响应和快速补救措施以最小化攻击带来的影响。
推荐阅读 【网络安全】零日漏洞0day是什么如何防范零日攻击 【网络安全】网络设备可能面临哪些攻击 【漏洞修复】Cisco IOS XE软件Web UI权限提升漏洞及修复方法 【网络安全】专门为Web应用程序提供安全保护的设备-WAF CLRF指的是Carriage Return Line Feed回车换行它是一种控制字符序列用于表示文本中的换行操作。在不同的操作系统和文本文件中换行的方式可能有所不同。 回车Carriage Return在ASCII字符集中它的十六进制值是0x0D通常表示为 \r。回车符指示将光标移动到当前行的开头位置。 换行Line Feed在ASCII字符集中它的十六进制值是0x0A通常表示为 \n。换行符指示将光标移动到下一行的开头位置。 在很多操作系统中换行被表示为回车符后紧跟着一个换行符即CRLF\r\n而在一些其他的系统中可能只使用回车符\r或者换行符\n来表示换行。 ↩︎