鹏博士:常见DDos攻击及有效处理方法

2018-3-23 16:27:12      点击:
    首先深入理解什么是DDOS。一群恶霸试图让对面那家有着竞争关系的商铺无法正常营业,他们会采取什么手段呢?(只为举例,切勿模仿)恶霸们扮作普通客户一直拥挤在对手的商铺,赖着不走,真正的购物者却无法进入;或者总是和营业员有一搭没一搭的东扯西扯,让工作人员不能正常服务客户;也可以为商铺的经营者提供虚假信息,商铺的上上下下忙成一团之后却发现都是一场空,最终跑了真正的大客户,损失惨重。此外恶霸们完成这些坏事有时凭单干难以完成,需要叫上很多人一起。嗯,网络安全领域中DoS和DDoS攻击就遵循着这些思路。
    在信息安全的三要素——“保密性”、“完整性”和“可用性”中,DoS(Denial of Service),即拒绝服务攻击,针对的目标正是“可用性”。该攻击方式利用目标系统网络服务功能缺陷或者直接消耗其系统资源,使得该目标系统无法提供正常的服务。

DdoS的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。单一的DoS攻击一般是采用一对一方式的,当攻击目标CPU速度低、内存小或者网络带宽小等等各项指标不高的性能,它的效果是明显的。随着计算机与网络技术的发展,计算机的处理能力迅速增长,内存大大增加,同时也出现了千兆级别的网络,这使得DoS攻击的困难程度加大了-目标对恶意攻击包的"消化能力"加强了不少。这时候分布式的拒绝服务攻击手段(DDoS)就应运而生了。DDoS就是利用更多的傀儡机肉鸡)来发起进攻,以比从前更大的规模来进攻受害者

DDos防御需要根据不同的攻击类型和不同的攻击方式指定对应的策略才能达到最有效的防御。常见的DDos包括:Flood、CC和反射等。

1、flood攻击

Flood类的攻击最常见并简单有效,黑客通过控制大量的肉鸡同时向服务器发起请求,进而达到阻塞服务端处理入口或网卡队列。

针对消耗性Flood攻击,如:SYN

Flood、ACK

Flood、UDP

Flood,最有效并可靠的防御方法是做源认证和资源隔离,即:在客户端和服务端建立回话时对请求的源进行必要的认证,并将认证结果形成可靠的白名单或黑名单,进而保证服务端处理业务的有效性。

若黑客肉鸡足够多并伪造数据包的真实性较高时,只能通过提升服务端的处理速度和流量吞吐量来达到较好的对抗效果。

2、CC攻击

CC攻击是一种针对Http业务的攻击手段,该攻击模式不需要太大的攻击流量,它是对服务端业务 处理瓶颈的精确打击,攻击目标包括:大量数据运算、数据库访问、大内存文件等,攻击特征包括:

a、只构造请求,不关心请求结果,即发送完请求后立即关闭会话;

b、持续请求同一操作;

c、故意请求小字节的数据包(如下载文件);

d、qps高;

针对CC的攻击的防御需要结合具体业务的特征,针对具体的业务建立一系列防御模型,如:连接特征模型,客户端行为模型,业务访问特征模型等,接收请求端统计客户信息并根据模型特征进行一系列处理,包括:列入黑名单,限制访问速率,随机丢弃请求等。

3、反射类攻击

反射攻击是一种模拟攻击客户端请求指定服务器,并利用请求和应答之间的流量差值进行流量放大,进而达到攻击效果的攻击方式,常见的攻击类型包括:NTP,DNS等。

针对反射攻击比较有效的防御手段有:访问请求限速、反射流限速、请求行为分析等,这些防御手段没法完全过滤攻击流,只能达到抑制攻击的效果。

点击将有更多机房选择