一种基于序列假设测试的扫描检测优化方法技术

技术编号:13351580 阅读:58 留言:0更新日期:2016-07-15 13:11
本发明专利技术提供的是一种基于序列假设测试的扫描检测优化方法。当前连接成功与否的判断:首先判断当前连接是成功的还是失败的,同时要判断当前连接的源IP地址和目的IP地址是否事先已经存下来了;对每个源IP地址求比率值:根据两种情况分别对每个源IP地址求比率值;筛选扫描源IP地址:将比率值与阈值进行比较,以此来判断此IP地址是否为扫描源。本发明专利技术主要用于解决现有的一些端口扫描方法并不能很好的检测出扫描主机,都会有比较高的错报和漏报的情况。通过实验验证了此方法比阈值随机游走算法有较高的检测率以及更低的误检率。

【技术实现步骤摘要】
一种基于序列假设测试的扫描检测优化方法
本专利技术涉及的是一种网络扫描检测方法。具体地说是一种基于序列假设测试的扫描检测优化方法。
技术介绍
随着防御功能越来越强大,网络扫描方法的变化也越来越多样化,传统的、简单的、低层次的端口扫描检测技术,已经不能够满足要求,难以正确的、高效的检测出端口扫描行为,所以需要对正常的网络流量和数据包特点以及发生扫描行为时的流量和数据包特点进行更加深入的对比分析。但是,正常的网络行为会对检测端口扫描行为发生干扰,发生误检的情况也会存在。此时,如何提高检测端口扫描行为的正确率,降低检测端口扫描行为的误检率变得尤为重要。目前的阈值随机游走算法是针对整个网络中是否存在扫描行为进行检测,当源主机发送一个连接到之前已经连接过的目的IP地址,此时不会更新源主机的比率值,只有当源主机发送一个连接到新的目的主机,无论这个连接是成功还是失败,此时会更新源主机的比率值。若源主机后续还会向相同的目的主机发起连接尝试,对于相同的目的主机来说,无论是相同端口或者是不同端口,源主机的比率值都不会更新。同时,在实际网络中,有时某个正常的网络应用会反复向一个已经关闭的端口发起连接请求,这种情况经常在服务器发生故障而客户软件被配置为自动保持同服务器的连接时出现。此时,连接请求总是失败,从而导致很低的连接成功率而被误判为端口扫描。
技术实现思路
本专利技术的目的在于提供一种具有较高的检测率以及较低的误检率的基于序列假设测试的扫描检测优化方法。本专利技术的目的是这样实现的:步骤一,当前连接成功与否的判断:首先判断当前连接是成功的还是失败的,同时要判断当前连接的源IP地址和目的IP地址是否事先已经存下来了;步骤二,对每个源IP地址求比率值:根据两种情况分别对每个源IP地址求比率值;步骤三,筛选扫描源IP地址:将比率值与阈值进行比较,以此来判断此IP地址是否为扫描源。本专利技术还可以包括:1、所述当前连接成功与否的判断具体包括:首先假设源主机为主机A、目的主机为B,当前连接如果是失败的连接包括两种情况,第一种是A向B发送SYN数据包后,B向A回复RST数据包;第二种是A向B发送SYN数据包后,已经超过了一定的时间,但是却没有收到来自B发送的RST数据包,当前连接如果是成功的连接则为,A收到了B发送的SYN-ACK数据包。2、所述对每个源IP地址求比率值,具体包括:首先定义一些表,令NS表存储连接成功的目的IP地址和目的端口;令FC表存储连接失败的源IP地址和目的IP地址;令SC存储连接成功的源IP地址和目的IP地址,然后开始分两种情况计算比率值,第一种情况需要遍历SC表,若源主机IP地址和目的IP地址对不在SC中,就把它们加入到SC中,源IP的比率值为上一次计算的比率值乘以θ1/θ0;第二种情况需要看目的IP地址和目的端口是否在表NS中,若不在,遍历FC表,若源IP地址和目的IP地址对不在FC中,就把它们加入到FC中,源IP的比率值为上一次计算的比率值乘以(1-θ1)/(1-θ0)。本专利技术针对现有的一些端口扫描方法并不能很好的检测出扫描主机,都会有比较高的错报和漏报的情况,提出了一种基于序列假设测试的扫描检测优化方法。首先要判断当前连接是成功的还是失败的,同时还要判断当前连接的源IP地址和目的IP地址是否事先已经存下来了。对于这一步骤,引入了IP地址与端口进行结合的方法。其次,根据连接成功或者失败这两种情况分别去计算每个源IP地址的比率值。最后,将比率值与阈值进行比较,以此来判断此IP地址是否为扫描源。通过实验验证了此方法比阈值随机游走算法有较高的检测率以及更低的误检率。与现有技术相比,本专利技术具有如下的有益效果:本专利技术针对现有的一些端口扫描方法并不能很好的检测出扫描主机,都会有比较高的错报和漏报的情况,提出了一种基于序列假设测试的扫描检测优化方法,引入了IP地址与端口进行结合的方法。通过实验验证了此方法比阈值随机游走算法有较高的检测率以及更低的误检率。附图说明图1为基于常规TRW算法的流程图。图2为阈值随机游走方法和本方法结果对比图。具体实施方式下面结合具体实施例对本专利技术进行详细说明。本专利技术提出了一种基于序列假设测试的扫描检测优化方法,具体包括以下步骤:步骤1:当前连接成功与否的判断;步骤2:对每个源IP地址求比率值;步骤3:筛选扫描源IP地址;所述步骤1主要包括下列步骤:步骤11,首先假设源主机为主机A,目的主机为B。步骤12,当前连接如果是失败的连接,主要有以下两种情况:第一种是A向B发送SYN数据包后,B向A回复RST数据包;第二种是A向B发送SYN数据包后,已经超过了一定的时间,但是却没有收到来自B发送的RST数据包。步骤13,当前连接如果是成功的连接,主要有以下一种情况:A收到了B发送的SYN-ACK数据包。所述步骤2主要包括下列步骤:步骤21,首先定义一些表,令NS表存储连接成功的目的IP地址和目的端口;令FC表存储连接失败的源IP地址和目的IP地址;令SC存储连接成功的源IP地址和目的IP地址。步骤22,第一种计算比率值的情况:需要遍历SC表,若源主机IP地址和目的IP地址对不在SC中,就把它们加入到SC中,源IP的比率值为上一次计算的比率值乘以θ1/θ0。其中θ0表示如果发起连接的主机是正常的主机,连接成功的概率;θ1表示如果发起连接的主机是扫描主机,连接失败的概率。步骤23,第二种计算比率值的情况:需要看目的IP地址和目的端口是否在表NS中。若不在,遍历FC表,若源IP地址和目的IP地址对不在FC中,就把它们加入到FC中,源IP的比率值为上一次计算的比率值乘以(1-θ1)/(1-θ0)。所述步骤3主要包括下列步骤:步骤31,将每一个源主机的比率值与之前设定好的阈值进行比较。步骤32,如果比率值大于β/α,表明这个主机连接失败的次数很多,则此源IP地址是扫描源IP地址。其中,α和β代表常数,α=0.01,β=0.99。步骤33,如果比率值小于(1-β)/(1-α),表明这个主机连接成功的次数很多,则此源IP地址是良性主机IP地址。下面结合具体实施例来证明本专利技术的效果:(1)实验环境本实验是在Linux下用C语言开发,同时在Linux中需要安装libpcap和libnids包。本专利技术在实验中所用的数据是源自美国麻省理工学院的LINCOLN实验室的实验数据。我们选用使用比较广泛的1999年的实验数据。实验数据包含两个部分,一个是训练数据集,另一个是测试数据集。1999年DARPA入侵检测共提供了五周的实验数据,其中前三周作为训练数据集,第一周和第三周的训练数据集没有任何的攻击信息,入侵检测系统可以通过这两周的数据进行训练。第二周的数据集中包含了入侵攻击,攻击类型不仅包括1998年的一些攻击类型,还加入了新的攻击类型。主要的目的就是为如何去报告这些攻击提供例子。第四周第五周的数据是测试数据集。时间是从1999年9月16日到1999年10月1日。这两周共包含了56种攻击类型,具体的攻击事件的详细信息也有给出。(2)实验结果和分析本专利技术共选择五天的实验数据,分别为周一到周五,每天的数据都选择内网数据进行实验,共有5个文件,每个文件都是以tcpdump的格式给出,在这里需要将tcpdump格式的文件转换为pcap文本文档来自技高网...

