基于TCP通信的访问关系分析方法、系统、设备和介质与流程

文档序号:32134114发布日期:2022-11-09 11:49阅读:125来源:国知局
基于TCP通信的访问关系分析方法、系统、设备和介质与流程
基于tcp通信的访问关系分析方法、系统、设备和介质
技术领域
1.本发明涉及网络安全分析技术领域,特别是涉及基于tcp通信的访问关系分析方法。


背景技术:

2.访问关系分析是网络安全分析中一项重要的技术领域,通过对访问关系的梳理能够发现违规访问、越权操作等异常行为。通常的做法是,通过访问关系基准发现违规访问、越权操作等异常行为,关系分析本质是一种黑白名单策略,基准中允许的为白名单,基准之外的为黑名单。
3.构建基准时,往往需要大量的外部配置和输入,以去除样本中的噪声;随着业务逻辑的调整,访问关系本身是动态变化的,在动态变化过程中会产生大量的误报,针对这些误报,通常需要动态地重新构建访问关系基准,再以重新构建后的访问关系基准来对异常访问数据进行识别。


技术实现要素:

4.本发明针对构建访问关系基准需要大量的外部配置和输入,以及动态更新访问关系基准需要花费大量时间的问题,考虑到tcp协议本身就是一种服务、客户端通信模式,天然的就能区分两端的角色、访问方向、访问状态信息,因此,将tcp通信中获取的tcp指标用于网络访问异常关系,提出了基于tcp通信的访问关系分析方法,充分利用tcp的通信模式,将访问关系下沉到ip对ip:port的关系,访问关系模型更加精准。
5.为了实现上述发明目的,本发明提供了以下技术方案:基于tcp通信的访问关系分析方法,包括以下步骤:s1,提取客户端访问tcp服务的指标,所述指标以ip:port为统计单位;s2,对所述指标进行聚类分析,获取异常访问客户端。
6.现有技术中,通常是基于构建异常访问的基准,通过白名单和黑名单策略来判断异常访问,并基于ip地址进行指标统计,而本发明彻底放弃了通过白名单和黑名单策略来判断异常访问的方法,充分利用tcp的通信模式,以ip:port为统计单位获取指标数据,并对指标数据进行聚类分析,获取异常访问端,与现有技术相比,本发明的方法效率更高,并且指标数据的粒度更精细,能更准确的获取异常访问端。
7.作为优选方案,步骤s1具体包括以下步骤:s110,获取网络流量中带方向的tcp会话;s120,根据tcp通信模式,确定会话中的服务端与客户端;s130,在服务端以ip:port为统计单位对tcp服务的指标进行汇总。
8.作为优选方案,步骤s110具体包括:从网络流量中提取tcp 会话信息,从所述tcp 会话信息中提取出体现会话方向的字段。本发明的方法中,在获取基于ip:port统计的指标数据的时候,只考虑服务端的ip:port,而无需考虑客户端的ip,所以首先需要通过网络流
量中带方向的tcp会话的字段确定会话中的服务端与客户端,再统计服务端基于ip:port统计的指标数据,而不需要对服务端和客户端都进行指标数据统计,统计数量大幅度减小,提高了统计的效率。
9.作为优选方案,步骤s120中,所述确定会话中的服务端与客户端具体是指:同一个tcp会话中,率先发起syn(synchronous建立联机)的ip为客户端,率先发起syn的ip的客户端会话通信的另一端为服务端。
10.作为优选方案,步骤s120中,以ip:port代表tcp服务端的tcp服务,以ip代表客户端。
11.作为优选方案,步骤s130具体包括:以预设的时间周期汇聚多个会话,形成客户端访问tcp服务的指标,所述指标以ip:port为单位依次汇聚得到汇总后的指标。在基于ip:port进行指标数据统计的时候,分别获取各ip:port的指标数据,然后依次进行层层聚合,得到最后汇总的指标。
12.作为优选方案,所述指标以ip:port为单位依次汇聚得到汇总后的指标至少包括以下方法:s210,将会话数据包中客户端ip、客户端port、服务端ip、服务端port构成四元组数据;s220,隐去所述四元组数据中的客户端port,形成客户端ip、服务端ip和服务端port构成的三元组数据,用所述三元组数据描述客户端访问服务端的情况;s230,隐去所述三元组数据中的客户端ip,形成服务端ip和服务端port构成的二元组数据,用所述二元组数据描述服务端的情况;s240,隐去所述二元组数据中的服务端ip,保留服务端port,用保留下的服务端port描述主机的服务情况。
13.作为优选方案,步骤s2具体包括:对所述指标进行聚类分析,将离群度高的客户端作为异常访问客户端。
14.作为优选方案,所述聚类分析包括均值聚类分析和密度聚类分析。
15.基于相同的构思,还提出了基于tcp通信的访问关系分析系统,包括:第一处理模块,用于提取客户端访问tcp服务的指标,所述指标以ip:port为统计单位;第二处理模块,用于对所述指标进行聚类分析,获取异常访问客户端。
16.基于相同的构思,还提出了基于tcp通信的访问关系分析设备,包括至少一个处理器,以及与至少一个处理器通信连接的存储器;存储器存储有可被至少一个处理器执行的指令,所述指令被至少一个处理器执行,以使至少一个处理器能够执行上述任一项所述的基于tcp通信的访问关系分析方法。
17.基于相同的构思,还提出了计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一项所述的基于tcp通信的访问关系分析方法。
18.与现有技术相比,本发明的有益效果:本发明的方法以tcp通信模式为基础,提出以tcp通信行为为视角,进行异常访问分析。本发明方法的基础在于网络中所有的tcp服务都是和具体的业务逻辑紧密联系的,服务的对象、内容、方式都是预先设定好的,因此,所有的客户端访问特定的tcp服务时,根据
预先设定的内容,基于tcp通信行为进行异常访问分析。利用tcp通信行为来进行异常访问分析相比访问关系分析有以下优点:1、利用tcp通信行为来进行异常不需要外部配置和输入,是一种无先验规则的分析方法,简化了分析步骤;2、利用tcp通信行为来进行异常访问分析是一种动态分析方法,当网络业务逻辑调整时,利用tcp通信行为的异常访问分析方法能进行自适应调整,时效性高;3、基于ip:port进行指标数据统计的数据更精细,能发现隐秘的访问异常,异常访问判断的准确度较高。
附图说明
19.图1为实施例1中基于tcp通信的访问关系分析方法的流程图;图2为实施例1中提取客户端访问tcp服务的指标的流程图;图3为实施例1中一种具体的基于tcp通信的访问关系分析方法的流程图。
具体实施方式
20.下面结合实施例及具体实施方式对本发明作进一步的详细描述。但不应将此理解为本发明上述主题的范围仅限于以下的实施例,凡基于本发明内容所实现的技术均属于本发明的范围。
21.实施例1基于tcp通信的访问关系分析方法的流程图如图1所示,包括以下步骤:s1,提取客户端访问tcp服务的指标,所述指标以ip:port为统计单位;s2,对所述指标进行聚类分析,获取异常访问客户端。
22.步骤s1提取客户端访问tcp服务的指标的流程图如图2所示,具体包括以下步骤:s110,获取网络流量中的tcp会话;s120,根据tcp通信模式,确定会话中的服务端与客户端;s130,以tcp的服务端为中心,汇集会话,形成客户端访问tcp服务的指标,在服务端以ip:port为统计单位,对tcp服务的指标进行汇总。
23.其中,步骤s110具体包括以下步骤:从流量中提取tcp 会话信息,字段包括srcip、dstip、srcport、dstport、packets、paload,tcpflag,dierction等,其中direction字段体现出了会话的方向,根据tcp通信模式来确定,direction为1表示srcip率先发起syn同步包,direction为0表示dstip率先发起syn同步包。
24.其中,步骤s120具体包括以下步骤:同一个tcp会话中,率先发起syn的ip为客户端ip,相应地,通信的对端为服务端。例如一个会话包括以下字段:srcip、dstip、srcport、dstport、packets、paload,tcpflag,dierction等,那么客户端ip为srcip,服务端ip为dstip。
25.其中,步骤s130具体包括以下步骤:通过步骤s110和s120,网络中每一个会话都可以确定其服务端和客户端。由于一个ip(也即是tcp服务端)上可能同时运行多个tcp服务,因此以ip:port代表一个tcp服务,而客户端仅以ip代表,以一定的时间为周期,汇聚多个会话,形成特定客户端访问tcp服务上的指标、标识等,即以服务端ip、服务端port、客户端ip为键值统计指标。
26.例如2021.5.6-14:00到2021.5.6-15:00一个小时期间,网络中产生的会话为1000条,通过方向区分,优化后的会话字段包括:serverip、clientip、serverport、clientport、packets、paload,tcpflag,duration等。
27.将1000条会话,按照serverip、serverport、clientip进行分组,统计分组中的会话数量、累加会话的上传量、下载量、通信包数,位运算tcpflag等,形成这一个小时内,以服务端ip、服务端port、客户端ip为key(键值)的统计值,如下所示:time: 2021.5.6-15:00
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
#统计时间serverip: 192.168.0.80
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
#服务ipserverport: 80
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
#服务端口clientip: 192.178.0.90
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
#客户端ipsessioncount: 80
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
#会话总数packets: 1000
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
#包总数upload: 200m
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
#上传字节数download: 20m
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
#下载字节数后续的聚类分析以上述统计数据为基础进行。
28.其中,步骤s2具体包括以下步骤:使用步骤s1形成的指标,进行均值聚类、密度聚类等数理统计,将tcp服务的客户端进行聚类,发现离群度高的客户端,离群度高的客户端访问服务的行为与tcp服务下的其他客户端群行为存在较大差异,则能判定离群度高的客户端是异常客户端。
29.例如,一个服务在特定周期内有10个客户端,9个客户端都是在下载数据、只有一个客户端是在上传数据,这个客户端就与其他9个客户端的行为不一致,属于离群度高的客户端,可能存在异常地使用服务。其他的统计指标上也可以用类似的方法发现异常客户端。
30.通过聚类分析,可以知道tcp服务的标准(期望)客户端行为是什么样子的,例如一个服务绝大多数客户端是长连接、上传数据、小量通信。如果一个客户端不按照期望行为进行访问,比如通信是短连接、是下载数据、是大量通信,那么此客户端就存在异常访问。
31.上述具体的步骤如图3所示。本发明通过tcp通信模式,确定tcp的服务端与客户端,以tcp服务为基础进行行为指标提取,使用聚类结果进行异常访问分析。
32.作为优选方案,在进行聚类分析时,从一个tcp会话入手,即ip: port-ip: port,通过引入tcp通信模式,汇聚成ip-ip:port,再通过ip-ip:port汇聚为ip:port,ip的指标,使得聚类有层层聚合的特征。ip:port-ip:port从左到右依次指代客户端ip、客户端端口、服务端ip、服务端端口,会话建立后,数据包发送中,客户端ip,服务端ip和服务端port都不会发生改变的,只有客户端port会发生变动,如果一直采用四元组来分析,数据量会很大,因此将客户端隐去,形成以ip-ip:port(客户端ip-服务端ip:服务端port)为来源的指标,就能把客户端访问某种服务的情况描述清楚。进一步的,在ip-ip:port三元组数据的基础上,隐去客户端ip,保留服务端ip、服务端port,形成系列指标,就能把服务的整体情况描述清楚;进一步的,在服务端ip:port二元组数据的基础上,隐去服务端ip,保留服务端port,形成系列指标,就能把一个主机的服务情况、使用客户情况描述清楚。
33.此外,本领域普通技术人员应该认识到,本公开的方法可以实现为计算机程序。如上结合附图所述,通过一个或多个程序执行上述实施例的方法,包括指令来使得计算机或
处理器执行结合附图所述的算法。这些程序可以使用各种类型的非瞬时计算机可读介质存储并提供给计算机或处理器。非瞬时计算机可读介质包括各种类型的有形存贮介质。非瞬时计算机可读介质的示例包括磁性记录介质(诸如软盘、磁带和硬盘驱动器)、磁光记录介质(诸如磁光盘)、cd-rom(紧凑盘只读存储器)、cd-r、cd-r/w以及半导体存储器(诸如rom、prom(可编程rom)、eprom(可擦写prom)、闪存rom 和ram(随机存取存储器)。进一步,这些程序可以通过使用各种类型的瞬时计算机可读介质而提供给计算机。瞬时计算机可读介质的示例包括电信号、光信号和电磁波。瞬时计算机可读介质可以用于通过诸如电线和光纤的有线通信路径或无线通信路径提供程序给计算机。
34.例如,根据本公开的一个实施例,可以提供一种计算机可读介质,其上存储有可由处理器执行的指令,所述指令在被处理器执行时,使得处理器执行如前所述的基于tcp通信的异常访问关系分析方法,或者,也可以使得处理器只执行如前所述的提取客户端访问tcp服务的指标,对所述指标进行聚类分析,获取异常访问客户端的操作。
35.因此,根据本发明公开的内容,还可以提议一种计算机程序或计算机程序产品,当所述计算机程序被执行时,可实现如前所述的基于tcp通信的访问关系分析方法,或者,也可以只执行如前所述的提取客户端访问tcp服务的指标,对所述指标进行聚类分析,获取异常访问客户端的操作。
36.另外,本发明还涉及基于tcp通信的访问关系分析系统,包括处理器和存储器,所述存储器中存储有计算机程序,当所述计算机程序由所述处理器执行时,可实现如前所述的基于tcp通信的访问关系分析方法。
37.或者,本发明还涉及一种计算装置或计算系统,包括处理器和存储器,所述存储器中存储有计算机程序,当所述计算机程序由所述处理器执行时,可仅仅实现如前所述的提取客户端访问tcp服务的指标,对所述指标进行聚类分析,获取异常访问客户端的操作。
38.此外,应当理解,虽然本说明书按照实施方式加以描述,但并非实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1