|
:
请求方 服务方
---------------------> SYN
SYN-ACK <----------------
----------------------> ACK
而TCP-SYN flood在它的实现过程中只有前两个步骤,当服务方收到请求方的SYN并
回送SYN-ACK确认消息后, 请求方由于采用源地址欺骗等手段,致使服务方得不到ACK回
应,这样,服务方会在一定时间处于等待接收请求方ACK消息的状态,一台服务器可用的
TCP连接是有限的,如果恶意攻击方快速连续的发送此类连接请求,则服务器可用TCP连
接队列很快将会阻塞,系统可用资源,网络可用带宽急剧下降,无法向用户提供正常的
网络服务。
对于solaris 2.5.1,只有安装了patch 103582-1(或以上)才能防止syn_flood.在
synflood没有流行以前,连接队列和backlog队列是相同的,solairs 2.6/7和安装了
patch以后的2.5.1系统,现在存在两条队列,一个是已连接的队列,一条是未连接完成的
队列。SYN攻击时只能填充后一条队列,而且,一旦队列满,将随机丢弃老的syn包。系
统还会监控这个队列被短时间填充的情况,一旦怀疑是syn_flood,将在系统的messages
中记录下来。
Mar 8 19:24:01 example unix: WARNING: High TCP connect timeout rate!
System (port 80) may be under a SYN flood attack!
新队列的大小也是可以调节的,繁忙的web服务器需要提高未连接队列的大小。默认的大
小是1024,我们可以提高到4096。
ndd –set /dev/tcp tcp_conn_req_max_q0 4096
当然,一般情况下,核心的队列增大,系统的内存最好也应有相应的增加。
12、连接耗尽攻击
和SYN flood攻击不同,连接耗尽攻击不太常见。因为这种攻击必须使用真实IP,攻击的
目标是已连接队列。许多系统有一个同时连接的上限,取决于核心参数和系统内存情况
。作为通常的web服务器,这个上限值很难达到,因为http的连接是典型的短时连接。但
是一个攻击者可能快速发送大量的连接请求,同时保持连接,这样正常访问者的连接就
可能被服务器拒绝。
我们可以通过优化系统核心和增加内存来缓解,但不是根本的方法。 << 上一页 [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] ... 下一页 >> |
|
|
|
|
|
|
|