***流程

要理解dos***,首先要理解TCP连接的
三次握手过程(Three-wayhandshake)。在
TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。
第一次握手:建立连接时,
客户端发送SYN包((SYN=i)到服务器,并进入SYNSEND状态,等待服务器确认。
第二次握手:服务器收到SYN包,必须确认客户的SYN(ACK=i+1),同时自己也发送一个SYN包((SYN=j)}即SYN+ACK包,此时服务器进入SYN_RECV状态;
第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ACK=j+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手,客户端与服务器开始传送数据。
半连接队列:在三次握手协议中,服务器维护一个半连接队列,该队列为每个客户端的SYN包(SYN=i)开设一个条目,该条目表明服务器已收到SYN包,并向客户发出确认,正在等待客户的确认包。这些条目所标识的连接在服务器处于SYN_RECV状态,当服务器收到客户的确认包时,删除该条目,服务器进入ESTABLISHED状态。
Backlog参数:表示半连接队列的最大容纳数目。
SYN-ACK重传次数:服务器发送完SYN-ACK包,如果未收到客户确认包,服务器进行首次重传,等待一段时间仍未收到客户确认包,进行第二次重传,如果重传次数超过系统规定的最大重传次数,系统将该连接信息、从半连接队列中删除。注意,每次重传等待的时间不一定相同。
半连接存活时间:是指半连接队列的条目存活的最长时间,也即服务从收到SYN包到确认这个报文无效的最长时间,该时间值是所有重传请求包的最长等待时间总和。有时也称半连接存活时间为Timeout时间、SYN_RECV存活时间。
上面三个参数对系统的TCP连接状况有很大影响。

要对SERVER实施拒绝服务***,实质上的方式就是有两个:

一,迫使服务器的缓冲区满,不接收新的请求。

二,使用IP欺骗,迫使服务器把合法用户的连接复位,影响合法用户的连接

这就是DOS***实施的基本思想。

具体实现有这样的方法:

1、SYNFLOOD利用服务器的连接缓冲区(BacklogQueue),利用特殊的程序,设置TCP的Header,向服务器端不断地成倍发送只有SYN标志的TCP连接请求。当服务器接收的时候,都认为是没有建立起来的连接请求,于是为这些请求建立会话,排到缓冲区队列中。如果你的SYN请求超过了服务器能容纳的限度,缓冲区队列满,那么服务器就不再接收新的请求了。其他合法用户的连接都被拒绝掉。可以持续你的SYN请求发送,直到缓冲区中都是你的只有SYN标记的请求。

2、IP欺骗DOS***这种***利用RST位(TCP首部中的6个标志比特之一,表示重置连接、复位连接)来实现。假设现在有一个合法用户(1.1.1.1)已经同服务器建立了正常的连接,***者构造***的TCP数据,伪装自己的IP为1.1.1.1,并向服务器发送一个带有RST位的TCP数据段。服务器接收到这样的数据后,认为从1.1.1.1发送的连接有错误,就会清空缓冲区中建立好的连接。这时,如果合法用户1.1.1.1再发送合法数据,服务器就已经没有这样的连接了,该用户就必须从新开始建立连接。***时,伪造大量的IP地址,向目标发送RST数据,使服务器不对合法用户服务。

3、带宽DOS***如果你的连接带宽足够大而服务器又不是很大,你可以发送请求,来消耗服务器的缓冲区消耗服务器的带宽。这种***就是人多力量大了,配合上SYN一起实施DOS,威力巨大。

4、自身消耗的DOS***这是一种老式的***手法。说老式,是因为老式的系统有这样的自身BUG。比如Win95(winsockv1),CiscoIOSv.10.x,和其他过时的系统。这种DOS***就是把请求客户端IP和端口弄成主机的IP和端口相同,发送给主机。使得主机给自己发送TCP请求和连接。这种主机的漏洞会很快把资源消耗光。直接导致当机。这中伪装对一些身份认证系统还是威胁巨大的。

上面这些实施DOS***的手段最主要的就是构造需要的TCP数据,充分利用TCP协议。这些***方法都是建立在TCP基础上的。还有其他的DOS***手段。

5、塞满服务器的硬盘通常,如果服务器可以没有限制地执行写操作,那么都能成为塞满硬盘造成DOS***的途径,比如:发送垃圾邮件。一般公司的服务器可能把邮件服务器和WEB服务器都放在一起。破坏者可以发送大量的垃圾邮件,这些邮件可能都塞在一个邮件队列中或者就是坏邮件队列中,直到邮箱被撑破或者把硬盘塞满。让日志记录满。***者可以构造大量的错误信息发送出来,服务器记录这些错误,可能就造成日志文件非常庞大,甚至会塞满硬盘。同时会让管理员痛苦地面对大量的日志,甚至就不能发现***者真正的***途径。向匿名FTP塞垃圾文件。这样也可以塞满硬盘空间。

6、合理利用策略一般服务器都有关于帐户锁定的安全策略,比如,某个帐户连续3次登陆失败,那么这个帐号将被锁定。这点也可以被破坏者利用,他们伪装一个帐号去错误登陆,这样使得这个帐号被锁定,而正常的合法用户就不能使用这个帐号去登陆系统了。