CN109818970B - 一种数据处理方法及装置 - Google Patents
一种数据处理方法及装置 Download PDFInfo
- Publication number
- CN109818970B CN109818970B CN201910173339.4A CN201910173339A CN109818970B CN 109818970 B CN109818970 B CN 109818970B CN 201910173339 A CN201910173339 A CN 201910173339A CN 109818970 B CN109818970 B CN 109818970B
- Authority
- CN
- China
- Prior art keywords
- session
- sample
- type
- abnormal
- determining
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明实施例公开了一种数据处理方法及装置,该方法包括:当检测到目标保护对象处于被攻击状态时,获取目标保护对象与多个通信对象之间的所有会话;获取所有会话相关联的报文集合,根据报文集合确定每个会话的会话特征参数;将每个会话的会话特征参数输入到识别模型中,基于识别模型确定每个会话的会话类型;根据每个会话的会话类型确定多个通信对象中的每个通信对象的通信对象类型;将为非法类型的通信对象确定为非法通信对象,将非法通信对象添加至黑名单,并丢弃非法通信对象对应的会话。采用本发明实施例,可提高通信信息的安全性,从而保障通信系统的稳定性,同时还可以扩大被防护的客户端的类型范围。
Description
技术领域
本发明涉及数据处理的技术领域,尤其涉及一种数据处理方法及装置。
背景技术
随着计算机技术的不断发展,现今通过计算机网络进行通信已经成为了最主流的通信方式,但是,此间通信的过程中,通信信息的安全性也受到了极大的威胁,因此,对通信系统的安全防护能力提出了更高的要求。
现有技术中,若是要对通信信息进行过滤,需要通过改造客户端的代码,使得客户端发出的信息中携带特定的水印字段,再结合防护端对携带非法水印字段的不良信息进行拦截,达到对通信系统进行防护的目的,但是基于水印字段的技术会增加了客户端发出的信息的冗余性,进而增加了客户端的上行流量,降低了通信效率;而且由于需要对客户端进行改造,才能具备防护效果,所以也增加了防护范围的局限性。
发明内容
本发明实施例提供了一种数据处理方法及装置,无需对客户端进行改造,提高了通信效率,且可以扩大防护范围。
本发明实施例一方面提供了一种数据处理方法,包括:
当检测到目标保护对象处于被攻击状态时,获取所述目标保护对象与多个通信对象之间的所有会话;
获取所述所有会话相关联的报文集合,根据所述报文集合确定每个会话的会话特征参数;
将所述每个会话的会话特征参数输入到识别模型中,基于所述识别模型确定所述每个会话的会话类型;
根据所述每个会话的会话类型确定所述多个通信对象中的每个通信对象的通信对象类型;
当存在所述通信对象类型为非法类型的通信对象时,将为所述非法类型的通信对象确定为非法通信对象,将所述非法通信对象添加至黑名单,并丢弃所述非法通信对象对应的会话。
本发明实施例一方面提供了一种数据处理装置,包括:
会话获取模块,用于当检测到目标保护对象处于被攻击状态时,获取所述目标保护对象与多个通信对象之间的所有会话;
参数确定模块,用于获取所述所有会话相关联的报文集合,根据所述报文集合确定每个会话的会话特征参数;
类型识别模块,用于将所述每个会话的会话特征参数输入到识别模型中,基于所述识别模型确定所述每个会话的会话类型;
类型确定模块,用于根据所述每个会话的会话类型确定所述多个通信对象中的每个通信对象的通信对象类型;
检测模块,用于当存在所述通信对象类型为非法类型的通信对象时,将为所述非法类型的通信对象确定为非法通信对象,将所述非法通信对象添加至黑名单,并丢弃所述非法通信对象对应的会话。
本发明另一方面提供了一种数据处理装置,包括:处理器和存储器;
所述处理器和存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如本发明实施例中一方面中的方法。
本发明实施例当检测到目标保护对象处于被攻击状态时,获取所述目标保护对象与多个通信对象之间的所有会话;获取所述所有会话相关联的报文集合,根据所述报文集合确定每个会话的会话特征参数;将所述每个会话的会话特征参数输入到识别模型中,基于所述识别模型确定所述每个会话的会话类型;根据所述每个会话的会话类型确定所述多个通信对象中的每个通信对象的通信对象类型;当存在所述通信对象类型为非法类型的通信对象时,将为所述非法类型的通信对象确定为非法通信对象,将所述非法通信对象添加至黑名单,并丢弃所述非法通信对象对应的会话。由此可见,本发明实施例提出的方法无需对客户端进行改造,即可对客户端实现信息防护的目的,节约了改造成本,不会增加客户端的上行流量,提高了通信效率。并且通过训练完成之后的识别模型可以快速、有效、自动地识别非法通信会话,丢弃非法通信会话的同时还将非法通信会话对应的非法通信对象拉黑,实现了对通信系统的有效防护。并且由于无需对客户端进行改造,即对被保护客户端的类型没有限制,从而扩大了能被防护的客户端的类型范围。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种防护系统部署的架构示意图;
图2是本发明实施例提供的一种数据处理方法的流程示意图;
图3是本发明实施例提供的一种防护系统工作方法的场景示意图;
图4是本发明实施例提供的另一种数据处理方法的流程示意图;
图5是本发明实施例提供的另一种数据处理方法的流程示意图;
图6是本发明实施例提供的一种识别模型训练方法的流程示意图;
图7是本发明实施例提供的一种识别模型的结构示意图;
图8是本发明实施例提供的一种模型训练方法的场景示意图;
图9是本发明实施例提供的一种数据处理装置的结构示意图;
图10是本发明实施例提供的另一种数据处理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,图1是本发明实施例提供的一种防护系统部署的架构示意图。如图1所示,该架构包括攻击检测系统、控制系统、防护系统、核心路由器、核心网管、服务器以及互联网网络。其中,所述互联网网络可以由互联网提供商提供。通过上述架构示意图提供的各个系统进行网络防护的步骤为,首先,通过互联网网络得到被保护IP(Internet ProtocolAddress,互联网协议地址)相关的通信流量,其中,上述被保护IP也可以称之为被攻击IP或者目标保护对象,上述通信流量包括被保护IP与多个通信对象之间的会话信息,其中,每个通信对象对应有一个通信IP,所述通信对象也可以称之为被保护IP的来源IP。经由核心路由器将上述通信流量进行分光,生成镜像流量并转发至攻击检测系统,进行攻击检测,当攻击检测系统检测到被保护的IP遭到攻击之后,会生成告警信息并发送至控制系统,由控制系统将上述告警信息转达至防护系统。其次,防护系统收到告警信息之后,会通过与核心路由器之间建立的bgp(BorderGateway Protocol,边界网关协议)关系,向核心路由器发布被保护IP的牵引路由,并通过核心路由器将被攻击IP上的流量(该流量包括被攻击IP上的正常流量)牵引到防护系统进行流量清洗(即将被攻击IP上的正常流量保留,将攻击流量滤除)。其中,上述防护系统中部署有DDOS(Distributed Denial of Service,分布式拒绝服务)防护进程(后面简称防护进程)以及识别模型(该识别模型可以是卷积神经网络模型),通过防护进程接收从核心路由器牵引过来的被保护IP上的流量,并在接收到的流量中采集包含的所有会话数据,即以会话(每个会话对应于一个通信对象,每个通信对象对应可以有多个会话)为单位将流量打包采集。当采集完牵引流量中的所有会话数据之后,将采集到的会话数据输入卷积神经网络模型。需要进行说明的是,上述卷积神经网络模型已经被训练完成,且具备区分正常会话与异常会话(即攻击型会话)的能力。通过上述卷积神经网络模型对防护进程输入的会话数据进行类型区分,并对每一个会话打上异常会话类型标签以及正常会话标签之后,将打了标签的会话数据再回转至防护进程。防护进程通过对打了标签的会话进行检测判别,当检测到目标保护对象的某个通信对象对应的会话中,被打上了异常会话标签的会话数量达到了异常数量阈值,则将所述某个通信对象拉入黑名单,并丢弃该某个通信对象对应的所有会话对应的异常流量。当上述防护系统完成对被攻击IP上的流量的清洗之后,将被攻击IP上的正常流量回注到核心路由器,通过核心路由器经由核心网关将被攻击IP上的正常流量转发至服务器。上述过程即是对被攻击IP上的全部流量进行清洗完成的全部过程。本发明实施例的重点描述对象即是上述防护系统的具体工作过程以及具体结构,即如何在已经得知被保护IP遭到攻击之后,快速、有效、准确地进行被保护IP上的流量的清洗,并在清洗完成之后将被保护IP上的正常流量转发至服务器,以在不影响被保护IP的通信过程的情况下,杜绝被保护IP遭到攻击,从而提高被保护IP对应的整个通信系统的通信稳定性以及安全性。
采用本发明实施例提供的通过在防护系统中部署DDOS(Distributed Denial ofService,分布式拒绝服务)防护进程和卷积神经网络模型进行TCP(Transmission ControlProtocol,传输控制协议)DDOS的攻击防护方法,不用改造被保护对象(即客户端或者服务器),因此不会增加防护之外的额外成本,且对被保护对象的类型没有要求,通用性高。此外,不会增加报文的冗余度,不会影响通信效率。综上,本发明实施例提供的方法在不影响正常业务的情况下,实现了对连接型TCP攻击的有效、自动防护,尤其适用于业务类型繁多、攻击威胁严重、业务重要性高的平台。
请参见图2,是本发明实施例提供的一种数据处理方法的流程示意图,如图2所示,所述方法可以包括:
步骤S101,当检测到目标保护对象处于被攻击状态时,获取所述目标保护对象与多个通信对象之间的所有会话;
具体的,当检测到上述目标保护对象(即上述被保护IP或者被攻击IP)遭到攻击,处于被攻击状态时,获取上述目标保护对象与多个通信对象(即上述来源IP)之间的所有会话,所述所有会话为防护系统中的防护进程在上述核心路由器牵引至防护系统中的目标保护对象的所有流量中采集并提取出来的。其中,每个会话对应有一个通信对象,一个通信对象对应可以有多个会话。
步骤S102,获取所述所有会话相关联的报文集合,根据所述报文集合确定每个会话的会话特征参数;
具体的,由防护系统中的防护进程获取上述所有会话相关联的报文集合,该报文集合中包括多个报文,每个报文对应有自己不同的数据特征,该数据特征包括源IP、目的IP、源端口、目的端口、通信协议、seq(序列)号、ack(确认)号、tcp(传输控制协议)标志位、时间戳、包长度以及载荷内容。其中,将每个报文对应的源IP、目的IP、源端口、目的端口以及通信协议作为五元组用来标识每个会话。即若两个报文对应的源IP、目的IP、源端口、目的端口以及通信协议都相同,则该两个报文就确认为来自同一个会话的不同报文,即一个会话对应于多个报文。通过每个会话分别对应的多个报文所包含的数据特征可以确定所述每个会话的会话特征参数。其中,会话特征参数包括会话起始时间、会话结束时间、源IP、源端口、目的IP、目的端口、通信协议、会话中的总报文数、包长度小于1000的占比、包长度大于1000的占比、会话中最大最小seq差值比上总报文数、会话中最大最小ack差值比上总报文数、会话的SYN(Synchronize Sequence Numbers,同步序列编号,一种握手信号)报文数比上总报文数、会话的ACK(Acknowledgement,确认字符,一种传输类控制字符)报文数比上总报文数、会话的PUSHACK报文数比上总报文数、会话其他类型报文数比上总报文数、会话持续时间、载荷中包含黑特征报文数比上总报文数。
步骤S103,将所述每个会话的会话特征参数输入到识别模型中,基于所述识别模型确定所述每个会话的会话类型;
具体的,将所述所有会话中的每一个会话对应的会话特征参数输入到识别模型中。所述识别模型可以是卷积神经网络模型,该识别模型已经被大量异常样本会话和正常样本会话训练完成,具备区分异常会话和正常会话的能力。通过识别模型可以对上述所有会话中的每一个会话进行正常类型或者异常类型的识别区分,并在每一个会话的后面都打上其对应的标签,即正常会话的类型对应为正常会话标签,异常会话的类型对应为异常会话标签。标签全部打上之后,由卷积神经网络模型将打上了会话类型标签的所有会话输入到防护系统的防护进程中。
步骤S104,根据所述每个会话的会话类型确定所述多个通信对象中的每个通信对象的通信对象类型;
具体的,根据上述每个会话的会话类型确定上述目标保护对象对应的每一个通信对象的通信对象类型。通过防护进程对上述被打上了会话类型的会话进行总结判断,当检测到某个通信对象对应的多个会话中,被打上了异常会话标签的会话的会话数量达到了异常数量阈值,表明所述某个通信对象向目标保护对象对应的服务器发起攻击的概率非常高,则判定所述某个通信对象为非法通信类型的通信对象。比如,设置上述异常数量阈值为3,则当检测到某个通信对象对应的多个会话中,被打上了异常会话标签的会话的会话数量大于等于3,比如为3或者4,则将该通信对象确认为非法通信类型的通信对象。
步骤S105,当存在所述通信对象类型为非法类型的通信对象时,将为所述非法类型的通信对象确定为非法通信对象,将所述非法通信对象添加至黑名单,并丢弃所述非法通信对象对应的会话;
具体的,当检测到上述多个通信对象中存在通信对象类型为上述非法类型的通信对象时,将确认为非法类型的通信对象称之为非法通信对象,由防护进程将该非法通信对象添加至黑名单,杜绝该非法通信对象继续和目标保护对象进行通信。并且,防护进程会将上述非法通信对象对应的所有会话对应的所有报文丢弃(即将该非法通信对象对应的流量全部丢弃),以对上述目标保护对象实现防护的目的。
请参见图3,是本发明实施例提供的一种防护系统工作方法的场景示意图。如图3所示,防护系统包括防护进程和卷积神经网络模型两大部分。其中,卷积神经网络模型为通过海量的旁路数据训练成的深度学习模型,具有自动判断正常连接和异常连接的能力,即区分正常会话与异常会话的能力。在防护过程中,防护进程保持与卷积神经网络模型通信,防护进程负责采集数据,即获取牵引流量中的全部会话数据,并发送到卷积神经网络模型,卷积神经网络模型对接收到的会话数据的进行合法性的判断,并把判断结果(该判断结果即为携带了会话类型标签的会话数据)发送到防护进程,防护进程根据卷积神经网络模型的判断结果可以对恶意的连接对应的流量数据进行丢弃,并且把恶意的源IP拉进黑名单,从而实现对连接型TCP攻击的有效防护。
本发明实施例当检测到目标保护对象处于被攻击状态时,获取所述目标保护对象与多个通信对象之间的所有会话;获取所述所有会话相关联的报文集合,根据所述报文集合确定每个会话的会话特征参数;将所述每个会话的会话特征参数输入到识别模型中,基于所述识别模型确定所述每个会话的会话类型;根据所述每个会话的会话类型确定所述多个通信对象中的每个通信对象的通信对象类型;当存在所述通信对象类型为非法类型的通信对象时,将为所述非法类型的通信对象确定为非法通信对象,将所述非法通信对象添加至黑名单,并丢弃所述非法通信对象对应的会话。由此可见,本发明实施例提出的方法无需对客户端进行改造,即可对客户端实现信息防护的目的,节约了改造成本,不会增加客户端的上行流量,提高了通信效率。并且通过训练完成之后的识别模型可以快速、有效、自动地识别非法通信会话,丢弃非法通信会话的同时还将非法通信会话对应的非法通信对象拉黑,实现了对通信系统的有效防护。并且由于无需对客户端进行改造,即对被保护客户端的类型没有限制,从而扩大了能被防护的客户端的类型范围。
请参见图4,是本发明实施例提供的另一种数据处理方法的流程示意图,如图4所示,所述方法可以包括:
步骤S201,当检测到目标保护对象处于被攻击状态时,获取所述目标保护对象与多个通信对象之间的所有会话;
步骤S202,获取所述所有会话相关联的报文集合;所述报文集合中包括多个报文;
其中,上述步骤S201和步骤S202的具体实现过程请参见图2对应的实施例中对步骤S101-S102的描述,这里不再进行赘述。
步骤S203,提取所述每个报文的来源特征数据;
具体的,提取上述获取到的报文集合中的每一个报文的来源数据特征。其中首先提取上述获取到的报文集合中的每一个报文的数据特征,包括源IP、目的IP、源端口、目的端口、通信协议、seq(序列)号、ack(确认)号、tcp(传输控制协议)标志位、时间戳、包长度以及载荷内容。将每个报文对应的数据特征中的源IP、目的IP、源端口、目的端口以及通信协议的五元组分别作为上述每一个报文的来源数据特征。
步骤S204,将具有相同所述来源特征数据的报文确定为所属于同一个会话对应的所述报文子集合;
具体的,分别统计检测上述每一个报文的来源数据特征,当两个报文的来源数据特征完全一致时,将该两个报文确定为来自同一个会话的不同报文,根据这种规律将上述报文进行分类,整合成上述所有会话,每一个会话至少对应于一个报文,将每个会话对应的多个报文称之为每个会话的报文子集合。
步骤S205,根据所述每个会话对应的报文子集合确定所述每个会话的会话特征参数;
具体的,根据上述每个会话对应的报文子集合确定上述每个会话的会话特征参数,其中每个会话的会话特征参数包括会话起始时间、会话结束时间、源IP、源端口、目的IP、目的端口、通信协议、会话中的总报文数、包长度小于1000的占比、包长度大于1000的占比、会话中最大最小seq差值比上总报文数、会话中最大最小ack差值比上总报文量、会话的SYN(Synchronize Sequence Numbers,同步序列编号,一种握手信号)报文数比上总报文量、会话的ACK(Acknowledgement,确认字符,一种传输类控制字符)报文数比上总报文量、会话的PUSHACK报文数比上总报文量、会话其他类型报文数比上总报文量、会话持续时间、载荷中包含黑特征报文数比上总报文量。其中,每个会话的会话起始时间通过分别摘取每一个会话中的所有报文中最小的时间戳得到,即一个会话的会话起始时间为该会话中包含的报文的时间戳中取时间戳的最小值,其中,时间戳为一个能表示一份数据(此处指报文数据)在某个特定时间之前已经存在的、完整的、可验证的数据,通常是一个字符序列,唯一地标识某一刻的时间;每个会话的会话结束时间通过摘取每一个会话中的所有报文中最大的时间戳得到,即一个会话的会话起始时间为该会话中包含的报文的时间戳中取时间戳的最大值;每一个会话中的总报文量为每一个报文中的报文总数;包长度小于1000字节的占比为,包长度小于1000字节的报文数量与总报文量的比值;包长度大于1000字节的占比为,包长度大于1000字节的报文数量与总报文量的比值;载荷中包含黑特征报文数具体为,现有网络的四层CC攻击报文载荷通常会携带某些特征字符串(即黑特征),该特征字符串为网络黑产在编写攻击工具的时候写上去的,正常业务流很少携带。其中,防护系统的防护进程具备现网黑特征库,可以通过检测载荷数据内容(指所带的信息,即信息位),来判断报文是否包含黑特征。
步骤S206,将所述每个会话的会话特征参数输入所述卷积神经网络模型的输入层中;
具体的,将上述获取的每个会话的会话特征参数输入卷积神经网络模型的输入层中,作为卷积神经网络模型需要识别的原始数据。其中,上述卷积神经网络模型已经通过大量的正常会话与异常会话进行训练,并得到该卷积神经网络模型独有的模型特征参数,所述模型特征参数用于将接收到的数据转换为卷积神经网络模型能识别的模型数据,训练完成的卷积神经网络模型具备区分正常会话类型和异常会话类型的能力。
步骤S207,根据所述卷积神经网络模型中的分类器,分别识别所述每个会话的会话特征参数与所述卷积神经网络模型中的会话类型特征的匹配度,根据识别结果将与所述每个会话的会话特征参数具有最高匹配度的会话类型特征对应的会话类型,分别确定为所述每个会话对应的会话类型;
具体的,根据上述卷积神经网络模型中的分类器,分别识别上述每个会话的会话特征参数与上述卷积神经网络模型中的会话类型特征的匹配度。其中,最基本的分类器包括决策树分类器、选择树分类器和证据分类器。上述识别过程具体为,将上述接收到的每个会话的会话特征参数通过训练得到的上述模型特征参数转化成模型独有的能够被识别的模型数据,且上述通过训练的卷积神经网络模型同时具备训练得到的异常会话对应的会话类型特征的参数以及正常会话对应的会话类型特征的模型参数。将上述每个会话已经通过模型参数转化为模型能识别的数据与异常会话对应的会话类型特征的参数以及正常会话对应的会话类型特征的模型参数进行参数匹配度的匹配,并得到参数匹配度,该参数匹配度包括上述每个会话的会话特征参数与模型中的异常会话对应的会话类型特征的模型参数的匹配度,还包括上述每个会话的会话特征参数与模型中的正常会话对应的会话类型特征的模型参数的匹配度,分别比较上述每个会话的会话特征参数与模型中的正常会话对应的会话类型特征的模型参数的匹配度与上述每个会话的会话特征参数与模型中的异常会话对应的会话类型特征的模型参数的匹配度的大小关系,将匹配度较大的那一个会话类型特征对应的会话类型分别确定为上述每一个会话的会话类型。比如上述某个会话的被模型参数转化为卷积神经网络模型能识别的特征数据与卷积神经网络模型中异常会话对应的会话类型特征的模型参数的匹配度为80%,而与正常会话对应的会话类型特征的模型参数的匹配度为50%,则将上述某个会话判定为异常会话的会话类型。
步骤S208,根据所述每个会话的会话类型确定所述多个通信对象中的每个通信对象的通信对象类型;
步骤S209,当存在所述通信对象类型为非法类型的通信对象时,将为所述非法类型的通信对象确定为非法通信对象,将所述非法通信对象添加至黑名单,并丢弃所述非法通信对象对应的会话;
其中,上述步骤S208和步骤S209的具体实现过程请参见图2对应的实施例中对步骤S104-S105的描述,这里不再进行赘述。
本发明实施例当检测到目标保护对象处于被攻击状态时,获取所述目标保护对象与多个通信对象之间的所有会话;获取所述所有会话相关联的报文集合,根据所述报文集合确定每个会话的会话特征参数;将所述每个会话的会话特征参数输入到识别模型中,基于所述识别模型确定所述每个会话的会话类型;根据所述每个会话的会话类型确定所述多个通信对象中的每个通信对象的通信对象类型;当存在所述通信对象类型为非法类型的通信对象时,将为所述非法类型的通信对象确定为非法通信对象,将所述非法通信对象添加至黑名单,并丢弃所述非法通信对象对应的会话。由此可见,本发明实施例提出的方法无需对客户端进行改造,即可对客户端实现信息防护的目的,节约了改造成本,不会增加客户端的上行流量,提高了通信效率。并且通过训练完成之后的识别模型可以快速、有效、自动地识别非法通信会话,丢弃非法通信会话的同时还将非法通信会话对应的非法通信对象拉黑,实现了对通信系统的有效防护。并且由于无需对客户端进行改造,即对被保护客户端的类型没有限制,从而扩大了能被防护的客户端的类型范围。
请参见图5,是本发明实施例提供的另一种数据处理方法的流程示意图,如图5所示,所述方法可以包括:
步骤S301,当检测到目标保护对象处于被攻击状态时,获取所述目标保护对象与多个通信对象之间的所有会话;
步骤S302,获取所述所有会话相关联的报文集合,根据所述报文集合确定每个会话的会话特征参数;
步骤S303,将所述每个会话的会话特征参数输入到识别模型中,基于所述识别模型确定所述每个会话的会话类型;
其中,上述步骤S301的具体实现过程请参见图2对应的实施例中对步骤S101的描述,上述步骤S302的具体实现过程请参见图4对应的实施例中对步骤S202-步骤S205的描述,上述步骤S303的具体实现过程请参见图4对应的实施例中对步骤S206-步骤S207的描述,这里不再进行赘述。
步骤S304,根据所述每个会话的会话类型分别设置所述每个会话的会话类型标签;
具体的,根据上述每个会话的会话类型分别设置上述每个会话的会话类型标签,即当某个会话的会话类型为异常会话的会话类型,则设置该会话的会话类型标签为异常会话标签,当某个会话的会话类型为正常会话的会话类型,则设置该会话的会话类型标签为正常会话标签。
步骤S305,根据所述会话类型标签分别检测所述每个通信对象对应的异常会话数量;所述异常会话数量是指所述会话类型标签为异常会话标签的会话的数量;
具体的,根据上述会话类型标签分别检测所述每个通信对象对应的异常会话数量,具体为分别检测上述每个通信对象对应的多个会话中,被设置为异常会话标签的会话的会话数量,分别作为每个通信对象对应的异常会话数量。比如当检测到某个通信对象对应有8个会话,其中,该8个会话中有4个会话被设置了异常会话标签,则上述某个通信对象对应的异常会话数量为4。
步骤S306,将所述异常会话数量达到异常数量阈值的通信对象,确定为所述非法类型的通信对象;
其中,上述步骤S306的具体实现过程请参见图2对应的实施例中对步骤S104的描述,这里不再进行赘述。
步骤S307,将所述多个通信对象中除所述非法通信对象之外的通信对象确定为所述合法类型的通信对象;
具体的,将上述多个通信对象中除上述非法通信对象之外的通信对象确定为合法类型的通信对象,或者,可以理解为检测上述每个通信对象对应的异常会话数量,具体为分别检测上述每个通信对象对应的多个会话中,被设置为异常会话标签的会话的会话数量,分别作为每个通信对象对应的异常会话数量。将所述异常会话数量未达到异常数量阈值的通信对象,确定为所述合法类型的通信对象。
步骤S308,当存在所述通信对象类型为非法类型的通信对象时,将为所述非法类型的通信对象确定为非法通信对象,将所述非法通信对象添加至黑名单,并丢弃所述非法通信对象对应的会话;
其中,上述步骤S308的具体实现过程请参见图2对应的实施例中对步骤S105的描述,这里不再进行赘述。
步骤S309,当存在所述通信对象类型为合法类型的通信对象时,将为所述合法类型的通信对象确定为合法通信对象,并转发所述合法通信对象对应的会话至服务器;
具体的,当存在所述通信对象类型为合法类型的通信对象时,将为所述合法类型的通信对象称之为合法通信对象,并将该合法通信对象对应的会话的流量数据经由核心路由器与核心网关转发至服务器,以使得正常会话业务正常进行处理。
本发明实施例当检测到目标保护对象处于被攻击状态时,获取所述目标保护对象与多个通信对象之间的所有会话;获取所述所有会话相关联的报文集合,根据所述报文集合确定每个会话的会话特征参数;将所述每个会话的会话特征参数输入到识别模型中,基于所述识别模型确定所述每个会话的会话类型;根据所述每个会话的会话类型确定所述多个通信对象中的每个通信对象的通信对象类型;当存在所述通信对象类型为非法类型的通信对象时,将为所述非法类型的通信对象确定为非法通信对象,将所述非法通信对象添加至黑名单,并丢弃所述非法通信对象对应的会话。由此可见,本发明实施例提出的方法无需对客户端进行改造,即可对客户端实现信息防护的目的,节约了改造成本,不会增加客户端的上行流量,提高了通信效率。并且通过训练完成之后的识别模型可以快速、有效、自动地识别非法通信会话,丢弃非法通信会话的同时还将非法通信会话对应的非法通信对象拉黑,实现了对通信系统的有效防护。并且由于无需对客户端进行改造,即对被保护客户端的类型没有限制,从而扩大了能被防护的客户端的类型范围。
请参见图6,是本发明实施例提供的一种识别模型训练方法的流程示意图,该识别模型训练方法是对上述图2、图4、图5所提供的方法中的识别模型(即卷积神经网络模型)进行训练的方法,其中,用于训练卷积神经网络模型的数据可以通过数据提取模块获取,该数据提取模型可以是独立的一个功能模型,也可以是部署在防护系统中的一个功能模块。如图6所示,所述方法可以包括:
步骤S401,通过旁路抓包的方式进行样本数据抓包;
具体的,通过旁路抓包的方式进行样本数据抓包,抓包的样本数据中包括正常流量数据和异常流量数据,从所述正常流量数据中提取所有正常样本会话,从所述异常流量数据中提取所有异常样本会话。
步骤S402,从所述抓包结果中获取与所述异常样本会话相关联的异常样本报文集合、与所述正常样本会话相关联的正常样本报文集合;所述异常样本报文集合中包括多个异常样本报文;所述正常样本报文集合中包括多个正常样本报文;
具体的,从上述抓包结果中采集与上述异常样本会话相关联的异常样本报文集合、与所述正常样本会话相关联的正常样本报文集合,其中,上述异常样本报文集合中包括多个异常样本报文,上述正常样本报文集合中包括多个正常样本报文,可以将上述异常样本报文和上述正常样本报文统称为样本报文。其中,每个样本报文对应有自己不同的数据特征,该数据特征包括源IP、目的IP、源端口、目的端口、通信协议、seq(序列)号、ack(确认)号、tcp(传输控制协议)标志位、时间戳、包长度以及载荷内容。
步骤S403,根据所述多个异常样本报文中的每个异常样本报文的来源特征数据,确定所述每个异常样本会话对应的异常样本报文子集合,根据所述每个异常样本会话对应的异常样本报文子集合确定所述每个异常样本会话的样本会话特征参数;
具体的,将上述每个异常样本报文对应的数据特征中的源IP、目的IP、源端口、目的端口以及通信协议作为五元组用来标识每个异常样本会话,即将每个异常样本会话对应的所述五元组作为每个样本会话的来源特征参数。即若两个异常样本报文对应的源IP、目的IP、源端口、目的端口以及通信协议都相同,则该两个异常样本报文就确认为来自同一个异常样本会话的不同异常样本报文,即一个异常样本会话对应于多个异常样本报文,将每一个异常样本会话对应的多个异常样本报文分别称之为每个异常会话的异常样本报文子集合。根据每一个异常样本会话对应的异常样本报文子集合确定每个异常样本会话的样本会话特征参数的过程,与上述图4中步骤S205描述的根据每个会话对应的报文子集合确定每个会话的会话特征参数的实现过程一致,具体的实现过程请参见上述图4对应的实施例中对步骤S205的描述,这里不再进行赘述。
步骤S404,根据所述多个正常样本报文中的每个正常样本报文的来源特征数据,确定所述每个正常样本会话对应的正常样本报文子集合,根据所述每个正常样本会话对应的正常样本报文子集合确定所述每个正常样本会话的样本会话特征参数;根据所述抓包结果确定所述样本会话对应的样本会话标签;所述样本会话标签用于标记所述样本会话的会话类型;
具体的,将上述每个正常样本报文对应的数据特征中的源IP、目的IP、源端口、目的端口以及通信协议作为五元组用来标识每个正常样本会话,即将每个正常样本会话对应的所述五元组作为每个样本会话的来源特征参数。即若两个正常样本报文对应的源IP、目的IP、源端口、目的端口以及通信协议都相同,则该两个正常样本报文就确认为来自同一个正常样本会话的不同正常样本报文,即一个正常样本会话对应于多个正常样本报文,将每一个正常样本会话对应的多个正常样本报文分别称之为每个正常会话的正常样本报文子集合。根据每一个正常样本会话对应的正常样本报文子集合确定每个正常样本会话的样本会话特征参数的过程,与上述图4中步骤S205描述的根据每个会话对应的报文子集合确定每个会话的会话特征参数的实现过程一致,具体的实现过程请参见上述图4对应的实施例中对步骤S205的描述,这里不再进行赘述。
其中,上述每个样本会话对应有图2所描述的方法中进行会话类型识别的会话的全部会话数据特征,即每个正常样本会话与异常样本会话中的每一个样本会话中都包括样本会话特征参数:会话起始时间、会话结束时间、源IP、源端口、目的IP、目的端口、通信协议、会话中的总报文数、包长度小于1000的占比、包长度大于1000的占比、会话中最大最小seq差值比上总报文数、会话中最大最小ack差值比上总报文数、会话的SYN(SynchronizeSequence Numbers,同步序列编号,一种握手信号)报文数比上总报文数、会话的ACK(Acknowledgement,确认字符,一种传输类控制字符)报文数比上总报文数、会话的PUSHACK报文数比上总报文数、会话其他类型报文数比上总报文数、会话持续时间、载荷中包含黑特征报文数比上总报文数,并且除此之外,上述每个正常样本会话对应的样本会话标签为正常样本会话标签,即上述每个正常样本会话对应的样本会话特征参数还包括正常样本标签;上述每个异常样本会话对应的样本会话标签为异常样本会话标签,即上述每个异常样本会话对应的样本会话特征参数还包括异常样本标签。所述样本会话标签用于标记所述样本会话的会话类型,即正常样本会话为正常业务数据的类型,异常样本会话为异常业务数据的类型。
步骤S405,将所述样本会话的会话特征参数与所映射的所述样本会话标签输入所述卷积神经网络模型的输入层中;
具体的,将上述正常样本会话的会话特征参数与其所映射的正常样本会话标签以及上述异常样本会话的会话特征参数与其所映射的所述异常样本会话标签输入上述卷积神经网络模型的输入层中,作为所述卷积神经网络模型的训练样本数据。
步骤S406,根据所述异常样本会话的样本会话特征参数与所述异常样本会话标签之间的映射关系确定所述异常样本会话对应的会话类型特征;
具体的,通过上述异常样本会话的会话特征参数与其所映射的所述异常样本会话标签之间的映射关系不断训练上述卷积神经网络模型,使得所述卷积神经网络模型经过对上述映射关系多次迭代,逐步训练得到上述异常样本会话对应的会话类型特征。具体过程为,上述卷积神经网络模型通过模型本身具备的模型特征参数将输入的异常样本会话的会话特征参数转化为模型能够识别的模型数据,通过异常样本会话的会话特征参数转化之后的模型数据不断迭代训练卷积神经网络模型,直至训练到所述卷积神经网络模型达到收敛状态,最终得到异常样本会话对应的模型可以识别的会话类型特征,该异常样本会话对应的会话类型特征包含了从上述异常样本会话的会话特征参数转化为模型能够识别的模型数据中训练得到的全部数据特征。此外上述卷积神经网络模型本身具备的模型特征参数也在每一次对异常样本会话的会话特征参数进行训练时不断更新,并逐步训练,使得训练后的模型特征参数更加适用于上述卷积神经网络模型。所述模型特征参数用于将输入的会话的会话特征参数转化为模型特征,即转化为模型能识别的模型数据,以便模型根据输入的正常会话或者异常会话的会话特征参数对应的模型数据识别出模型能识别的会话特征参数的特征,进而根据模型能判断上述模型能识别的会话特征参数的模型特征与上述异常样本会话的会话类型特征的匹配度。
步骤S407,根据所述正常样本会话的样本会话特征参数与所述正常样本会话标签之间的映射关系确定所述正常样本会话对应的会话类型特征;
具体的,通过上述正常样本会话的会话特征参数与其所映射的所述正常样本会话标签之间的映射关系不断训练上述卷积神经网络模型,使得所述卷积神经网络模型经过对上述映射关系多次迭代,逐步训练得到上述正常样本会话对应的会话类型特征。具体过程为,上述卷积神经网络模型通过模型本身具备的模型特征参数将输入的正常样本会话的会话特征参数转化为模型能够识别的模型数据,通过正常样本会话的会话特征参数转化之后的模型数据不断迭代训练卷积神经网络模型,直至训练到所述卷积神经网络模型达到收敛状态,最终得到正常样本会话对应的模型可以识别的会话类型特征,该正常样本会话对应的会话类型特征包含了从上述正常样本会话的会话特征参数转化为模型能够识别的模型数据中训练得到的全部数据特征。此外上述卷积神经网络模型本身具备的模型特征参数也在每一次对正常样本会话的会话特征参数进行训练时不断更新,并逐步训练,使得训练后的模型特征参数更加适用于上述卷积神经网络模型。所述模型特征参数用于将输入的会话的会话特征参数转化为模型特征,即转化为模型能识别的模型数据,以便模型根据输入的正常会话或者异常会话的会话特征参数对应的模型数据识别出模型能识别的会话特征参数的特征,进而根据模型能判断上述模型能识别的会话特征参数的模型特征与上述正常样本会话的会话类型特征的匹配度。
步骤S408,根据所述异常样本会话对应的会话类型特征、所述正常样本会话对应的会话类型特征构建所述卷积神经网络模型;
具体的,根据上述异常样本会话对应的会话类型特征以及上述正常样本会话对应的会话类型特征构建所述卷积神经网络模型,所述卷积神经网络模型还包括训练过程逐步更新训练得到的模型的模型特征参数。所述卷积神经网络模型具备将输入的会话的会话特征参数通过上述模型特征参数转化为模型能识别的模型数据,并将该模型数据与模型中的异常样本会话对应的会话类型特征与正常会话对应的会话类型特征进行特征比较和匹配,并得到匹配度,该匹配度包括输入的会话的会话特征参数对应的模型数据与异常样本会话对应的会话类型特征之间的匹配度,还包括输入的会话的会话特征参数对应的模型数据与正常样本会话对应的会话类型特征之间的匹配度。根据上述两个匹配度的大小关系,将匹配度最高的会话类型特征对应的样本会话的类型确定为输入的会话特征参数对应的会话的类型,并在输入的会话的会话特征参数后面添加相应的会话类型标签。比如,输入的会话的会话特征参数对应的模型数据与异常样本会话对应的会话类型特征之间的匹配度为80%,输入的会话的会话特征参数对应的模型数据与正常样本会话对应的会话类型特征之间的匹配度50%,则判定输入的会话特征参数对应的会话的类型为异常会话的会话类型,并在输入的会话的会话特征参数后面添加异常会话类型标签。
请参见图7,是本发明实施例提供的一种识别模型的结构示意图。如图7所示,上述卷积神经网络模型包括嵌入层(Embedding)、卷积层(Conv1)、池化层(MaxPooling1D)、平化层(Flatten)、全连接层(Dense)。首先,嵌入层可以作为上述卷积神经网络模型的输入层,用于为数据提供输入接口并固定输入维度,即用于为上述会话特征参数提供数据输入的接口,其中,上述会话特征参数被输入到卷积神经网络模型之后的数据处理具体过程请参见上述图4对步骤S206-步骤S207的描述以及图6对步骤S405-步骤S408的描述;通过BatchNormalization(规范激活值),在每个batch(批处理)上将前一层的激活值重新规范化,即使得其输出数据的均值接近0,其标准差接近1;其次是卷积层和池化层,所述卷积层和池化层为3轮迭代,即卷积层和池化层共创建了3次,输入的数据需要重复进行3次卷积处理与池化处理,其中,在卷积池化的过程中,通过SpatialDropout1D(增强独立性)提高特征图之间的独立性,防止过拟合;Flatten(平化)层,用于将输入“压平”,即将多维的输入一维化,常用在从卷积层到全连接层的过渡,Flatten不影响batch的大小;Dense(全连接)层,常用的全连接层;其中,在平化层之后还有GaussionNoise(数据提升)层,为数据施加均值为0,标准差为stddev(样本标准方差)的加性高斯噪声,改层在过拟合时比较有用,可以当做是随机的数据提升,高斯噪声是需要对输入的数据进行破坏时的自然选择。
请参见图8,是本发明实施例提供的一种模型训练方法的场景示意图。如图8所示,通过正常业务抓包采样,通过数据提取模块对抓包中的正常业务数据进行采集可以得到上述正常会话对应的会话特征参数(即正常业务数据),通过异常业务抓包采样,通过数据提取模块对抓包中的异常业务数据进行采集可以得到上述异常会话对应的会话特征参数(即攻击数据),将上述正常会话对应的会话特征参数以及上述异常会话对应的会话特征参数作为卷积神经网络的训练样本数据,成功训练完成上述卷积神经网络模型之后,将所述训练完成的卷积神经网络模型部署到防护系统中,另外,所述防护系统中还包括防护进程,通过防护系统中的防护进程与卷积神经网络模型进行协同工作,即可实现对TCP连接型的攻击的防护。
请参见图9,是本发明实施例提供的一种数据处理装置的结构示意图。如图9所示,该数据处理装置1可以包括:会话获取模块11、参数确定模块12、类型识别模块13、类型确定模块14和检测模块15;
会话获取模块11,用于当检测到目标保护对象处于被攻击状态时,获取所述目标保护对象与多个通信对象之间的所有会话;
参数确定模块12,用于获取所述所有会话相关联的报文集合,根据所述报文集合确定每个会话的会话特征参数;
类型识别模块13,用于将所述每个会话的会话特征参数输入到识别模型中,基于所述识别模型确定所述每个会话的会话类型;
类型确定模块14,用于根据所述每个会话的会话类型确定所述多个通信对象中的每个通信对象的通信对象类型;
检测模块15,用于当存在所述通信对象类型为非法类型的通信对象时,将为所述非法类型的通信对象确定为非法通信对象,将所述非法通信对象添加至黑名单,并丢弃所述非法通信对象对应的会话。
其中,所述会话获取模块11、参数确定模块12、类型识别模块13、类型确定模块14和检测模块15的具体功能实现方式请参见图2对应的实施例中的步骤S101-步骤S105,这里不再进行赘述。
其中,所述参数确定模块12,包括获取单元121、第一确定单元122和第二确定单元123:
获取单元121,用于获取所述所有会话相关联的报文集合;所述报文集合中包括多个报文;
第一确定单元122,用于根据所述多个报文中的每个报文的来源特征数据,确定所述每个会话对应的报文子集合;
第二确定单元123,用于根据所述每个会话对应的报文子集合确定所述每个会话的会话特征参数。
其中,所述获取单元121的具体功能实现方式请参见图4对应的实施例中的步骤S202,所述第一确定单元122的具体功能实现方式请参见图4对应的实施例中的步骤S203-步骤S204,所述第二确定单元123的具体功能实现方式请参见图4对应的实施例中的步骤S205,这里不再进行赘述。
其中,所述第一确定单元122,包括提取子单元1221和第一确定子单元1222:
提取子单元1221,用于提取所述每个报文的来源特征数据;
第一确定子单元1222,用于将具有相同所述来源特征数据的报文确定为所属于同一个会话对应的所述报文子集合;
所述来源特征数据包括来源地址、目的地址、来源端口、目的端口以及通信协议。
其中,所述提取子单元1221和第一确定子单元1222的具体功能实现方式请参见图4对应的实施例中的步骤S203-步骤S204,这里不再进行赘述。
其中,所述识别模型包括卷积神经网络模型;所述类型识别模块13,包括输入单元131和第三确定单元132:
输入单元131,用于将所述每个会话的会话特征参数输入所述卷积神经网络模型的输入层中;
第三确定单元132,用于根据所述卷积神经网络模型中的分类器,分别识别所述每个会话的会话特征参数与所述卷积神经网络模型中的会话类型特征的匹配度,根据识别结果将与所述每个会话的会话特征参数具有最高匹配度的会话类型特征对应的会话类型,分别确定为所述每个会话对应的会话类型。
其中,所述输入单元131和第三确定单元132的具体功能实现方式请参见图4对应的实施例中的步骤S206-步骤S207,这里不再进行赘述。
其中,还包括转发模块16:
所述转发模块16具体用于,当存在所述通信对象类型为合法类型的通信对象时,将为所述合法类型的通信对象确定为合法通信对象,并转发所述合法通信对象对应的会话至服务器。
其中,所述类型确定模块14,包括设置单元141、检测单元142、第四确定单元143和第五确定单元144:
设置单元141,用于根据所述每个会话的会话类型分别设置所述每个会话的会话类型标签;
检测单元142,用于根据所述会话类型标签分别检测所述每个通信对象对应的异常会话数量;所述异常会话数量是指所述会话类型标签为异常会话标签的会话的数量;
第四确定单元143,用于将所述异常会话数量达到异常数量阈值的通信对象,确定为所述非法类型的通信对象;
第五确定单元144,用于将所述多个通信对象中除所述非法通信对象之外的通信对象确定为所述合法类型的通信对象。
其中,所述设置单元141、检测单元142、第四确定单元143和第五确定单元144的具体功能实现方式请参见图5对应的实施例中的步骤S304-步骤S307,这里不再进行赘述。
其中,还包括训练模块17,所述训练模块17包括抓包单元171、第六确定单元172和构建单元173:
抓包单元171,用于通过旁路抓包的方式进行样本数据抓包;
第六确定单元172,用于根据抓包结果确定样本会话的样本会话特征参数,根据所述抓包结果确定所述样本会话对应的样本会话标签;所述样本会话标签用于标记所述样本会话的会话类型;
构建单元173,用于根据所述样本会话的样本会话特征参数与所述样本会话标签之间的映射关系,构建所述识别模型。
其中,所述抓包单元171的具体功能实现方式请参见图6对应的实施例中的步骤S401,所述第六确定单元172的具体功能实现方式请参见图6对应的实施例中的步骤S402-步骤S404,所述构建单元173的具体功能实现方式请参见图6对应的实施例中的步骤S405-步骤S408,这里不再进行赘述。
其中,所述样本会话包括异常样本会话和正常样本会话;所述第六确定单元172,包括第二确定子单元1721和第三确定子单元1722:
第二确定子单元1721,用于根据抓包结果确定样本会话的样本会话特征参数;
第三确定子单元1722,用于根据所述抓包结果确定所述样本会话对应的样本会话标签,所述样本会话标签用于标记所述样本会话的会话类型。
其中,所述第二确定子单元1721的具体功能实现方式请参见图6对应的实施例中的步骤S402-步骤S404,所述第三确定子单元1722的具体功能实现方式请参见图6对应的实施例中的步骤S404,这里不再进行赘述。
其中,所述第二确定子单元1721,包括获取子单元17211、第四确定子单元17212和第五确定子单元17213:
获取子单元17211,用于从所述抓包结果中获取与所述异常样本会话相关联的异常样本报文集合、与所述正常样本会话相关联的正常样本报文集合;所述异常样本报文集合中包括多个异常样本报文;所述正常样本报文集合中包括多个正常样本报文;
第四确定子单元17212,用于根据所述多个异常样本报文中的每个异常样本报文的来源特征数据,确定所述每个异常样本会话对应的异常样本报文子集合,根据所述每个异常样本会话对应的异常样本报文子集合确定所述每个异常样本会话的样本会话特征参数;
第五确定子单元17213,用于根据所述多个正常样本报文中的每个正常样本报文的来源特征数据,确定所述每个正常样本会话对应的正常样本报文子集合,根据所述每个正常样本会话对应的正常样本报文子集合确定所述每个正常样本会话的样本会话特征参数。
其中,所述获取子单元17211、第四确定子单元17212和第五确定子单元17213的具体功能实现方式请参见图6对应的实施例中的步骤S402-步骤S404,这里不再进行赘述。
其中,所述识别模型包括卷积神经网络模型;所述构建单元173,包括输入子单元1731、第六确定子单元1732、第七确定子单元1733和构建子单元1734:
输入子单元1731,用于将所述样本会话的会话特征参数与所映射的所述样本会话标签输入所述卷积神经网络模型的输入层中;所述样本会话标签包括异常样本会话标签和正常样本会话标签;
第六确定子单元1732,用于根据所述异常样本会话的样本会话特征参数与所述异常样本会话标签之间的映射关系确定所述异常样本会话对应的会话类型特征;
第七确定子单元1733,用于根据所述正常样本会话的样本会话特征参数与所述正常样本会话标签之间的映射关系确定所述正常样本会话对应的会话类型特征;
构建子单元1734,用于根据所述异常样本会话对应的会话类型特征、所述正常样本会话对应的会话类型特征构建所述卷积神经网络模型。
其中,所述输入子单元1731、第六确定子单元1732、第七确定子单元1733和构建子单元1734的具体功能实现方式请参见图6对应的实施例中的步骤S405-步骤S408,这里不再进行赘述。
本发明实施例当检测到目标保护对象处于被攻击状态时,获取所述目标保护对象与多个通信对象之间的所有会话;获取所述所有会话相关联的报文集合,根据所述报文集合确定每个会话的会话特征参数;将所述每个会话的会话特征参数输入到识别模型中,基于所述识别模型确定所述每个会话的会话类型;根据所述每个会话的会话类型确定所述多个通信对象中的每个通信对象的通信对象类型;当存在所述通信对象类型为非法类型的通信对象时,将为所述非法类型的通信对象确定为非法通信对象,将所述非法通信对象添加至黑名单,并丢弃所述非法通信对象对应的会话。由此可见,本发明实施例提出的方法无需对客户端进行改造,即可对客户端实现信息防护的目的,节约了改造成本,不会增加客户端的上行流量,提高了通信效率。并且通过训练完成之后的识别模型可以快速、有效、自动地识别非法通信会话,丢弃非法通信会话的同时还将非法通信会话对应的非法通信对象拉黑,实现了对通信系统的有效防护。
请参见图10,是本发明实施例提供的另一种数据处理装置的结构示意图。如图10所示,所述数据处理装置1000可以包括:处理器1001,网络接口1004和存储器1005,此外,所述数据处理装置1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(Display)、键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图10所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
在图10所示的数据处理装置1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现前文图2、图4和图5中任一个所对应实施例中对所述数据处理方法的描述。
应当理解,本发明实施例中所描述的数据处理装置1000可执行前文图2、图4和图5中任一个所对应实施例中对所述数据处理方法的描述,也可执行前文图9所对应实施例中对所述数据处理装置1的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
此外,这里需要指出的是:本发明实施例还提供了一种计算机存储介质,且所述计算机存储介质中存储有前文提及的数据处理装置1所执行的计算机程序,且所述计算机程序包括程序指令,当所述处理器执行所述程序指令时,能够执行前文图2、图4和图5中任一个所对应实施例中对所述数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本发明所涉及的计算机存储介质实施例中未披露的技术细节,请参照本发明方法实施例的描述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖范围。
Claims (12)
1.一种数据处理方法,其特征在于,包括:
当检测到目标保护对象处于被攻击状态时,获取所述目标保护对象与多个通信对象之间的所有会话;
获取所述所有会话相关联的报文集合,根据所述报文集合确定每个会话的会话特征参数;
将所述每个会话的会话特征参数输入到识别模型中,基于所述识别模型确定所述每个会话的会话类型;所述会话类型包括正常会话类型和异常会话类型;所述识别模型的模型参数包括:异常会话对应的会话类型特征的模型参数、正常会话对应的会话类型特征的模型参数;所述识别模型具备区分所述正常会话类型和所述异常会话类型的能力;
根据所述每个会话的会话类型确定所述多个通信对象中的每个通信对象的通信对象类型;
当存在所述通信对象类型为非法类型的通信对象时,将为所述非法类型的通信对象确定为非法通信对象,将所述非法通信对象添加至黑名单,并丢弃所述非法通信对象对应的会话。
2.根据权利要求1所述的方法,其特征在于,所述获取所述所有会话相关联的报文集合,根据所述报文集合确定每个会话的会话特征参数,包括:
获取所述所有会话相关联的报文集合;所述报文集合中包括多个报文;
根据所述多个报文中的每个报文的来源特征数据,确定所述每个会话对应的报文子集合;
根据所述每个会话对应的报文子集合确定所述每个会话的会话特征参数。
3.根据权利要求2所述的方法,其特征在于,所述根据所述多个报文中的每个报文的来源特征数据,确定所述每个会话对应的报文子集合,包括:
提取所述每个报文的来源特征数据;
将具有相同所述来源特征数据的报文确定为所属于同一个会话对应的所述报文子集合;
所述来源特征数据包括来源地址、目的地址、来源端口、目的端口以及通信协议。
4.根据权利要求1所述的方法,其特征在于,所述识别模型包括卷积神经网络模型;所述将所述每个会话的会话特征参数输入到识别模型中,基于所述识别模型确定所述每个会话的会话类型,包括:
将所述每个会话的会话特征参数输入所述卷积神经网络模型的输入层中;
根据所述卷积神经网络模型中的分类器,分别识别所述每个会话的会话特征参数与所述卷积神经网络模型中的会话类型特征的匹配度,根据识别结果将与所述每个会话的会话特征参数具有最高匹配度的会话类型特征对应的会话类型,分别确定为所述每个会话对应的会话类型。
5.根据权利要求1所述的方法,其特征在于,还包括:
当存在所述通信对象类型为合法类型的通信对象时,将为所述合法类型的通信对象确定为合法通信对象,并转发所述合法通信对象对应的会话至服务器。
6.根据权利要求1或5所述的方法,其特征在于,所述根据所述每个会话的会话类型确定所述多个通信对象中的每个通信对象的通信对象类型,包括:
根据所述每个会话的会话类型分别设置所述每个会话的会话类型标签;
根据所述会话类型标签分别检测所述每个通信对象对应的异常会话数量;所述异常会话数量是指所述会话类型标签为异常会话标签的会话的数量;
将所述异常会话数量达到异常数量阈值的通信对象,确定为所述非法类型的通信对象;
将所述多个通信对象中除所述非法通信对象之外的通信对象确定为合法类型的通信对象。
7.根据权利要求1所述的方法,其特征在于,还包括:
通过旁路抓包的方式进行样本数据抓包;
根据抓包结果确定样本会话的样本会话特征参数,根据所述抓包结果确定所述样本会话对应的样本会话标签;所述样本会话标签用于标记所述样本会话的会话类型;
根据所述样本会话的样本会话特征参数与所述样本会话标签之间的映射关系,构建所述识别模型。
8.根据权利要求7所述的方法,其特征在于,所述样本会话包括异常样本会话和正常样本会话;所述根据抓包结果确定样本会话的样本会话特征参数,包括:
从所述抓包结果中获取与所述异常样本会话相关联的异常样本报文集合、与所述正常样本会话相关联的正常样本报文集合;所述异常样本报文集合中包括多个异常样本报文;所述正常样本报文集合中包括多个正常样本报文;
根据所述多个异常样本报文中的每个异常样本报文的来源特征数据,确定所述每个异常样本会话对应的异常样本报文子集合,根据所述每个异常样本会话对应的异常样本报文子集合确定所述每个异常样本会话的样本会话特征参数;
根据所述多个正常样本报文中的每个正常样本报文的来源特征数据,确定所述每个正常样本会话对应的正常样本报文子集合,根据所述每个正常样本会话对应的正常样本报文子集合确定所述每个正常样本会话的样本会话特征参数。
9.根据权利要求7或8所述的方法,其特征在于,所述识别模型包括卷积神经网络模型;所述根据所述样本会话的样本会话特征参数与所述样本会话标签之间的映射关系,构建所述识别模型,包括:
将所述样本会话的会话特征参数与所映射的所述样本会话标签输入所述卷积神经网络模型的输入层中;所述样本会话标签包括异常样本会话标签和正常样本会话标签;
根据所述异常样本会话的样本会话特征参数与所述异常样本会话标签之间的映射关系确定所述异常样本会话对应的会话类型特征;
根据所述正常样本会话的样本会话特征参数与所述正常样本会话标签之间的映射关系确定所述正常样本会话对应的会话类型特征;
根据所述异常样本会话对应的会话类型特征、所述正常样本会话对应的会话类型特征构建所述卷积神经网络模型。
10.一种数据处理装置,其特征在于,包括:
会话获取模块,用于当检测到目标保护对象处于被攻击状态时,获取所述目标保护对象与多个通信对象之间的所有会话;
参数确定模块,用于获取所述所有会话相关联的报文集合,根据所述报文集合确定每个会话的会话特征参数;
类型识别模块,用于将所述每个会话的会话特征参数输入到识别模型中,基于所述识别模型确定所述每个会话的会话类型;所述会话类型包括正常会话类型和异常会话类型;所述识别模型的模型参数包括:异常会话对应的会话类型特征的模型参数、正常会话对应的会话类型特征的模型参数;所述识别模型具备区分所述正常会话类型和所述异常会话类型的能力;
类型确定模块,用于根据所述每个会话的会话类型确定所述多个通信对象中的每个通信对象的通信对象类型;
检测模块,用于当存在所述通信对象类型为非法类型的通信对象时,将为所述非法类型的通信对象确定为非法通信对象,将所述非法通信对象添加至黑名单,并丢弃所述非法通信对象对应的会话。
11.一种数据处理装置,其特征在于,包括:处理器和存储器;
所述处理器和存储器相连,其中,所述存储器用于存储程序代码,所述处理器用于调用所述程序代码,以执行如权利要求1-9任一项所述的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时,执行权利要求1-9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910173339.4A CN109818970B (zh) | 2019-03-07 | 2019-03-07 | 一种数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910173339.4A CN109818970B (zh) | 2019-03-07 | 2019-03-07 | 一种数据处理方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109818970A CN109818970A (zh) | 2019-05-28 |
CN109818970B true CN109818970B (zh) | 2021-04-30 |
Family
ID=66608461
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910173339.4A Active CN109818970B (zh) | 2019-03-07 | 2019-03-07 | 一种数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109818970B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110362494B (zh) * | 2019-07-18 | 2021-06-15 | 腾讯科技(深圳)有限公司 | 微服务状态信息展示的方法、模型训练方法以及相关装置 |
CN112395070A (zh) * | 2019-08-12 | 2021-02-23 | 阿里巴巴集团控股有限公司 | 数据处理系统及方法 |
CN110674010B (zh) * | 2019-09-10 | 2021-04-06 | 西安电子科技大学 | 基于会话长度概率分布的智能设备应用程序识别方法 |
CN111385303B (zh) * | 2020-03-11 | 2022-11-29 | 江苏亨通工控安全研究院有限公司 | 一种网络安全防护系统及实现方法 |
CN111131335B (zh) * | 2020-03-30 | 2020-08-28 | 腾讯科技(深圳)有限公司 | 基于人工智能的网络安全防护方法、装置、电子设备 |
CN112104611A (zh) * | 2020-08-20 | 2020-12-18 | 广东网堤信息安全技术有限公司 | 一种cc攻击防护管理的方法 |
CN116192494B (zh) * | 2023-02-13 | 2023-10-20 | 山东云天安全技术有限公司 | 一种确定异常数据的方法、电子设备及存储介质 |
CN116112265B (zh) * | 2023-02-13 | 2023-07-28 | 山东云天安全技术有限公司 | 一种异常会话的确定方法、电子设备及存储介质 |
CN117082581B (zh) * | 2023-07-03 | 2024-07-05 | 天津市邮电设计院有限责任公司 | 一种无线通讯网络多通信数据处理方法、装置及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101605072A (zh) * | 2008-06-12 | 2009-12-16 | 阿尔卡特朗讯公司 | 保护基于分组的网络不受攻击的方法以及安全边界节点 |
CN105871885A (zh) * | 2016-05-11 | 2016-08-17 | 南京航空航天大学 | 一种网络渗透测试方法 |
US9736147B1 (en) * | 2013-04-08 | 2017-08-15 | Titanium Crypt, Inc. | Artificial intelligence encryption model (AIEM) with device authorization and attack detection (DAAAD) |
CN108595655A (zh) * | 2018-04-27 | 2018-09-28 | 福建师范大学 | 一种基于会话特征相似性模糊聚类的异常用户检测方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080072295A1 (en) * | 2006-09-20 | 2008-03-20 | Nathaniel Solomon Borenstein | Method and System for Authentication |
US8756684B2 (en) * | 2010-03-01 | 2014-06-17 | Emc Corporation | System and method for network security including detection of attacks through partner websites |
US8973143B2 (en) * | 2013-01-28 | 2015-03-03 | The Barrier Group, Llc | Method and system for defeating denial of service attacks |
-
2019
- 2019-03-07 CN CN201910173339.4A patent/CN109818970B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101605072A (zh) * | 2008-06-12 | 2009-12-16 | 阿尔卡特朗讯公司 | 保护基于分组的网络不受攻击的方法以及安全边界节点 |
US9736147B1 (en) * | 2013-04-08 | 2017-08-15 | Titanium Crypt, Inc. | Artificial intelligence encryption model (AIEM) with device authorization and attack detection (DAAAD) |
CN105871885A (zh) * | 2016-05-11 | 2016-08-17 | 南京航空航天大学 | 一种网络渗透测试方法 |
CN108595655A (zh) * | 2018-04-27 | 2018-09-28 | 福建师范大学 | 一种基于会话特征相似性模糊聚类的异常用户检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109818970A (zh) | 2019-05-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109818970B (zh) | 一种数据处理方法及装置 | |
CN112019574B (zh) | 异常网络数据检测方法、装置、计算机设备和存储介质 | |
EP2434689B1 (en) | Method and apparatus for detecting message | |
CN107222491B (zh) | 一种基于工业控制网络变种攻击的入侵检测规则创建方法 | |
CN101741862B (zh) | 基于数据包序列特征的irc僵尸网络检测系统和检测方法 | |
US20150033343A1 (en) | Method, Apparatus, and Device for Detecting E-Mail Attack | |
CN111147489B (zh) | 一种面向链接伪装的鱼叉攻击邮件发现方法及装置 | |
CN111478920A (zh) | 一种隐蔽信道通信检测方法、装置及设备 | |
US20220263823A1 (en) | Packet Processing Method and Apparatus, Device, and Computer-Readable Storage Medium | |
US20080291912A1 (en) | System and method for detecting file | |
CN110868404B (zh) | 一种基于tcp/ip指纹的工控设备自动识别方法 | |
SG184120A1 (en) | Method of identifying a protocol giving rise to a data flow | |
CN112769623A (zh) | 边缘环境下的物联网设备识别方法 | |
CN112272175A (zh) | 一种基于dns的木马病毒检测方法 | |
CN113965418B (zh) | 一种攻击成功判定方法及装置 | |
CN109309679B (zh) | 一种基于tcp流状态的网络扫描检测方法及检测系统 | |
CN116170227A (zh) | 一种流量异常的检测方法、装置、电子设备及存储介质 | |
CN112565259B (zh) | 过滤dns隧道木马通信数据的方法及装置 | |
CN115603939A (zh) | 基于长短期记忆和注意力模型的分布式拒绝服务攻击检测方法 | |
CN115022034A (zh) | 攻击报文识别方法、装置、设备和介质 | |
CN112422474B (zh) | 一种加密数据流的监测方法、第一电子设备和存储介质 | |
CN103688508B (zh) | 报文识别方法和防护设备 | |
CN112968906A (zh) | 一种基于多元组的Modbus TCP异常通讯检测方法和系统 | |
CN115348188B (zh) | 一种dns隧道流量检测方法、装置、存储介质及终端 | |
CN114244572B (zh) | 一种基于零拷贝报文收集系统的物联网安全网关方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |