可以说,DDoS是目前最凶猛、最难防御的网络攻击之一。现实情况是,这个世界级难题还没有完美的、彻底的解决办法,但采取适当的措施以降低攻击带来的影响、减少损失是十分必要的。将DDoS防御作为整体安全策略的重要部分来考虑,防御DDoS攻击与防数据泄露、防恶意植入、反病毒保护等安全措施同样不可或缺。
首先,防御DDoS攻击是一个系统化的工程,仅仅依靠某种操作、某个服务就实现全垒打很傻很天真,就如同预防流行感冒一样,既要穿着保暖,又要注意饮食,还要加强锻炼。根据攻击流量大小等实际情况灵活应对,采取多种组合,定制策略才能更好地实现防御效果。毕竟,攻击都流行走混合路线了,防御怎么还能一种功夫包打全能。
其次,由于DDoS攻击和防御都面临着成本开支,当我们的防御强度逐步增加,攻击成本也对应上升,当大部分攻击者无法持续而选择放弃,那防御就算成功了。也因此我们需要明白,防御措施、抗D服务等都只是一种“缓解”疗法,而不是一种“治愈”方案,我们谈防御是通过相应的举措来减少DDoS攻击对企业业务的影响,而不是彻底根除DDoS攻击。
基于以上,我们将从三个方面(网络设施、防御方案、预防手段)来谈谈抵御DDoS攻击的一些基本措施、防御思想及服务方案。
一.网络设备设施
网络架构、设施设备是整个系统得以顺畅运作的硬件基础,用足够的机器、容量去承受攻击,充分利用网络设备保护网络资源是一种较为理想的应对策略,说到底攻防也是双方资源的比拼,在它不断访问用户、夺取用户资源之时,自己的能量也在逐渐耗失。相应地,投入资金也不小,但网络设施是一切防御的基础,需要根据自身情况做出平衡的选择。
1. 扩充带宽硬抗
网络带宽直接决定了承受攻击的能力,国内大部分网站带宽规模在10M到100M,知名企业带宽能超过1G,超过100G的基本是专门做带宽服务和抗攻击服务的网站,数量屈指可数。但DDoS却不同,攻击者通过控制一些服务器、个人电脑等成为肉鸡,如果控制1000台机器,每台带宽为10M,那么攻击者就有了10G的流量。当它们同时向某个网站发动攻击,带宽瞬间就被占满了。增加带宽硬防护是理论最优解,只要带宽大于攻击流量就不怕了,但成本也是难以承受之痛,国内非一线城市机房带宽价格大约为100元/M*月,买10G带宽顶一下就是100万,因此许多人调侃拼带宽就是拼人民币,以至于很少有人愿意花高价买大带宽做防御。
2. 使用硬件防火墙
许多人会考虑使用硬件防火墙,针对DDoS攻击和黑客入侵而设计的专业级防火墙通过对异常流量的清洗过滤,可对抗SYN/ACK攻击、TCP全连接攻击、刷脚本攻击等等流量型DDoS攻击。如果网站饱受流量攻击的困扰,可以考虑将网站放到DDoS硬件防火墙机房。但如果网站流量攻击超出了硬防的防护范围(比如200G的硬防,但攻击流量有300G),洪水瞒过高墙同样抵挡不住。值得注意一下,部分硬件防火墙基于包过滤型防火墙修改为主,只在网络层检查数据包,若是DDoS攻击上升到应用层,防御能力就比较弱了。
3. 选用高性能设备
除了防火墙,服务器、路由器、交换机等网络设备的性能也需要跟上,若是设备性能成为瓶颈,即使带宽充足也无能为力。在有网络带宽保证的前提下,应该尽量提升硬件配置。
二、有效的抗D思想及方案
硬碰硬的防御偏于“鲁莽”,通过架构布局、整合资源等方式提高网络的负载能力、分摊局部过载的流量,通过接入第三方服务识别并拦截恶意流量等等行为就显得更加“理智”,而且对抗效果良好。
4. 负载均衡
普通级别服务器处理数据的能力最多只能答复每秒数十万个链接请求,网络处理能力很受限制。负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性,对DDoS流量攻击和CC攻击都很见效。CC攻击使服务器由于大量的网络传输而过载,而通常这些网络流量针对某一个页面或一个链接而产生。在企业网站加上负载均衡方案后,链接请求被均衡分配到各个服务器上,减少单个服务器的负担,整个服务器系统可以处理每秒上千万甚至更多的服务请求,用户访问速度也会加快。
5. CDN流量清洗
CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率,因此CDN加速也用到了负载均衡技术。相比高防硬件防火墙不可能扛下无限流量的限制,CDN则更加理智,多节点分担渗透流量,目前大部分的CDN节点都有200G 的流量防护功能,再加上硬防的防护,可以说能应付目绝大多数的DDoS攻击了。
6. 分布式集群防御
分布式集群防御的特点是在每个节点服务器配置多个IP地址,并且每个节点能承受不低于10G的DDoS攻击,如一个节点受攻击无法提供服务,系统将会根据优先级设置自动切换另一个节点,并将攻击者的数据包全部返回发送点,使攻击源成为瘫痪状态,从更为深度的安全防护角度去影响企业的安全执行决策。
三.预防为主保安全
DDoS的发生可能永远都无法预知,而一来就凶猛如洪水决堤,因此网站的预防措施和应急预案就显得尤为重要。通过日常惯性的运维操作让系统健壮稳固,没有漏洞可钻,降低脆弱服务被攻陷的可能,将攻击带来的损失降低到最小。
7. 筛查系统漏洞
及早发现系统存在的攻击漏洞,及时安装系统补丁,对重要信息(如系统配置信息)建立和完善备份机制,对一些特权账号(如管理员账号)的密码谨慎设置,通过一系列的举措可以把攻击者的可乘之机降低到最小。计算机紧急响应协调中心发现,几乎每个受到DDoS攻击的系统都没有及时打上补丁。统计分析显示,许多攻击者在对企业的攻击中获得很大成功,并不是因为攻击者的工具和技术如何高级,而是因为他们所攻击的基础架构本身就漏洞百出。
8. 系统资源优化
合理优化系统,避免系统资源的浪费,尽可能减少计算机执行少的进程,更改工作模式,删除不必要的中断让机器运行更有效,优化文件位置使数据读写更快,空出更多的系统资源供用户支配,以及减少不必要的系统加载项及自启动项,提高web服务器的负载能力。
9. 过滤不必要的服务和端口
就像防贼就要把多余的门窗关好封住一样,为了减少攻击者进入和利用已知漏洞的机会,禁止未用的服务,将开放端口的数量最小化就十分重要。端口过滤模块通过开放或关闭一些端口,允许用户使用或禁止使用部分服务,对数据包进行过滤,分析端口,判断是否为允许数据通信的端口,然后做相应的处理。
10. 限制特定的流量
检查访问来源并做适当的限制,以防止异常、恶意的流量来袭,限制特定的流量,主动保护网站安全。
对抗DDoS攻击是一个涉及很多层面的问题,抗DDoS需要的不仅仅是一个防御方案,一个设备,更是一个能制动的团队,一个有效的机制。我们都听过一句话——god helps those who help themselves. 天助自助者。因此,面对攻击大家需要具备安全意识,完善自身的安全防护体系才是正解。随着互联网业务的越发丰富,可以预见DDoS攻击还会大幅度增长,攻击手段也会越来越复杂多样。安全是一项长期持续性的工作,需要时刻保持一种警觉,更需要全社会的共同努力。