DDOS攻击是一种恶意的攻击手段,主要以以消耗网络带宽的攻击手段,受到攻击需求防御方法,如租用高防服务器,或者高防CDN等不同的防御手段。如何使用高防CDN来帮助网站防御DDOS攻击呢
ddos攻击意思是黑客通过几千台甚至上万台肉鸡每秒向你的网站ip发送几G甚至几T的流量,对你网站ip进行的流量攻击,一般受攻击的网站会因为流量猛涨,内存占用过高而打不开。
DDOS的分类
在了解防御之前先简单了解一下各类攻击,因为DDoS是一类攻击而并非一种攻击,并且DDoS的防御是一个可以做到相对自动化但做不到绝对自动化的过程,很多演进的攻击方式自动化不一定能识别,还是需要进一步的专家肉眼判断。
网络层攻击: Syn-flood
利用TCP建立连接时3次握手的“漏洞”,通过原始套接字发送源地址虚假的SYN报文,使目标主机永远无法完成3次握手,占满了系统的协议栈队列,资源得不到释放,进而拒绝服务,是互联网中最主要的DDOS攻击形式之一。网上有一些加固的方法,例如调整内核参数的方法,可以减少等待及重试,加速资源释放,在小流量syn-flood的情况下可以缓解,但流量稍大时完全不抵用。防御syn-flood的常见方法有:syn proxy、syn cookies、首包(第一次请求的syn包)丢弃等。
ACK-flood
对于虚假的ACK包,目标设备会直接回复RST包丢弃连接,所以伤害值远不如syn-flood。DDOS的一种原始方式。
UDP-flood
使用原始套接字伪造大量虚假源地址的UDP包,目前以DNS协议为主。
ICMP-flood
Ping洪水,比较古老的方式。
CC攻击
ChallengeCollapsar的名字最早源于挑战国内知名安全厂商绿盟的抗DDOS设备-“黑洞”,通过botnet的傀儡主机或寻找匿名代理服务器,向目标发起大量真实的http请求,最终消耗掉大量的并发资源,拖慢整个网站甚至彻底拒绝服务。
互联网的架构追求扩展性本质上是为了提高并发能力,各种SQL性能优化措施:消除慢查询、分表分库、索引、优化数据结构、限制搜索频率等本质都是为了解决资源消耗,而CC大有反其道而行之的意味,占满服务器并发连接数,尽可能使请求避开缓存而直接读数据库,读数据库要找最消耗资源的查询,最好无法利用索引,每个查询都全表扫描,这样就能用最小的攻击资源起到最大的拒绝服务效果。
互联网产品和服务依靠数据分析来驱动改进和持续运营,所以除了前端的APP、中间件和数据库这类OLTP系统,后面还有OLAP,从日志收集,存储到数据处理和分析的大数据平台,当CC攻击发生时,不仅OLTP的部分受到了影响,实际上CC会产生大量日志,直接会对后面的OLAP产生影响,影响包括两个层面,一个当日的数据统计完全是错误的。第二个层面因CC期间访问日志剧增也会加大后端数据处理的负担。CC是目前应用层攻击的主要手段之一,在防御上有一些方法,但不能完美解决这个问题。
混合型攻击
在实际大流量的攻击中,通常并不是以上述一种数据类型来攻击,往往是混杂了TCP和UDP流量,网络层和应用层攻击同时进行。
反射型攻击
真实TCP服务器发送TCP的SYN包,而这些收到SYN包的TCP server为了完成3次握手把SYN|ACK包“应答”给目标地址,完成了一次“反射”攻击,攻击者隐藏了自身,但有个问题是攻击者制造的流量和目标收到的攻击流量是1:1,且SYN|ACK包到达目标后马上被回以RST包,整个攻击的投资回报率不高。
反射型攻击的本质是利用“质询-应答”式协议,将质询包的源地址通过原始套接字伪造设置为目标地址,则应答的“回包”都被发送至目标,如果回包体积比较大或协议支持递归效果,攻击流量会被放大,成为一种高性价比的流量型攻击。
反射型攻击利用的协议目前包括NTP、Chargen、SSDP、DNS、RPC portmap等等。
脉冲型攻击
很多攻击持续的时间非常短,通常5分钟以内,流量图上表现为突刺状的脉冲。
之所以这样的攻击流行是因为“打-打-停-停”的效果最好,刚触发防御阈值,防御机制开始生效攻击就停了,周而复始。蚊子不叮你,却在耳边飞,刚开灯想打它就跑没影了,当你刚关灯它又来了,你就没法睡觉。
自动化的防御机制大部分都是依靠设置阈值来触发。尽管很多厂商宣称自己的防御措施都是秒级响应,但实际上比较难。
防御的方法:
1.按照您被DDOS攻击的峰值换一个高防服务器,但是比较麻烦需要做数据迁移,其次因为高防物理机都是硬防,攻击流量大的情况下是对用户有影响的,但是价格是要比直接在源服务器上接入防御要便宜的。
2.就是接入高防IP或者高防CDN,这两种情况下高防CDN是只针对网站业务,在防御的同时还能做到加速,高防IP的话基本所有业务都能使用,且防御能力更强。而且这两种都是弹性防御,隐藏源IP,可以做到您被攻击的时候对您本来的业务不造成任何影响。超过峰值也可以临时给你加防御,优先保证业务正常运营,永不回源。