[ 来源:http://www.it55.com | 作者: | 时间:2007-12-13 | 收藏 | 推荐 ] 【大 中 小】
Mstream[8]工具通过改变TCP数据包的ACK标志来攻击目标。Mstream是一个简单的点对点TCP ACK洪水攻击工具。它通过TCP和UDP数据包来传输,通信过程是没有经过加密的,主攻击者通过远程登录到受害者的机器,而且访问操作是经过密码保护的。在其它的DDoS攻击工具中都没有这个特征。
Sharft[9]是Trinoo的一个派生的工具。它用UDP在操作者和代理端之间进行通信。攻击者通过TCP远程连接来和操作者进行通信。Sharft攻击可以独立的运行,也可以联合UDP/TCP/ICMP洪水攻击中的一种发起攻击。数据包中的源IP地址和源端口号都被设置成随机的。在攻击中数据包的大小是固定。一个新的特征是在攻击中可以实时改变操作者的IP地址和端口,使检测工具很难检测出来。Shaft的另一个与众不同的特征是它可以实时改变控制的主服务器和端口,因此使的入侵检测工具就更难检测出来,更重要的是shaft提供了在洪水攻击中的统计特征。这个统计特征对攻击者来说是非常有用的,通过这些特征,攻击者可以查出受害者的系统何时彻底崩溃,以便于知道何时停止增加机器来进行DDoS攻击。
在分析完上述有效的DDoS攻击的工具后,我们可以发现DDoS攻击具有如下的特征:
①数据包的源IP地址被设成随机的;
②数据包的源端口和目的端口被设成随机的;
③一些标志位(URG,ACK),片断,TCP属性,TTL和客户端的SEQ序列号由伪随机数生成器产生。
DDoS攻击不需破解密码,也不要窃取系统资料,只要在网络上的任一角落都可以发动攻击。DDoS攻击由来自不同的源地址的数据包流组成,这类攻击控制Internet上合作的主机来耗尽目标机一些关键资源使得服务器合法用户的请求被拒绝。更重要的是,DDoS攻击流没有很明显的特征能够用来直接和大规模的检测和过滤。
3、基于RBF-NN的实时监测DDoS攻击的模型
3.1、模型概述
实时监测模型包括三个模块:
1)数据采集器
因为TCP协议是应用最广泛的协议而且WWW是Internet上应用最广的服务。所以这个模型是针对TCP洪水攻击的,当然这种模型也可以用到UDP和ICMP协议中。
TCP数据报格式如图2所示。

图2 TCP数据报格式
数据采集器用sniffer嗅探器抓到每个数据包的如下字段:源端口号,客户端的SEQ序列号,窗口大小,和SYN,ACK,FIN,PSH,URG,RST六个标志位。同时把每个数据包的时间戳也记录下来以便把数据包分到重叠的时间帧中。不同的源端口和窗口大小的数目用来评估每一个时间帧。SEQ序列号是由客户端产生的32位的随机数作为TCP连接的认证。估算出不同的SEQ序列号需要很大的存储空间和计算能力。实验结果显示,尽管客户端的SEQ序列号不同,但是用高16位足够可以估算出SEQ序列号的特征。16位可以存储65535字节长的信息。
每一时间帧的统计信息是来自下面六个标志出现时被设置的频率:SYN,ACK,FIN,PSH,URG,RST。实验显示,这些标志在DDoS攻击的出现时提供了重要的信息。
需要强调的是尽管源IP地址提供了重要的信息,但在采集过程中没有用到,主要是基于以下几方面的原因:
①它需要很高的计算能力来存储每个地址;
②它不能够提供有关包长度的信息;
③IP源地址可能已经被更改,而被设置成随机的地址;
由TCP/IP传输的数据包中的其它一些域例如Time- To-Live域,就没有包含关于DDoS攻击出现时的信息,所以也不记录。
2)特征估计器
用六个标志位出现的频率,源端口的地址,SEQ序列号和窗口大小来评估每个时间帧。六个标记的每个时间帧的统计特性是每个标记被设置的概率。用源端口,SEQ序列号和窗口大小的每个时间帧的数据包的总数来划分不同的值。
3)DDoS检测器
每个时间帧用9个特征向量来激活有两个输出的基于RBF的神经网络。最活跃的输出神经元检测出DDoS攻击的出现,或者判断出时间帧是常规的流量。研究显示,少量的隐单元用来检测DDoS攻击就能够获得很高的检测效率。评价RBF-NN区分是DDoS攻击流量还是常规的数据流的分类的能力,用一个仅包含三个特征的输入向量来实现。
3.2、RBF—NN的学习过程
收集来的数据用来产生两个不同学习场景。在第一个场景中,DDoS监测器用常规的WWW和纯粹的DDoS攻击流量来学习。在第二个场景中把纯粹的DDoS流量换成正在发起DDoS攻击时,正在提供正常服务的服务器时的混合的数据流。在这两个学习场景中,分别用单一种类的数据流和混合的数据流用来估计RBF-NN的效率。
混合的高斯函数用来作为RBF的非线性函数。高斯函数的阀值和变量用K-means聚族算法来获得。K-means初始中心的选取将会严重影响学习过程的质量。选择好的初始中心对不同的网络拓扑都能够获得很好的分类效率。因此,用不同的初始值和K-means算法可以得到多个局部的K-means中心。在从多个局部的K-means中心中选取出最适当的一个中心作为最终K-means中心,以便使分类错误率达到最小。
在重新估计K-means中心的过程中,K-means算法中一些标记的变量为0(例如,RST,URG标志)或者非常接近于零,这样就会造成局部最小化问题.为了解决这个问题,我们可以从具体的实验中获得一个小的数值,作为估计变量的值,这样将会得到很好的分类速率。
3.3、特征集的描述
用两个不同的特征集来评价RBF-NN监测DDoS攻击的效率,这两个特征集是由建立输入向量的特征的数目来决定的。在很多情况下用最初的9个统计特征就能够进行正确分类,而且正确率超过98%。进一步的研究,发现到许多输入向量的域,例如Time-To—Live,窗口大小和一些标记没有包含很多可以用来监测DDoS攻击的信息。这就预示好的系统可以减少输入向量,所以我们设计的这个监测模型可以把输入向量集减少到3个,即只运用源端口,SEQ序列号,SYN标志作为输入向量。这个特征的集用常规的低性能的计算机系统就能够用来评价实时的监测情况。我认为这三个特征是除了源IP地址之外最重要的,我们在基于RBF-NN的网络检测DDoS攻击中没有用IP源地址是为了节省计算资源,减少在存储方面的需求。
(编辑:IT资讯之家 www.it55.com)