7.4 防御拒绝服务攻击

大多数分布式拒绝服务攻击 (DDoS,Distributed Denial of Service)或标准的拒绝服务攻击 (DoS,Denial of Service)工具都是用C#或者Java写的开源工具。我们在第6章 中演示过个人如何通过DoS工具来限制用户对线上资源的访问或是让网站宕机从而对它的业务造成毁灭性的影响。DDoS/DoS工具通常都会以Web应用压力测试工具的名称来宣传。尽管它们可能会被用于压力测试,但大多数情况下还是服务于恶意用途。

大多数情况下DDoS/DoS攻击要求搞垮网络基础设施硬件。防御DDoS/DoS攻击的常见做法之一是对要处理大量涌入的数据包的网络硬件进行配置,使其能检测到反常的行为和流量模式(Traffic Pattern)。检测到的恶意流量应该被自动过滤,从而避免服务被中断。第三方服务提供商所提供的工具,如负载均衡器和Web应用防火墙(WAF,Web Application Firewall),在侦测和防御试探容积和应用类型的攻击上效果非常显著。带有DoS侦测功能的安全工具也能识别网络、会话和应用层的流量,引入它就是为了降低可能存在于协议栈各层的DoS风险。

为了防御持续的、长时间的攻击,许多企业都转向DDoS应用服务提供商寻求帮助。DDoS应用服务提供商能够跟你的ISP一起协作,尝试通过将流向你们网络的DDoS流量从企业的服务器重定向到其他地方来组织DDoS攻击。他们是借助路由协议来实现这种防御的,比如BGP(边界网关协议,Border Gateway Protocol)和高级DNS技术。

许多DDoS/DoS攻击在实施时用的都是伪造的或无效的IP地址。网络管理员应该在他们连接到互联网的边界路由器上部署单播逆向路径转发 (Unicast RPF,Unicast Reverse Path Forwarding)来作为针对发起DDoS时伪造IP源地址的保护机制。大家普遍认为单播逆向转发是连接到互联网的边界路由器实施防护的最佳方式,可以作为防御DDoS/DoS的一个很好的起点。在思科路由器上,单薄逆向转发是在网口层进行配置的。其他企业路由器生产商也在他们的路由器上提供了类似的功能。在配置好单播逆向转发后,来自非证实的IP地址或是无效IP地址的数据包会被丢掉。

另外一项识别DDoS/DoS流量的最新技术是利用Netflow结合传送访问控制列表来阻止流量进入网络,还能识别内网攻击。它会分析流量行为,在网络上观察到的任何恶意流量征兆都会触发警报,比如Smurf或泪滴攻击数据包。领先的DDoS/DoS解决方案都具备监测内部和外部DDoS/DoS威胁的能力。