我们都知道,互联网实际上是由大批的高防服务器将大批终端连接起来所组成的一个宏大的网络,如果想获取某台服务器上的服务资源,则需要将恳求数据通过特定链路传输到这台服务器上。依然用前面快餐店的例子来阐明,如果客人想要用餐,就需要知道快餐店的地位,并且达到快餐店点餐(这里我们暂时不考虑快餐店的外卖服务)。但是,如果快餐店的门
口或者它所在的街道产生了拥堵和交通管制,客人就无法达到快餐店,也就无法得到服务。
同样的道理,无论是服务器的网络接口带宽,还是路由器、交换机等互联网基础设施,其数据包处理能力都是存在着事实上的上限的,当达到或通过的网络数据包数量超过了这个上限时,就会涌现网络拥堵、响应缓慢的情况。耗费网络帯宽资源的散布式拒绝服务攻击就是根据这个原理利用受控主机发送大批的网络数据包,占满被攻击目标的全部带宽,从而使正常的恳求无法得到及时有效的响应,造成拒绝服务。
直接攻击
直接攻击(如图1所示)应用大批的受控主机直接向被攻击目标发送大批的网络数据包,以占满被攻击目标的带宽,并耗费服务器和网络设备的网络数据处理能力,达到拒绝服务的目标。
直接攻击的重要方法有 ICMP/ IGMP洪水攻击和UDP洪水攻击两种
1. ICMP/IGMP洪水攻击
网络把持消息协议( Internet Control Message Protocol,ICMP)是TCP/IP协议族的核心协议之ー。它用于在 TCP/IP网络中发送把持消息,供给可能产生在通信环境中的各种问题反馈。通过这些信息,管理者可以对所产生的问題做出诊断,然后采用适当的措施解决。
因特网组管理协议( Internet Group Management ProtocolIGMP)是用于管理因特网协议多播组成员的一种通信协议。IP主机和相邻的路由器利用IGMP来建立多播组的组成员。
攻击者应用受控主机向被攻击目标发送大批的 ICMP/IGMP报文,进行洪水攻击以耗费目标的带宽资源。这种类型的攻击涌现得很早,应用hping等工具就能够简略地发起攻击。但现在应用这种方法发动的攻击已不多见,被攻击目标可以在其网络边界直接过滤并丢弃 ICMP/IGMP数据包使攻击无效化。
2、UDP洪水攻击
用户数据报协议( User Datagram Protocol,UDP)是一种面向无连接的传输层协议,重要用于不请求分组次序达到的传输,供给面向事务的简略的不可靠信息传送服务。
利用UDP数据报文,攻击者也可以发动洪水攻击。UDP洪水攻击和ICMP1GMP洪水攻击的原理基础雷同。通常,攻击者会应用小包和大包两种方法进行攻击。
小包是指64字节大小的数据包,这是以太网上传输数据帧的最小值。在雷同流量下,单包体积越小,数据包的数量就越多。由于交换机路由器等网络设备需要对每一个数据包进行检查和校验,因此应用UDP小包攻击能够最有效地增大网络设备处理数据包的压力,造成处理速度的缓慢和传输廷迟等拒绝服务攻击的效果。
大包是指1500字节以上的数据包,其大小超过了以太网的最大传输单元(MIU)。应用UDP大包攻击,能够有效地占用网络接口的传输带宽,并迫使被攻击目标在吸收到UDP数据时进行分片重组,造成网络拥堵,服务器响应速度变慢。
UDP洪水攻击也是很早就涌现的一种拒绝服务攻击方法,这种攻击发动简略,有相当多的工具都能够发动UDP洪水攻击,如 hping、LOlC等。但UDP洪水攻击完整依附受控主机本身的网络性能,因此通常对攻击目标带宽资源的耗费并不太大。