DDoS分析

参考自:五步七招,开启最强DDoS攻防战! (林伟壕)

DDoS攻击具有以下趋势:
  • 国际化 > 现在的DDoS攻击越来越国际化,而我国已经成为仅次于美国的第二大DDoS攻击受害国,而国内来自海外的DDoS攻击源占比也越来越高;
  • 超大规模化 > 因为跨网调度流量越来越方便、流量购买价格越来越低廉,现在DDoS攻击流量规模越来越大。特别是2014年底,某云还遭受了高达450Gbps的攻击;
  • 市场化 > 市场化势必带来成本优势,现在各种在线DDoS平台、肉鸡交易渠道层出不穷,使得攻击者能以很低的成本发起规模化攻击。针对流量获取方式的对比可以参考下表:


    流量获取方式对比图
DDoS攻击原理科普

DDoS的攻击原理,往简单说,其实就是利用TCP/UDP协议规律,通过占用协议栈资源或者发起大流量拥塞,达到消耗目标机器性能或者网络的目的,下面我们先简单回顾TCP“三次握手”与“四次挥手”以及UDP通信流程:


TCP三次握手与四次挥手
TCP连接和断开示意图
TCP建立连接:三次握手
  • client: syn
  • server: syn+ack
  • client:ack
TCP断开连接:四次挥手
  • client: fin
  • server: ack
  • server: fin
  • client: ack
UDP通信流程
UDP通信流程图

根据上图可发现,UDP通信是无连接、不可靠的,数据是直接传输的,并没有协商的过程。


按照攻击对象的不同,将攻击原理和攻击危害的分析分成3类,分别是攻击网络带宽资源、应用以及系统。

攻击网络带宽资源
攻击网络带宽资源
攻击系统资源
攻击系统资源
攻击应用资源
攻击应用资源
应对Udp floading的处理方法:
Udp_floading处理方法




从不同层面进行防护

按照攻击流量规模分类
  • 叫小流量:小于1000Mbps,且在服务器硬件与应用接受范围之内,并不影响业务的: 利用iptables或者DDoS防护应用实现软件层防护。
  • 大型流量:大于1000Mbps,但在DDoS清洗设备性能范围之内,且小于机房出口,可能影响相同机房的其他业务的:利用iptables或者DDoS防护应用实现软件层防护,或者在机房出口设备直接配置黑洞等防护策略,或者同时切换域名,将对外服务IP修改为高负载Proxy集群外网IP,或者CDN高仿IP,或者公有云DDoS网关IP,由其代理到RealServer;或者直接接入DDoS清洗设备。
  • 超大规模流量:在DDoS清洗设备性能范围之外,但在机房出口性能之内,可能影响相同机房的其他业务,或者大于机房出口,已经影响相同机房的所有业务或大部分业务的:联系运营商检查分组限流配置部署情况并观察业务恢复情况。
按照攻击流量协议分类
  • syn/fin/ack等tcp协议包:设置预警阈值和响应阈值,前者开始报警,后者开始处理,根据流量大小和影响程度调整防护策略和防护手段,逐步升级。
  • UDP/DNS query等UDP协议包:对于大部分游戏业务来说,都是TCP协议的,所以可以根据业务协议制定一份TCP协议白名单,如果遇到大量UDP请求,可以不经产品确认或者延迟跟产品确认,直接在系统层面/HPPS或者清洗设备上丢弃UDP包。
  • http flood/CC等需要跟数据库交互的攻击:这种一般会导致数据库或者webserver负载很高或者连接数过高,在限流或者清洗流量后可能需要重启服务才能释放连接数,因此更倾向在系统资源能够支撑的情况下调大支持的连接数。相对来说,这种攻击防护难度较大,对防护设备性能消耗很大。
  • 其它: icmp包可以直接丢弃,先在机房出口以下各个层面做丢弃或者限流策略。现在这种攻击已经很少见,对业务破坏力有限。

你可能感兴趣的:(DDoS分析)