分布式拒绝服务攻击

 一:简介  

  分布式拒绝服务(DDoS:Distributed Denial of Service)攻击指借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DoS攻击,从而成倍地提高拒绝服务攻击的威力。通常,攻击者使用一个偷窃帐号将DDoS主控程序安装在一个计算机上,在一个设定的时间主控程序将与大量代理程序通讯,代理程序已经被安装在Internet上的许多计算机上。代理程序收到指令时就发动攻击。利用客户/服务器技术,主控程序能在几秒钟内激活成百上千次代理程序的运行。

  分布式拒绝服务攻击英文缩写即"Ddos"。DdoS的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。DdoS攻击手段是在传统的DoS攻击基础之上产生的一类攻击方式。单一的DoS攻击一般是采用一对一方式的,当攻击目标CPU速度低、内存小或者网络带宽小等等各项性能指标不高它的效果是明显的。随着计算机与网络技术的发展,计算机的处理能力迅速增长,内存大大增加,同时也出现了千兆级别的网络,这使得DoS攻击的困难程度加大了-目标对恶意攻击包的"消化能力"加强了不少,例如你的攻击软件每秒钟可以发送3,000个攻击包,但我的主机网络带宽每秒钟可以处理10,000个攻击包,这样一来攻击就不会产生什么效果。

  这时候分布式的拒绝服务攻击手段(DDoS)就应运而生了。你理解了DoS攻击的话,它的原理就很简单。如果说计算机与网络的处理能力加大了10倍,用一台攻击机来攻击不再能起作用的话,攻击者使用10台攻击机同时攻击呢?用100台呢?DDoS就是利用更多的傀儡机肉鸡)来发起进攻,以比从前更大的规模来进攻受害者。

  高速广泛连接的网络给大家带来了方便,也为DDoS攻击创造了极为有利的条件。在低速网络时代时,黑客占领攻击用的傀儡机时,总是会优先考虑离目标网络距离近的机器,因为经过路由器的跳数少,效果好。而现在电信骨干节点之间的连接都是以G为级别的,大城市之间更可以达到2.5G的连接,这使得攻击可以从更远的地方或者其他城市发起,攻击者的傀儡机位置可以在分布在更大的范围,选择起来更灵活了。

二:攻击方式

  DDoS攻击通过大量合法的请求占用大量网络资源,以达到瘫痪网络的目的。 这种攻击方式可分为以下几种:
  1. 通过使网络过载来干扰甚至阻断正常的网络通讯
  2. 通过向服务器提交大量请求,使服务器超负荷;
  3. 阻断某一用户访问服务器;
  4. 阻断某服务与特定系统或个人的通讯

  SYN flood是一种黑客通过向服务端发送虚假的包以欺骗服务器的做法。具体说,就是将包中的原IP地址设置为不存在或不合法的值。服务器一旦接受到该包便会返回接受请求包,但实际上这个包永远返回不到来源处的计算机。这种做法使服务器必需开启自己的监听端口不断等待,也就浪费了系统各方面的资源。

  LAND attack:这种攻击方式与SYN floods类似,不过在LAND attack攻击包中的原地址和目标地址都是攻击对象的IP。这种攻击会导致被攻击的机器死循环,最终耗尽资源而死机

  ICMP floods:ICMPfloods是通过向未良好设置的路由器发送广播信息占用系统资源的做法

  Application:与前面叙说的攻击方式不同,Application level floods主要是针对应用软件层的,也就是高于OSI的。它同样是以大量消耗系统资源为目的,通过向IIS这样的网络服务程序提出无节制的资源申请来迫害正常的网络服务。

三:攻击现象

    1.被攻击主机上有大量等待的TCP连接

      2.网络中充斥着大量的无用的数据包

    3.源地址为假 制造高流量无用数据,造成网络拥塞,使受害主机无法正常和外界通讯

  4.利用受害主机提供的传输协议上的缺陷反复高速的发出特定的服务请求,使主机无法处理所有正常请求;

  5.严重时会造成系统死机

