11.4. 拒绝服务攻击

11.4.1. 简介

DoS(Denial of Service)指拒绝服务,是一种常用来使服务器或网络瘫痪的网络攻击手段。

在平时更多提到的是分布式拒绝服务(DDoS,Distributed Denial of Service) 攻击,该攻击是指利用足够数量的傀儡计算机产生数量巨大的攻击数据包,对网络上的一台或多台目标实施DDoS攻击,成倍地提高威力,从而耗尽受害目标的资源,迫使目标失去提供正常服务的能力。

11.4.2. UDP反射

基于UDP文的反射DDoS攻击是拒绝服务攻击的一种形式。攻击者不直接攻击目标,而是利用互联网中某些开放的服务器,伪造被攻击者的地址并向该服务器发送基于UDP服务的特殊请求报文,使得数倍于请求报文的数据被发送到被攻击IP,从而对后者间接形成DDoS攻击。

常用于DoS攻击的服务有:

  • NTP
  • DNS
  • SSDP
  • Memcached

其中DNS攻击主要是指DNS Request Flood、DNS Response Flood、虚假源+真实源DNS Query Flood、权威服务器攻击和Local服务器攻击。

11.4.3. TCP Flood

TCP Flood是一种利用TCP协议缺陷的攻击,这种方式通过伪造IP向攻击服务器发送大量伪造的TCP SYN请求,被攻击服务器回应握手包后(SYN+ACK),因为伪造的IP不会回应之后的握手包,服务器会保持在SYN_RECV状态,并尝试重试。这会使得TCP等待连接队列资源耗尽,正常业务无法进行。

11.4.4. Shrew DDoS

Shrew DDoS利用了TCP的重传机制,调整攻击周期来反复触发TCP协议的RTO,达到攻击的效果。其数据包以固定的、恶意选择的慢速时间发送,这种模式能够将TCP流量限制为其理想速率的一小部分,同时以足够低的平均速率进行传输以避免检测。

现代操作系统已经对TCP协议进行了相应的修改,使得其不受影响。

11.4.5. Ping Of Death

在正常情况下不会存在大于65536个字节的ICMP包,但是报文支持分片重组机制。通过这种方式可以发送大于65536字节的ICMP包并在目标主机上重组,最终会导致被攻击目标缓冲区溢出,引起拒绝服务攻击。

现代操作系统已经对这种攻击方式进行检查,使得其不受影响。

11.4.6. Challenge Collapsar (CC)

CC攻击是一种针对资源的DDoS攻击,攻击者通常会常用请求较为消耗服务器资源的方式来达到目的。常见的攻击通过搜索页,物品展示页来实现。

11.4.7. 参考链接