一种确定tcp端口扫描的方法及装置制造方法

文档序号:8006276阅读:139来源:国知局
一种确定tcp端口扫描的方法及装置制造方法
【专利摘要】本发明公开了一种确定TCP端口扫描的方法及装置,解决现有进行端口扫描检测时,效率低、适用范围窄的问题。转发装置在过滤出的待确定的端口扫描报文中识别SYN报文,根据识别出的SYN报文的源地址信息和目的地址信息,构造SYN加ACK报文,并向报文的源地址信息对应的设备发送,当该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文时,当同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量大于设定的阈值N1时,确定该设备进行TCP端口扫描。由于本发明可以检测出半隐蔽方式的TCP端口扫描及低速TCP端口扫描,提高了该检测方法的适用范围,节省了系统资源,并提高了端口扫描的确定效率。
【专利说明】—种确定TCP端口扫描的方法及装置
【技术领域】
[0001]本发明涉及工业以太网【技术领域】,尤其涉及一种确定TCP端口扫描的方法及装置。
【背景技术】
[0002]端口扫描是指攻击者发送一组端口扫描报文,试图以此侵入设备,获取设备的各种有用信息的一种方法。通过检测技术检测扫描报文中特定的标志位,可以对已知特征的端口扫描行为进行迅速、精确的检测,但对于未知特征的扫描行为则不能检测出。
[0003]在进行端口扫描时,针对每个端口在固定时间长度T (窗口值)内,发送的报文数量是否超过设定的阈值N,当该端口发送的报文数量超过设定的阈值N时,则确定该端口在进行端口扫描。但是该方法中时间长度T为固定值,无法有效检测出发送周期比较长的端口扫描(低速端口扫描)报文。
[0004]而采用Bayesian Networks等统计模型,可以对时间长度T进行调整,但是该方法具有“抗噪声”差的弱点,当扫描者在扫描时加入大量源地址、源端口随机伪造的“噪声”扫描,将导致时间长度T的提高,时间长度T越长,由于在该时间长度T内接收到的数据包都要缓存,因此将浪费掉大量的内存和CPU的检测时间,不利于提高端口扫描的效率。
[0005]snort检测方法可以在一个时间长度T内,检测从同一个源地址X发往不同目的地址Y的报文是否多于设定的阈值N个,当该报文数量多于N个时,则确定为端口扫描行为。同样的scanlogd检测的也是所有的端口,不管端口是开放的还是不开放的,portsentry检测的则是不开放的端口,synlog检测方法记录网络上半连接的状态,通过检测是否为半连接状态,从而检测是否为端口扫描行为。
[0006]上述检测方法中,snort检测方法中保存有扫描列表,该扫描列表中用源地址来进行分类,即接收不同源地址发送的报文,但该检测方法对不同源地址发送的报文不进行关联,并且在该检测方法中时间长度T和设置的阈值N虽然可以设定,但是设定后就不能改变了,而针对不同的网络、不同的设备会出现不同的情况,因此很难确定出一个针对哪种场景都适用的T和N值,因此基本上很难针对每种场景都能达到较好的检测效果。

【发明内容】