四:流程

  DDoS并不象入侵一台主机那样简单。了解这些原理之后,你便会更加明白入侵者的意图,从此便掌握了预防的技巧。一般来说,黑客进行DDoS攻击时会经过这样的步骤

 

  搜集资料

 

  下列情况是黑客非常关心的情报:被攻击目标主机数目、地址情况 目标主机的配置、性能 目标的带宽。

 

  对于DDoS攻击者来说,攻击互联网上的某个站点,有一个重点就是确定到底有多少台主机在支持这个站点,一个大的网站可能有很多台主机利用负载均衡技术提供同一个网站的www服务
  如果要进行DDoS攻击的话,应该攻击哪一个地址呢?使这台机器瘫痪,但其他的主机还是能向外提供www服务,所以想让别人访问不到网站的话,要所有这些IP地址的机器都瘫掉才行。在实际的应用中,一个IP地址往往还代表着数台机器:网站维护者使用了四层或七层交换机来做负载均衡,把对一个IP地址的访问以特定的算法分配到下属的每个主机上去。这时对于DDoS攻击者来说情况就更复杂了,他面对的任务可能是让几十台主机服务都不正常。
  所以说事先搜集情报对DDoS攻击者来说是非常重要的,这关系到使用多少台傀儡机才能达到效果的问题。简单地考虑一下,在相同的条件下,攻击同一站点的2台主机需要2台傀儡机的话,攻击5台主机可能就需要5台以上的傀儡机。有人说做攻击的傀儡机越多越好,不管你有多少台主机我都用尽量多的傀儡机来攻就是了,反正傀儡机超过了时候效果更好。
 
五:防范
  到目前为止,进行DDoS攻击的防御还是比较困难的。首先,这种攻击的特点是它利用了tcp/ip协议的漏洞,除非你不用tcp/ip才有可能完全抵挡住的ddos攻击。
  不过即使它难于防范,也不是说我们就应该逆来顺受,实际上防止DDoS并不是绝对不可行的事情
  

  主机设置

  所有的主机平台都有抵御DoS的设置,总结一下,基本的有几种:
  关闭不必要的服务
  限制同时打开的Syn半连接数目
  缩短Syn半连接的time out 时间
  及时更新系统补丁
   

  设置

  网络设备可以从防火墙路由器上考虑。这两个设备是到外界的接口设备,在进行防DDoS设置的同时,要注意一下这是以多大的效率牺牲为代价的,对你来说是否值得。
  1.防火墙
禁止对主机的非开放服务的访问 限制同时打开的SYN最大连接数 限制特定IP地址的访问 启用防火墙的防DDoS的属性 严格限制对外开放的服务器的向外访问
第五项主要是防止自己的服务器被当做工具去害人。
  2.路由器
  以Cisco路由器为例
Cisco Express Forwarding(CEF) 使用 unicast reverse-path访问控制列表(ACL)过滤 设置SYN数据包流量速率 升级版本过低的ISO 为路由器建立log server
  防御ddos
  
   一. 启用 SYN 攻击保护
  启用 SYN 攻击保护的命名值位于此注册表项的下面:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services。
  值名称: SynAttackProtect
  建议值: 2
  有效值: 0 – 2
  说明:使 TCP 调整 SYN-ACK 的重传。配置此值后,在遇到 SYN 攻击时,对连接超时的响应将更快速。在超过 TcpMaxHalfOpen 或 TcpMaxHalfOpenRetried 的值后,将触发 SYN 攻击保护。
  
  
  设置 SYN 保护阈值
  下列值确定触发 SYN 保护的阈值。这一部分中的所有注册表项和值都位于注册表项 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services 的   下面。这些注册表项和值是:
  值名称: TcpMaxPortsExhausted
  建议值: 5
  有效值: 0 – 65535
  说明:指定触发 SYN 洪水攻击保护所必须超过的 TCP 连接请求数的阈值。
  
  值名称: TcpMaxHalfOpen
  建议的数值数据: 500
  有效值: 100 – 65535
  说明:在启用 SynAttackProtect 后,该值指定处于 SYN_RCVD 状态的 TCP 连接数的阈值。在超过 SynAttackProtect 后,将触发 SYN 洪水攻击保护。
  
   
 

 

 

posted on 2013-05-22 16:17  语辰  阅读(1085)  评论(0编辑  收藏  举报