【技术保护点】
一种基于序列假设测试的扫描检测优化方法,其特征是:步骤一,当前连接成功与否的判断:首先判断当前连接是成功的还是失败的,同时要判断当前连接的源IP地址和目的IP地址是否事先已经存下来了;步骤二,对每个源IP地址求比率值:根据两种情况分别对每个源IP地址求比率值;步骤三,筛选扫描源IP地址:将比率值与阈值进行比较,以此来判断此IP地址是否为扫描源。

【技术特征摘要】
1.一种基于序列假设测试的扫描检测优化方法,其特征是:步骤一,当前连接成功与否的判断:首先判断当前连接是成功的还是失败的,同时要判断当前连接的源IP地址和目的IP地址是否事先已经存下来了;步骤二,对每个源IP地址求比率值:根据两种情况分别对每个源IP地址求比率值,具体包括:步骤21,首先定义一些表,令NS表存储连接成功的目的IP地址和目的端口;令FC表存储连接失败的源IP地址和目的IP地址;令SC表存储连接成功的源IP地址和目的IP地址;步骤22,第一种计算比率值的情况:遍历SC表,若源主机IP地址和目的IP地址对不在SC表中,就把它们加入到SC表中,源IP的比率值为上一次计算的比率值乘以θ1/θ0,其中θ0表示如果发起连接的主机是正常的主机、连接成功的概率;θ1表示如果发起连接的主机是扫描主机、连接失败的概...

【专利技术属性】
技术研发人员:玄世昌杨武王巍苘大鹏童心张宁
申请(专利权)人:哈尔滨工程大学
类型:发明
国别省市:黑龙江;23

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1