DDos攻击
1 概念
传统的Dos攻击:利用合法的服务器请求去访问服务器,占用大量的服务器资源,导致其它用户无法合理访问服务器。
DDos攻击:distributed denied of service分布式拒绝服务,利用大量的请求造成资源过载,导致服务器不可用。
2 DDos分类
2.1 网络层DDos攻击
(1)SYN flood攻击
SYN flood攻击主要利用了TCP三次握手过程中的bug,我们知道TCP三次握手过程是要建立连接的双方发送SYN,SYN+ACK,ACK数据包,而当攻击方随意构造源ip去发送SYN包时,服务器返回的SYN+ACK就不能得到应答(因为ip是随意构造的),此时服务器就会尝试重新发送,并且会有至少30s的等待时间,导致资源饱和服务不可用,此攻击属于慢型dos攻击。
(2)UDP flood攻击
由于udp是一种无连接的协议,因此攻击者可以伪造大量的源IP地址去发送udp包,此种攻击属于大流量攻击。正常应用情况下,UDP包双向流量会基本相等,因此在消耗对方资源的时候也在消耗自己的资源。
(3)ICMP flood攻击
此攻击属于大流量攻击,其原理就是不断发送不正常的ICMP包(所谓不正常就是ICMP包内容很大),导致目标带宽被占用,但其本身资源也会被消耗。并且目前很多服务器都是禁ping的(在防火墙在可以屏蔽icmp包),因此这种方式已经落伍。
2.2 应用层DDos攻击
(1)CC攻击(Challenge Collapasar)
CC攻击的原理,就是针对消耗资源比较大的页面不断发起不正常的请求,导致资源耗尽。因此在发送CC攻击前,我们需要寻找加载比较慢,消耗资源比较多的网页,比如需要查询数据库的页面、读写硬盘文件的等。通过cc攻击,使用爬虫对某些加载需要消耗大量资源的页面发起http请求。
(2)HTTP POST DOS
原理是在发送HTTP POST包时,指定一个非常大的Content-Length值,然后以极低的速度发包,保持连接不断,导致服务饱和不可用。
3 DDos攻击现象
(1)被攻击主机上有大量等待的TCP连接。
(2)网络中充斥着大量的无用的数据包。
(3)源地址为假制造高流量无用数据,造成网络拥塞,使受害主机无法正常和外界通讯。
(4)利用受害主机提供的传输协议上的缺陷反复高速的发出特定的服务请求,使主机无法处理所有正常请求。
(5)严重时会造成系统死机。
4 DDos防御
(1)尽可能对系统加载最新补丁,并采取有效的合规性配置,降低漏洞利用风险;
(2)采取合适的安全域划分,配置防火墙、入侵检测和防范系统,减缓攻击;
(3)采用分布式组网、负载均衡、提升系统容量等可靠性措施,增强总体服务能力。