[0007]本发明实施例提供一种确定TCP端口扫描的方法及装置,用以解决现有技术在进行端口扫描检测时,效率低、适用范围窄的问题。
[0008]本发明实施例提供了一种确定TCP端口扫描的方法,适用于通过转发装置进行报文转发的场景,所述方法包括:
[0009]转发装置根据适用于通过转发装置进行报文转发的场景设置的白名单规则,过滤出待确定的端口扫描报文;
[0010]根据TCP报文中SYN报文的特征,在待确定的端口扫描报文中识别SYN报文;
[0011 ] 针对识别出的每个SYN报文,根据该SYN报文的源地址信息和目的地址信息,构造SYN报文的响应确认SYN加ACK报文,并向该SYN报文的源地址信息对应的设备发送;
[0012]检测是否收到该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文;
[0013]当该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文时,检测在时间长度Tl内是否同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口 ;
[0014]当确定有同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口时,统计该同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量,检测该SYN报文数量是否大于设定的阈值NI ;
[0015]当该同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量大于设定的阈值NI时,确定该源地址信息对应的设备在进行TCP端口扫描。
[0016]本发明实施例提供了 一种确定TCP端口扫描的装置,适用于通过转发装置进行报文转发的场景,所述装置包括:
[0017]过滤模块,用于根据设置的白名单规则,过滤出待确定的端口扫描报文;
[0018]识别模块,用于根据TCP报文中SYN报文的特征,在待确定的端口扫描报文中识别出SYN报文;
[0019]构造发送模块,用于针对识别出的每个SYN报文,根据该SYN报文的源地址信息和目的地址信息,构造SYN报文的响应确认SYN加ACK报文,并向该SYN报文的源地址信息对应的设备发送;
[0020]确定模块,用于检测是否收到该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文;当该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文时,检测在时间长度Tl内是否同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口 ;当确定有同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口时,统计该同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量,检测该SYN报文数量是否大于设定的阈值NI ;当该同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量大于设定的阈值NI时,确定该源地址信息对应的设备在进行TCP端口扫描。
[0021]本发明实施例提供一种确定TCP端口扫描的方法及装置,该方法包括:转发装置在过滤出的待确定的端口扫描报文中,识别出SYN报文,根据识别出的SYN报文的源地址信息和目的地址信息,构造SYN报文的响应SYN加ACK报文,并向该SYN报文的源地址信息对应的设备发送,当该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文,同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量大于设定的阈值NI时,确定该源地址信息对应的设备在进行TCP端口扫描。由于在本发明实施例中根据构造的SYN+ACK报文,来检测端口扫描,因此该方法可以检测出隐蔽和半隐蔽方式的TCP端口扫描,并且还可以检测出低速TCP端口扫描,提高了该检测方法的适用范围,另外由于该方法中无需设置时间阈值T,因此无需缓存大量的报文,节省了系统的资源,并提高了端口扫描的确定效率。【专利附图】

