万卷书   首页 > 电脑书籍 > 黑客攻防战 >简评黑客的终极武器-DDoS
 
上面已经说过,DDoS其中的一种破坏方法就是破坏TCP/IP协议。其中最典型的例子就是Ping of Death攻击啦,这些黑客建造了一个超过了IP标准的最大长度--65535个字节的IP数据包。(Sinbad注:Ping 'o Death攻击是发送多个IP分片,总长度超过65535;jolt2才是连续发送一个偏移量很大的数据包)当这个"浮肿的"数据包到达的时候,,它就使得一个使用脆弱的TCP/IP协议软件和操作系统的服务器瘫痪。另外一个进行攻击的例子是Teardrop, 它主要是利用了系统重组IP数据包过程中的漏洞工作的。一个数据包在从互联网的另一端到你这里的路上也许会被分拆成更小的数据报文。这些数据报中的每一个都拥有最初的IP数据报的报头,同时还拥有一个偏移字节来标示它拥有原始数据报中的哪些字节。通过这些信息,一个被正常分割的数据报文能够在它的目的地被重新组装起来,并且网络也能够正常运转而不被中断。当一次Teardrop攻击开始时,你的服务器将受到拥有重叠的偏移字段的IP数据包的轰炸。如果你的服务器或是路由器不能丢弃这些数据包而且如果企图重组它们,你的服务器就会很快瘫痪。如果你的系统被及时更新了,或者你拥有一个可以阻挡Teardrop数据包的防火墙,你应该不会有什么麻烦。

  另外还有就是利用TCP/IP协议本身的漏洞来进行攻击的手段,这些手段也不少,其中最流行的SYN攻击。SYN工作的原理就是利用两个互联网程序间协议握手的过程进行的攻击。协议握手的过程如下,其中一个应用程序向另一个程序发送一个TCP SYN(同步)数据包。然后目标程序向第一个程序发送一个TCP-ACK应答数据包作为回答;第一个程序最后用一个ACK应答数据包确认已经收到。一旦这两个程序握手成功,它们就准备一起运行了。 SYN攻击用一堆TCP SYN数据包来淹没它的受害者。每个SYN数据包迫使目标服务器产生一个SYN-ACK应答数据包然后等待对应的ACK应答。这很快就导致过量的SYN-ACK一个接一个的堆积在缓存队列里。当缓存队列满了以后,系统就会停止应答到来的SYN请求。如果SYN攻击中包括了拥有错误IP源地址的SYN数据包,情况很快就会变得更糟。在这种情况下,当SYN-ACK被送出的时候,ACK应答就永远不会被收到。飞快充满的缓存队列使得合法程序的SYN请求无法再通过。更加厉害的是,与之相似的Land攻击手段使用欺骗性的SYN数据包,它带有一个伪装的IP地址,使得它看起来像是来自你自己的网络。现在,SYN攻击就像是来自于你防火墙的内部,这使得问题更加严重。 大多数时新的操作系统和防火墙可以阻止SYN攻击。另一个简单的阻止SYN攻击的方法是阻塞掉所有带有已知的错误的IP源地址的数据包。这些数据包应该包括带有错误的为内部保留的IP地址的外部数据包。

  另外还有Smurf攻击和用户数据报文协议冲击。这两种攻击都使用了同一的手段。当你被Smurf攻击的时候,攻击者用互联网控制信息协议(ICMP)的应答数据包--一种特殊的ping数据包来填充你的路由器。这些数据包的目的IP地址同时是你的广播地址,这使得你的路由器将ICMP数据包广播到网络上的每一台主机。不言自明的是,对于一个大型网络来说,它将引起巨大的网络信息流量。而且,就像Land攻击那样,如果黑客将Smurf攻击和欺骗手段结合起来,破坏力就更大。免Smurf攻击的一种简单的方法就是在路由器中禁用广播地址并且设置你的防火墙来过滤ICMP应答协议。你也可以设置你的服务器来使得它不对发送ICMP数据包到IP广播地址的要求做出响应。这些设置不会影响到你的网络的正常工作因为很少有应用程序使用IP协议的广播功能。

上一页 下一页