【附图说明】
[0022]图1为源设备(攻击设备)和目的设备(被攻击设备)在进行SYN报文交互的过程示意图;
[0023]图2为本发明实施例提供的该确定TCP端口扫描的过程示意图;
[0024]图3为报文特征示意图;
[0025]图4为本发明实施例提供的该确定TCP端口扫描的具体实施过程示意图;
[0026]图5为本发明实施例提供的确定TCP端口扫描的步骤S5的流程示意图;
[0027]图6为本发明实施例提供的确定TCP端口扫描的步骤S6的流程示意图;
[0028]图7为本发明实施例提供的一种确定低速TCP端口扫描的装置结构示意图。
【具体实施方式】
[0029]本发明为了在通过转发装置进行报文转发时,提高TCP端口扫描的检测效率,并扩大检测方法的适用范围,本发明实施例提供了一种确定TCP端口扫描的方法及装置。
[0030]下面结合说明书附图,对本发明进行详细说明。
[0031]图1为源设备(攻击设备)和目的设备(被攻击设备)在进行SYN报文交互的过程示意图,在图1中当源设备和目的设备在进行SYN报文交互时,源设备向目的设备首先发送SYN报文,之后目的设备向源设备返回SYN加ACK报文,之后源设备向目的设备返回响应报文确认ACK报文,与该目的设备建立连接。但是当该源设备在进行端口扫描时,为了避免目的设备获取该源设备的信息后,追溯该攻击设备,因此在这种情况下,该通常源设备向目的设备发送的响应报文为终止RST报文,来中断与目的设备之间的连接。但是在实际的端口扫描中,攻击设备接收到SYN加ACK报文后不会再发送RST报文来终止此次连接,仅仅是扫描了相关端口是否是打开的,对于转发装置来说,相关端口被扫描的记录也是大量的(保存起来相对容易),但是如果对于每一条扫描都进行甄别的话,对于转发装置就不是将这些信息保存起来那么简单,需要大量运算能力,势必增加对于转发装置的成本。当然,发现某端口开放的情况下,后续将会建立连接,以期进一步获取被攻击设备的信息。同时,攻击设备对被攻击设备进行扫描时,攻击设备会扫描到被攻击设备中不存在的源地址或源端口。本发明的发明重点就是基于攻击设备在扫描被攻击设备相关端口后的端口扫描行为的判别。
[0032]因此,在本发明实施例提供的两个设备通过转发装置进行报文转发的场景中,为了有效的确定TCP端口扫描,当源设备和目的设备通过转发装置在进行报文的交互时,提供了该确定TCP端口扫描的方法及装置。
[0033]图2为本发明实施例提供的该确定TCP端口扫描的过程示意图,该过程包括以下步骤:
[0034]S201:转发装置根据设置的白名单规则,过滤出待确定的端口扫描报文,并建立包括所述待确定的端口扫描报文中的源地址、目的地址和源端口的列表。
[0035]本发明实施例提供的该确定TCP端口扫描的方法,适用于设备之间通过转发装置进行报文的交互的场景,该转发装置例如可以为交换机。在本发明实施例中为了实现对TCP端口扫描设备的检测,当转发装置接收到设备之间交互的报文时,根据设置的白名单规则过滤出待确定的端口扫描报文。
[0036]其中,在该设置的白名单规则中保存有源地址信息、源端口信息、目的地址信息以及目的端口信息之间的关系,根据该关系转发装置可以过滤出异常报文,即待确定的端口扫描报文。根据设置的白名单规则过滤出异常报文的过程属于现有技术,在本发明实施例中就不对此过程进行赘述。
[0037]S202:根据TCP报文中SYN报文的特征,在待确定的端口扫描报文中识别SYN报文。
[0038]当转发装置过滤出了待确定的端口扫描报文后,为了实现对TCP端口扫描设备的识别,转发装置根据报文中的TCP标志位,判断每个待确定的端口扫描报文是否为TCP报文,并在判断该报文为TCP报文时,根据该报文的具体类型,判断该报文是否为SYN报文,最终在待确定的端口扫描报文中识别出SYN报文。
[0039]S203:针对识别出的每个SYN报文,根据该SYN报文的源地址信息和目的地址信息,构造SYN报文的响应确认SYN加ACK报文,并向该SYN报文的源地址信息对应的设备发送。
[0040]为了准确的判断发送该报文的设备是否在进行TCP端口扫描,当转发装置识别出SYN报文后,根据该SYN报文的源地址信息和目的地址信息,模仿该目的地址信息对应的设备,构造SYN报文的响应确认ACK报文,即构造SYN加ACK报文,将该SYN报文中的源地址信息作为目的地址信息,将该SYN报文中的目的地址信息作为源地址信息,并将该SYN加ACK报文发送给SYN报文中的源地址信息对应的设备。
[0041]S204:检测是否收到该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文。
[0042]S205:当该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文时,检测在时间长度Tl内是否同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口。
[0043]目的地址信息对应设备(被扫描者)的目的地址或目的端口一般是指定或固定打开的,进一步这里的被扫描者只有数个目的地址或数个端口是打开的,但是扫描者一般会对被扫描者的某个目的地址段或数个端口进行扫描,也就是说扫描者会在一个时间段内扫描被扫描者的存在和不存在的目的地址或目的端口。因此在本发明实施例中通过检测是否存在同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口,来确定该源地址信息对应的设备是否在进行TCP端口扫描。
[0044]S206:当确定有同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口时,统计该同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量,检测该SYN报文数量是否大于设定的阈值NI。
[0045]S207:当同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量大于设定的阈值NI时,确定该源地址信息对应的设备在进行TCP端口扫描,否则,确定该源地址信息对应的设备在未进行TCP端口扫描。
[0046]同时是指在一个时间段内出现同时扫描被扫描者的存在和不存在的目的地址或目的端口的情形。
[0047]本S204?S207步骤中,转发装置首先根据接收到的源地址信息对应的设备返回的报文ACK报文,判断是否收到该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文,这是因为如果该目的地址信息对应的设备收到ACK报文的情况下,其中目的地址信息对应的设备必然是包括大量的非端口扫描的情形,对于这种情况,一般采用统计常规的某个时间长度下的不同目的端口或目的地址的报文数量来判定即可,但是这种方式会出现了大量误报的情形。而对于攻击设备访问被攻击设备的情形来说,就不宜采用一般的常规方法了。
[0048]当确定该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文后,也即该源地址信息对应的设备与该目的地址信息对应的设备建立了连接,转发装置检测在时间长度Tl内是否同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口,这里的时间长度TI可以进行一个设定,例如是ls、2s和I分钟等等;而转发装置就是在这个设定的时间长度Tl内检测是否有同时扫描被攻击设备一端中的存在和不存在的目的地址或目的端口,一般而言,攻击设备会需要判定哪些端口或地址可用的,因此也就会扫描到不存在的目的地址或目的端口,尤其是被攻击设备的地址或端口发生变化时,攻击设备更会扫描到不存在的目的地址或目的端口。这是判断攻击设备是否是进行端口扫描的条件之一。
[0049]而具有同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的情形时,通过统计该同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量,检测该SYN报文数量是否大于设定的阈值NI ;当同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量大于设定的阈值NI时,确定该源地址信息对应的设备在进行TCP端口扫描;否则就不是进行TCP端口扫描。其中NI为设定值。
[0050]由于在本发明实施例中根据构造的SYN报文的ACK报文,来检测端口扫描,因此该方法可以检测出半隐蔽方式的TCP端口扫描,并且还可以检测出低速TCP端口扫描,提高了该检测方法的适用范围。
[0051]具体的,在本发明实施例中转发装置中设置有白名单规则,当源设备和目的设置之间通过转发装置进行报文的交互时,转发装置接收设备之间交互的报文,根据设置的白名单规则,过滤每个报文是否可能为端口扫描报文,即过滤出待确定的端口扫描报文。
[0052]转发装置过滤出待确定的端口扫描报文后,将每个待确定的端口扫描报文保存在报文特征库中,该报文特征库存储在硬盘上。所有的待确定的端口扫描报文都保存在该报文特征库中,只有识别出该待确定的端口扫描报文为端口扫描报文时,才将该端口扫描报文从该报文特征库中移出。
[0053]转发装置将过滤出的每个待确定的端口扫描报文保存在报文特征库后,根据TCP报文中SYN报文的特征,识别每个待确定的端口扫描报文是否为SYN报文。转发装置在具体根据TCP报文中SYN报文的特征,在待确定的端口扫描报文中识别SYN报文时包括:
[0054]所述转发装置根据保存的报文特征库中的TCP标志位,在待确定的端口扫描报文中识别TCP报文;
[0055]在识别出的TCP报文中,根据报文的类型标识位,在该TCP报文中识别出SYN报文。
[0056]在具体识别SYN报文时,首先识别每个待确定的端口扫描报文是否为TCP报文,因此对于每个报文其具体的报文特征如图3所示,对于每个报文其包含时间信息、七元组信息、报文标识位信息、......、报文内容信息等信息,其中七元组信息包括源IP地址信息、目的IP地址信息、源MAC地址信息、目的MAC地址信息、源端口信息、目的端口信息、报文包含的字节数信息等。
[0057]因此转发装置根据保存的报文特征库中的TCP标识位,根据每个待确定的端口扫描报文是否具有该TCP标志位,从而识别该待确定的端口扫描报文是否为TCP报文;当在待确定的端口扫描报文中识别出TCP报文后,识别每个TCP报文的类型标识位,根据每个TCP报文的类型标识位,判断该TCP报文是否为SYN报文。
[0058]转发装置针对确定的每个SYN报文,为了确定发送该SYN报文的设备是否在进行TCP端口扫描,转发装置针对识别出的每个SYN报文,根据该SYN报文的源地址信息和目的地址信息,模仿该目的地址信息对应的设备,向该源地址信息对应的设备发送SYN加ACK报文,具体的该SYN加ACK报文的源地址信息和目的地址信息,分别为该SYN端报文的目的地址信息和源地址信息。并且,转发装置根据接收到该SYN报文的源地址信息对应的设备,发送的响应报文,确定该源地址信息对应的设备是否在进行TCP端口扫描。
[0059]具体的,在本实施中,检测是否收到该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文还包括:
[0060]当该源地址信息对应的设备没向该目的地址信息对应的设备发送ACK报文时,检测在设定的时间长度T2内,该SYN报文的源地址信息对应的设备发往不同目的地址的报文的数量是否大于设定的阈值N2 ;
[0061]当该源地址信息的设备发往不同目的地址的报文的数量大于设定的阈值N2时,确定该源地址信息对应的设备在进行TCP端口扫描,否则,确定该源地址信息对应的设备未进行TCP端口扫描。
[0062]图4为本发明实施例提供的该确定TCP端口扫描的具体实施过程示意图,该过程包括以下步骤:
[0063]S401:转发装置根据设置的白名单规则,过滤出待确定的端口扫描报文。
[0064]S402:根据TCP报文中SYN报文的特征,在待确定的端口扫描报文中识别出SYN报文。
[0065]S403:针对识别出的每个SYN报文,根据该SYN报文的源地址信息和目的地址信息,构造SYN报文的响应确认ACK报文,并向该SYN报文的源地址信息对应的设备发送。
[0066]S404:检测是否收到该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文,当判断结果为是时,进行步骤S405;当判断结果为否时,进行步骤S5。
[0067]S405,检测在时间长度Tl内是否同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口,当判断结果为是时,进行步骤S406 ;当判断结果为否时,进行步骤S6。
[0068]S406:统计该同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量,检测该SYN报文数量是否大于设定的阈值NI,当判断结果为是时,进行步骤S407 ;当判断结果为否时,进行步骤S408。
[0069]S407:当该同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量大于设定的阈值NI时,确定该源地址信息对应的设备在进行TCP端口扫描。
[0070]S408:确定该源地址信息对应的设备非TCP端口扫描。[0071]S5:基于源地址信息对应的设备发送不同目的地址的报文的数量检测。
[0072]S6:基于SYN报文的源地址信息对应的设备发送的后续查询报文查询信息检测。
[0073]所述步骤S5具体实施流程图包括如下步骤:
[0074]S501:当该源地址信息对应的设备没有向该目的地址信息对应的设备发送ACK报文时,检测在设定的时间长度T2内,该SYN报文的源地址信息对应的设备发往不同目的地址的报文的数量是否大于设定的阈值N2,当判断结果为是时,进行步骤S502,否则,进行步骤 S503。
[0075]S502当该源地址信息的设备发往不同目的地址的报文的数量大于设定的阈值N2时,确定该源地址信息对应的设备在进行TCP端口扫描。
[0076]S503:确定该源地址信息对应的设备未进行TCP端口扫描。
[0077]如图6所示,所述步骤S6具体实施流程图包括如下步骤:
[0078]S601:所述转发装置根据该SYN报文的源地址信息对应的设备发送的后续查询报文,确定是否获取目的端口对应的特定信息,当判断结果为是,进行步骤S602,否则,进行步骤 603。
[0079]S602,当所述SYN报文的源地址信息对应的设备发送的后续查询报文获取目的端口对应的特定信息时,确定该源地址信息对应的设备在进行TCP端口扫描。
[0080]S603,确定为该源地址信息对应的设备没有在进行TCP端口扫描。
[0081]在步骤S601中提出后续查询报文用于确定是否获取目的端口对应的特定信息。例如端口 21,正常后续报文用于访问目录和请求文件传输,而异常后续报文可能用于取得服务器类型和取得版本号。这些异常后续报文就是端口。
[0082]表I为端口与后续查询报文表
[0083]
【权利要求】
1.一种确定TCP端口扫描的方法,适用于通过转发装置进行报文转发的场景,其特征在于,所述方法包括: 转发装置根据设置的白名单规则,过滤出待确定的端口扫描报文,根据TCP报文中SYN报文的特征,在待确定的端口扫描报文中识别出SYN报文;针对识别出的每个SYN报文,根据该SYN报文的源地址信息和目的地址信息,构造SYN报文的响应确认SYN加ACK报文,并向该SYN报文的源地址信息对应的设备发送; 检测是否收到该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文; 当该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文时,检测在时间长度Tl内是否同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端Π ; 当确定有同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口时,统计该同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量,检测该SYN报文数量是否大于设定的阈值NI ; 当该同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量大于设定的阈值NI时,确定该源地址信息对应的设备在进行TCP端口扫描。
2.如权利要求1所述的方法,其特征在于,所述方法还包括: 根据确定出的进行TCP端口扫描的设备发送的SYN报文,生成告警日志;或, 当确定该源地址信息对应的设备进行TCP端口扫描时,通知管理员;或, 根据确定出的进行TCP端口扫描的设备发送SYN报文的特征,更新白名单规则。
3.如权利要求1所述的方法,其特征在于,检测在时间长度Tl内是否同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口,还包括: 当确定没有同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口时, 所述转发装置根据该SYN报文的源地址信息对应的设备发送的后续查询报文,确定是否获取目的端口对应的特定信息; 当所述SYN报文的源地址信息对应的设备发送的后续查询报文获取目的端口对应的特定信息时,确定该源地址信息对应的设备在进行TCP端口扫描,否则确定为该源地址信息对应的设备没有在进行TCP端口扫描。
4.如权利要求1所述的方法,其特征在于,所述待确定的端口扫描报文中识别SYN报文包括: 所述转发装置根据保存的报文特征库中的TCP标志位,在待确定的端口扫描报文中识别TCP报文; 在识别出的TCP报文中,根据报文的类型标识位,在该TCP报文中识别出SYN报文。
5.如权利要求1所述的方法,其特征在于,检测是否收到该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文还包括: 当该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文时,检测在设定的时间长度T2内,该SYN报文的源地址信息对应的设备发往不同目的地址的报文的数量是否大于设定的阈值N2; 当该源地址信息的设备发往不同目的地址的报文的数量大于设定的阈值N2时,确定该源地址信息对应的设备在进行TCP端口扫描,否则,确定该源地址信息对应的设备未进行TCP端口扫描。
6.一种确定TCP端口扫描的装置,适用于通过转发装置进行报文转发的场景,其特征在于,所述方法包括: 过滤模块,用根据设置的白名单规则,过滤出待确定的端口扫描报文, 设别模块,根据TCP报文中SYN报文的特征,在待确定的端口扫描报文中识别出SYN报文; 构造发送模块,用于针对识别出的每个SYN报文,根据该SYN报文的源地址信息和目的地址信息,构造SYN报文的响应确认SYN加ACK报文,并向该SYN报文的源地址信息对应的设备发送; 确定模块,用于检测是否收到该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文;当该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文时,检测在时间长度Tl内是否同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口 ;当确定有同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口时,统计该同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量,检测该SYN报文数量是否大于设定的阈值NI ;当该同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口的SYN报文数量大于设定的阈值NI时,确定该源地址信息对应的设备在进行TCP端口扫描。
7.如权利要求6所述的装置,其特征在于,所述方法还包括: 告警模块,用于根据确定出的进行TCP端口扫描的设备发送的SYN报文,生成告警日志;或,当确定该源地址信息对应的设备进行TCP端口扫描时,通知管理员;或,根据确定出的进行TCP端口扫描的设备发送的SYN报文的特征,更新白名单规则。
8.如权利要求6所述的装置,其特征在于,所述确定模块,还用于检测在时间长度Tl内是否同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口,当确定没有同时扫描该目的地址信息对应设备的存在和不存在的目的地址或目的端口时,根据该SYN报文的源地址信息对应的设备发送的后续查询报文,确定是否获取目的端口对应的特定信息;当所述SYN报文的源地址信息对应的设备发送的后续查询报文获取目的端口对应的特定信息时,确定该源地址信息对应的设备在进行TCP端口扫描,否则确定为该源地址信息对应的设备没有在进行TCP端口扫描。
9.如权利要求6所述的装置,其特征在于,所述设别模块,用于所述转发装置根据保存的报文特征库中的TCP标志位,在待确定的端口扫描报文中识别TCP报文;在识别出的TCP报文中,根据报文的类型标识位,在该TCP报文中识别出SYN报文。
10.如权利要求6所述的装置,其特征在于,所述确定模块,还用于检测是否收到该源地址信息对应的设备向该目的地址信息对应的设备发送ACK报文还包括:当该源地址信息对应的设备没向该目的地址信息对应的设备发送ACK报文时,检测在设定的时间长度T2内,该SYN报文的源地址信息对应的设备发往不同目的地址的报文的数量是否大于设定的阈值N2 ;当该源地址信息的设备发往不同目的地址的报文的数量大于设定的阈值N2时,确定该源地址信息对应的设备在进行TCP端口扫描,否则,确定该源地址信息对应的设备未进行TCP端口扫描。
【文档编号】H04L29/06GK103561048SQ201310392926
【公开日】2014年2月5日 申请日期:2013年9月2日 优先权日:2013年9月2日
【发明者】丁杰, 马化一, 孔勇, 张俭锋, 薛百华 申请人:北京东土科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1