CN111064730A - 网络安全检测方法、装置、设备及存储介质 - Google Patents

网络安全检测方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN111064730A
CN111064730A CN201911337670.1A CN201911337670A CN111064730A CN 111064730 A CN111064730 A CN 111064730A CN 201911337670 A CN201911337670 A CN 201911337670A CN 111064730 A CN111064730 A CN 111064730A
Authority
CN
China
Prior art keywords
application
data packet
identification
processed
rule
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.)
Pending
Application number
CN201911337670.1A
Other languages
English (en)
Inventor
庞思铭
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sangfor Technologies Co Ltd
Original Assignee
Sangfor Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sangfor Technologies Co Ltd filed Critical Sangfor Technologies Co Ltd
Priority to CN201911337670.1A priority Critical patent/CN111064730A/zh
Publication of CN111064730A publication Critical patent/CN111064730A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种网络安全检测方法、装置、设备及存储介质。其中,该方法包括:获取待处理数据包;基于规则中的应用指纹关键字,调用应用识别插件对所述待处理数据包进行应用识别;基于所述应用识别的结果,对所述待处理数据包进行规则匹配;基于所述待处理数据包的规则匹配的结果进行响应。本发明实施例既减少了基于应用层协议的应用的网络攻击的漏报,提高了检测的准确率,又能有效降低规则库中规则的维护难度,提高了对待处理数据包进行应用识别的效率,从而可以提高网络攻击的检测效率。

Description

网络安全检测方法、装置、设备及存储介质
技术领域
本发明涉及网络安全领域,尤其涉及一种网络安全检测方法、装置、设备及存储介质。
背景技术
为了满足网络安全需求,往往通过网络入侵检测系统(Network IntrusionDetection System,简称为IDS)或者网络入侵防御系统(Network Intrusion PreventionSystem,简称为IPS)来对网络中的恶意流量进行监测和响应。
为实现对网络攻击的有效检测,通常需要为IDS或者IPS开发用于检测已知攻击模式的规则(也被称为“签名”)。于是,为了保护某个类型应用的漏洞,并防御对应的一系列利用漏洞的攻击模式,往往需要开发一定数量的与前述攻击模式对应的规则。
随着网络技术的发展,越来越多的应用都是基于TCP(传输控制协议)的上层协议,如HTTP(超文本传输协议),且大量的基于应用层协议的服务、组件、中间件等应用的漏洞被网络流量利用。
相关技术中,在针对某种类型的应用的漏洞编写防御恶意流量的规则的时候,为避免误判,往往需要在规则中补充大量和协议特征有关的规则检测字段,从而提高规则检测的准确率。然而,随着需要保护的应用的数量不断增多,此类包含协议特征相关的规则检测字段的规则数目也不断增加,导致此类规则的维护难度增大,且不同应用间重复性规则的不断增加,亦会增加规则检测引擎的运行开销和性能损失。
发明内容
有鉴于此,本发明实施例提供了一种网络安全检测方法、装置、设备及存储介质,旨在能检测基于应用层协议的应用的网络攻击的同时,有效降低规则的维护难度,并提高网络攻击的检测效率。
本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种网络安全检测方法,包括:
获取待处理数据包;
基于规则中的应用指纹关键字,调用应用识别插件对所述待处理数据包进行应用识别;
基于所述应用识别的结果,对所述待处理数据包进行规则匹配;
基于所述待处理数据包的规则匹配的结果进行响应。
本发明实施例还提供了一种网络安全检测装置,包括:
获取模块,用于获取待处理数据包;
应用识别模块,用于基于规则中的应用指纹关键字,调用应用识别插件对所述待处理数据包进行应用识别;
规则检测模块,用于基于所述应用识别的结果,对所述待处理数据包进行规则匹配;
响应模块,用于基于所述待处理数据包的规则匹配的结果进行响应。
本发明实施例又提供了一种网络安全检测设备,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,所述处理器,用于运行计算机程序时,执行本发明任一实施例所述方法的步骤。
本发明实施例还提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时,实现本发明任一实施例所述方法的步骤。
本发明实施例提供的技术方案,在对待处理数据包进行规则匹配之前,通过规则中的应用指纹关键字,调用应用识别插件对待处理数据包进行应用识别,从而将待处理数据包后续的规则匹配限定在合适的范围内,既减少了基于应用层协议的应用的网络攻击的漏报,提高了检测的准确率,又能有效降低规则库中规则的维护难度,且通过应用指纹关键字调用应用识别插件对待处理数据包进行应用识别,提高了对待处理数据包进行应用识别的效率,从而可以提高网络攻击的检测效率。
附图说明
图1为本发明实施例网络安全检测方法的流程示意图;
图2为本发明实施例网络安全检测装置的结构示意图;
图3为本发明应用实施例网络安全检测装置的结构示意图;
图4为本发明实施例网络安全检测设备的结构示意图。
具体实施方式
下面结合附图及实施例对本发明再作进一步详细的描述。
除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。
相关技术中,网络安全检测系统,比如IDS、IPS,一般遵照的是经典的CIDF(CommonIntrusion Detection Framework,公共入侵检测框架),CIDF将IDS或者IPS分为四个组件:事件生成器(event generator:E-boxes)、分析引擎(analysis engines:A-boxes),存储机制(storage mechanisms:D-boxes)、以及响应模块(countermeasures:C-boxes)。且网络安全检测系统主要基于“签名”(Signature Based),对匹配了已知的攻击模式的流量进行拦截或告警,往往和已知的漏洞的已知的利用方式有关;或者基于反常行为(AnomalyBased),检测和所有正常行为不同的活动。
以传统的基于“签名”的IDS或者IPS为例,为实现对已知攻击的有效检测,通常需要为IDS或者IPS开发用于检测已知攻击模式的规则(也被称为“签名”)。于是为了保护某个类型应用的漏洞,并防御对应的一系列漏洞利用的攻击模式,往往就会开发一定数量的与前述攻击模式对应的规则。通过规则检测引擎将规则编译为多模匹配状态机,从而在网络流量中对攻击模式进行实时监测和响应。
随着Web(万维网)技术的发展,越来越多的应用都是基于TCP的上层协议如HTTP协议,而大量的基于应用层协议的服务、组件、中间件等应用的漏洞利用流量,在模式上既有相似性又有不同。
相关技术中,在针对某种类型的组件的漏洞编写恶意流量防御规则的时候,为避免误判,往往需要在规则中补充大量和协议特征有关的规则检测字段,从而提高规则检测的准确率。如下,举几个例子:
针对使用windows SMB协议的应用组件的漏洞,通常基于flowbits编写其流量协议识别规则。
针对VNC协议的组件的漏洞,通常需要基于flowbits编写其流量协议识别规则。
随着需要保护的组件数量不断增多,此类设置flowbits的规则的数目也不断增加,如果开发人员不重视对此类规则的管理,会导致重复性的规则不断增加,势必会增加规则检测引擎的运行开销和性能损失。而如果规则编写者不重视此类型协议识别规则的使用,又必然会增加IDS或者IPS的流量误判。
基于此,在本发明的各种实施例中,在对待处理数据包进行规则匹配之前,通过规则中的应用指纹关键字,调用应用识别插件对待处理数据包进行应用识别,从而将待处理数据包后续的规则匹配限定在合适的范围内,既减少了基于应用层协议的应用的网络攻击的漏报,提高了检测的准确率,又能有效降低规则库中规则的维护难度,且通过应用指纹关键字调用应用识别插件对待处理数据包进行应用识别,允许直接引用应用指纹特征,提高了对待处理数据包进行应用识别的效率,从而可以提高网络攻击的检测效率。
本发明实施例提供了一种网络安全检测方法,可以应用于网络安全检测系统,比如IPS、IDS等系统,如图1所示,该方法包括:
步骤101,获取待处理数据包;
这里,待处理数据包为网络安全检测系统获取的源数据进行预处理后的数据包。在一实施例中,所述待处理数据包为对网络安全检测系统获取的源数据进行解码、预处理后得到的。
实际应用中,以Snort为例,Snort为Martin Roesch用C语言开发的开放源代码(Open Source)的入侵检测系统。Snort可以根据操作系统的不同采用libpcap或winpcap函数从网络中捕获源数据。然后将捕获的源数据送到包解码器进行解码。网络中的源数据可以是以太网包、令牌环包、TCP/IP包、802.11包等格式。包解码器将源数据解码成Snort认识的统一的格式的数据包;之后就将数据包送到预处理器进行处理,预处理包括对能分片的数据包进行重新组装,处理一些明显的错误等问题。
步骤102,基于规则中的应用指纹关键字,调用应用识别插件对所述待处理数据包进行应用识别;
这里,网络安全检测系统可以基于规则中的应用指纹关键字调用应用识别插件对待处理数据包进行应用识别。该应用识别插件为具有根据预设的应用指纹特征进行应用识别的程序组件。可以理解的是,应用指纹关键字为调用应用识别插件对待处理数据包进行应用识别的规则。
步骤103,基于所述应用识别的结果,对所述待处理数据包进行规则匹配;
网络安全检测系统可以根据应用识别的结果,对所述待处理数据包进行规则匹配。这里,规则匹配是指对所述待处理数据包根据设定的规则进行匹配,以检测该待处理数据包是否存在网络攻击行为。
实际应用中,规则检测引擎将已加载的规则集(rules)编译为模式组(patterngroups),以便可以将所述待处理数据包对该模式组中的所有模式进行逐个模式的并行搜索。如果找到相应匹配项,在该模式组中进行完整的规则的匹配检测,直至搜索完毕。
步骤104,基于所述待处理数据包的规则匹配的结果进行响应。
这里,网络安全检测系统可以根据所述待处理数据包的规则匹配的结果进行响应,具体地,若存在匹配成功的结果,可以根据相应结果生成日志和/或生成告警。
实际应用中,网络安全检测系统对每个待处理数据包都可以定义如下三种处理方式:生成日志(log)、生成告警(alert)和忽略(pass)。其中,生成日志即记录该待处理数据包,生成告警即生成该待处理数据包对应的预警信息,忽略即过滤掉该待处理数据包。
本发明实施例网络安全检测方法,在对待处理数据包进行规则匹配之前,通过规则中的应用指纹关键字调用应用识别插件对待处理数据包进行应用识别,从而将待处理数据包后续的规则匹配限定在合适的范围内,既减少了基于应用层协议的应用的网络攻击的漏报,提高了检测的准确率,又能有效降低规则库中规则的维护难度,且通过应用指纹关键字调用应用识别插件对待处理数据包进行应用识别,提高了对待处理数据包进行应用识别的效率,从而可以提高网络攻击的检测效率。
在一实施例中,应用识别插件包括:基于应用指纹进行应用识别的第一识别插件和基于端口进行应用识别的第二识别插件。所述基于规则中的应用指纹关键字对所述待处理数据包进行应用识别,包括以下至少之一:
基于应用指纹关键字,调用第一识别插件包括的应用指纹特征对所述待处理数据包进行匹配,确定所述待处理数据包应用识别的结果;
基于应用指纹关键字,调用第二识别插件中端口与应用名称的映射关系对待处理数据包进行匹配,确定所述待处理数据包应用识别的结果。
这样,可以通过应用识别插件来进行应用识别,提高待处理数据包的应用识别效率。若应用识别插件同时具备第一识别插件和第二识别插件,则基于应用指纹关键字,可以调用第一识别插件和第二识别插件对待处理数据包进行应用识别。
其中,所述应用指纹关键字为调用所述应用识别插件的入口点,基于应用指纹关键字可以匹配到相应的识别插件,各识别插件中包括相应的识别规则,基于所述识别规则对所述待处理数据包进行匹配,确定待处理数据包的应用识别的结果。
比如,可以基于应用指纹关键字匹配到第一识别插件,调用该第一识别插件中所有的识别规则,该识别规则可以为应用指纹特征,将待处理数据包中与所述应用指纹特征相匹配的数据作为检索式,检索所述应用指纹特征是否存在与该检索式相匹配的记录,如果是,将该匹配的记录对应的应用作为应用识别的结果。
又如,可以基于应用指纹关键字匹配到第二识别插件,调用该第二识别插件中所有的识别规则,该识别规则可以为端口与应用名称的映射关系,将待处理数据包中端口信息作为检索式,检索所述端口与应用名称的映射关系中是否存在与该检索式相匹配的记录,如果是,将该匹配的记录对应的应用作为应用识别的结果。
实际应用中,第一识别插件可以基于Lua脚本编写。在一应用示例中,第一识别插件中,开发者可以定义应用指纹所对应的应用名称,应用指纹特征等。第一识别插件中编写的应用指纹特征支持正则表达式的匹配方式。应用指纹特征包括但不限于:所属协议、URL(uniform resource locator,统一资源定位符)模式、常用端口、数据流量模式、证书数据项等;其中,所属协议可以基于IDS或者IPS的预处理器(PreProcessor)支持检测的协议进行定义。调用该第一识别插件中的应用指纹特征,将待处理数据包中与应用指纹特征相匹配的数据作为检索式,检索应用指纹特征中是否存在与该检索式相匹配的记录,如果是,则将该匹配的记录对应的应用名称作为应用识别的结果。
在一应用示例中,第二识别插件中,针对固定端口的协议,开发者可以设定特定端口对应的应用名称。即第二识别插件可以根据端口与应用名称的映射关系对待处理数据包进行匹配,具体地,将待处理数据包中端口信息作为检索式,检索所述端口与应用名称的映射关系中是否存在与该检索式相匹配的记录,如果是,将该匹配的记录对应的应用名称作为应用识别的结果。
实际应用中,网络安全检测系统在运行带应用指纹关键字的规则时,可以通过LuaJIT引擎对所述待处理数据包进行应用识别。该LuaJIT引擎是一种集成高性能、低内存消耗的Lua脚本引擎;用于解析基于Lua语言编写的应用识别插件。
在一实施例中,第一识别插件可以包括多种应用的应用指纹特征。所述调用第一识别插件包括的应用指纹特征对所述待处理数据包进行匹配,确定所述待处理数据包应用识别的结果,包括以下至少之一:
对所述待处理数据包基于服务器应用对应的应用指纹特征进行服务器应用识别,确定所述待处理数据包在服务器应用中的识别结果;
对所述待处理数据包基于客户端应用对应的应用指纹特征进行客户端应用识别,确定所述待处理数据包在客户端应用中的识别结果;
对所述待处理数据包基于负载应用对应的应用指纹特征进行负载应用识别,确定所述待处理数据包在负载应用中的识别结果。
这样,在应用识别时,可以调用应用指纹特征快速检测待处理器包对应的识别结果,进一步提高应用识别的效率。
实际应用中,LuaJIT引擎支持如下四种指纹识别模式:
A.服务器应用指纹识别:开发者可以开发与服务器会话有关的应用(如httpserver)的第一识别插件(如ServiceAppSig),可以基于该第一识别插件来识别待处理数据包是否属于服务器会话有关的应用。
B.客户端应用指纹识别:开发者可以开发与客户端应用会话有关的应用(如Chrome)的第一识别插件(如ClientAppSig),可以基于该第一识别插件来识别待处理数据包是否属于客户端应用会话有关的应用。
C.负载应用指纹识别:开发者可以开发与特定HTTP应用层服务相关的负载应用(如Weibo)的第一识别插件(如payloadAppSig),可以基于该第一识别插件来识别待处理数据包是否属于与特定HTTP应用层服务相关的负载应用。
D.其他应用指纹识别:开发者可以与其他被封装的协议有关的应用指纹识别特征,形成相应的第一识别插件,以基于相应的第一识别插件来识别待处理数据包是否属于特定的应用。
需要说明的是,在网络安全检测系统启动时,将自动加载全部已经配置的应用识别插件,并在数据流通过引擎时自动完成应用指纹识别。此外,还支持用户自定义的应用识别插件的导入,从而可以满足系统的可扩展性及灵活配置的需求。
在一应用示例中,基于Lua脚本编写的第一识别插件可以具有如下功能性代码模块:
a.应用指纹特征头:包括版本、指纹基本描述等;
b.应用指纹检测所需引用的库文件;
c.应用指纹检测基础信息:包括应用所属协议、指纹识别初始化操作回调函数名、应用指纹验证回调函数名、应用指纹检测结束后操作回调函数名等定义;
d.应用指纹检测初始化函数;
e.应用指纹检测执行函数;
f.应用指纹检测结束函数。
在一实施例中,所述方法还包括:若所述待处理数据包在调用第一识别插件确定的应用识别的结果与调用第二识别插件确定的应用识别的结果存在冲突时,将调用第一识别插件确定的应用识别的结果作为最终的应用识别的结果。
这样,通过将基于第一识别插件确定的应用识别结果作为优先决策的结果,避免了识别结果的冲突,且可以优先根据定义的应用指纹特征来进行应用识别,提高了识别结果的可靠性。
在一实施例中,网络安全检测系统在对待处理数据进行检测之前,所述方法还包括:加载并解析规则库,得到用于网络安全检测的多条规则,所述多条规则包括:基于应用指纹关键字进行应用识别的规则。
这样,可以在解析规则库生成设定的多条规则时,在部分规则中引入应用指纹关键字,从而可以在规则检测引擎进行规则匹配之前,基于应用指纹关键字调用应用识别插件进行应用识别。
实际应用中,当规则开发者定义了一种新的应用指纹识别插件(即第一识别插件),并为它定义了一个唯一的应用名称后,就可以通过应用指纹关键字在规则中引用这个应用指纹识别插件,从而使规则的命中的流量有效限制在特定应用协议的流量特征范围,有效减低误判的同时,还让规则维护更加便利。
在一实施例中,所述基于所述应用识别的结果,对所述待处理数据包进行规则匹配,包括:
若所述待处理数据包存在基于所述应用识别确定的目标应用,基于相应目标应用对应的规则进行规则匹配;
若所述待处理数据包不存在基于所述应用识别确定的目标应用,基于通用的规则进行规则匹配。
实际应用中,不同的应用具有相应的模式组,比如,第一应用具有第一模式组,第二应用具有第二模式组,第三应用具有第三模式组,依此类推。若所述待处理数据包没有与特定应用匹配,则对所述待处理数据包根据通用规则对应的模式组进行规则匹配,比如采用通用的IPS或者IDS的规则库进行匹配。这里,该通用的规则可以理解为不包括上述特定应用对应的规则的规则集。这样,既有效避免因未对待处理数据进行相应规则匹配导致的流量误判,又可以将待处理数据与匹配的模式组进行规则匹配,提高了检测效率。
在一实施例中,所述响应包括以下至少之一:生成日志、生成告警,所述方法还包括:输出所述告警和/或所述日志。
实际应用中,网络安全检测系统还可以包括输出插件,输出插件将生成日志和/或告警输出,比如,输出至syslog(系统日志)、用户指定的文件、套接字或数据库中。
为了实现本发明实施例的方法,本发明实施例还提供一种网络安全检测装置,如图2所示,该装置包括:获取模块201、应用识别模块202、规则检测模块203及响应模块204,其中,
获取模块201,用于获取待处理数据包;
应用识别模块202,用于基于规则中的应用指纹关键字,调用应用识别插件对所述待处理数据包进行应用识别;
规则检测模块203,用于基于所述应用识别的结果,对所述待处理数据包进行规则匹配;
响应模块204,用于基于所述待处理数据包的规则匹配的结果进行响应。
在一实施例中,应用识别模块202具体用于以下至少之一:
基于应用指纹关键字,调用第一识别插件包括的应用指纹特征对所述待处理数据包进行匹配,确定所述待处理数据包应用识别的结果;
基于应用指纹关键字,调用第二识别插件中端口与应用名称的映射关系对待处理数据包进行匹配,确定所述待处理数据包应用识别的结果。
在一实施例中,应用识别模块202具体用于以下至少之一:
对所述待处理数据包基于服务器应用对应的应用指纹特征进行服务器应用识别,确定所述待处理数据包在服务器应用中的识别结果;
对所述待处理数据包基于客户端应用对应的应用指纹特征进行客户端应用识别,确定所述待处理数据包在客户端应用中的识别结果;
对所述待处理数据包基于负载应用对应的应用指纹特征进行负载应用识别,确定所述待处理数据包在负载应用中的识别结果。
在一实施例中,应用识别模块202还用于:
若所述待处理数据包在调用第一识别插件确定的应用识别的结果与调用第二识别插件确定的应用识别的结果存在冲突时,将调用第一识别插件确定的应用识别的结果作为最终的应用识别的结果。
在一实施例中,规则检测模块203具体用于:
若所述待处理数据包存在基于所述应用识别确定的目标应用,基于相应目标应用对应的规则进行规则匹配;
若所述待处理数据包不存在基于所述应用识别确定的目标应用,基于通用的规则进行规则匹配。
在一实施例中,所述装置还包括:规则解析模块205,用于加载并解析规则库,得到用于网络安全检测的多条规则,所述多条规则包括:基于应用指纹关键字进行应用识别的规则。
在一实施例中,所述装置还包括:输出模块206,输出所述告警和/或所述日志。
实际应用时,获取模块201、应用识别模块202、规则检测模块203、响应模块204、规则解析模块205及输出模块206,可以由网络安全检测装置中的处理器来实现。当然,处理器需要运行存储器中的计算机程序来实现它的功能。
需要说明的是:上述实施例提供的网络安全检测装置在进行网络安全检测时,仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将装置的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的网络安全检测装置与网络安全检测方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
下面结合应用实施例对本发明再作进一步详细的描述。
如图3所示,在本应用实施例中,网络安全检测装置包括:包解码器301、预处理器302、应用识别模块303(对应上述的应用识别模块202)、规则检测引擎304(对应上述的规则检测模块203)、日志及告警模块305(对应上述的响应模块204)及输出模块306(对应上述的输出模块206),其中,包解码器301和预处理器302相当于上述的获取模块201。
结合图3所示的结构,网络安全检测方法包括:
包解码器301解析网络数据流中的每个数据包以确定其基本网络流量特征,例如,源ip地址和目标ip地址以及端口。一个典型的数据包可能包含数据链路层、网络层、传输层及http层数据包(即eth:ip:tcp:http)。在对数据包进行解码时,会检查各种封装协议的完整性和异常。实际应用中,基于如libpcap获取的rawdata(源数据),包解码器301将把源数据逐个逐层(Datalink->IP层->TCP层)解析到对应的数据结构中。下一步将由预处理器(Preprocessor)302处理这些已经解码的数据。
预处理器302用于处理由包解码器301解码后的数据结构。使用累积状态对每个解码的数据包进行预处理,以确定最内层消息的目的和内容。此步骤可能涉及重新排序和重组IP分片和TCP分段,以产生原始的应用协议数据单元(PDU)。根据需要对此类PDU进行分析和正规化以支持进一步处理。功能包括:如HTTP URI的规范化(Normalization)、数据包分包重组(packet defragmentation)、TCP包重组(TCP stream reasembly)等。预处理器302在规则检测引擎304之前工作。
规则检测引擎304加载并解析规则库,规则库被编译为模式组(pattern groups),以便可以对该组中的所有模式进行逐个模式的并行搜索。这里,规则库是指规则检测引擎304如何响应的控制指令的集合,也被称为“签名库”。
规则检测引擎304基于规则中的应用指纹关键字,触发应用识别模块303基于应用指纹库中的应用指纹特征对数据包进行应用识别。这里,应用指纹库可以包括多种预先定义的不同应用的应用指纹特征。
规则检测引擎304继续对经应用识别模块303识别后的数据包进行规则匹配。
日志及告警模块305基于规则检测引擎304的规则匹配结果进行响应,对相应数据包生成日志和/或告警。
输出模块306输出所述告警和/或所述日志。
基于上述程序模块的硬件实现,且为了实现本发明实施例的方法,本发明实施例还提供一种网络安全检测设备(又称为网络安全检测系统)。图4仅仅示出了该网络安全检测设备的示例性结构而非全部结构,根据需要可以实施图4示出的部分结构或全部结构。
如图4所示,本发明实施例提供的网络安全检测设备400包括:至少一个处理器401、存储器402、用户接口403和至少一个网络接口404。网络安全检测设备400中的各个组件通过总线系统405耦合在一起。可以理解,总线系统405用于实现这些组件之间的连接通信。总线系统405除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图4中将各种总线都标为总线系统405。
其中,用户接口403可以包括显示器、键盘、鼠标、轨迹球、点击轮、按键、按钮、触感板或者触摸屏等。
本发明实施例中的存储器402用于存储各种类型的数据以支持网络安全检测设备的操作。这些数据的示例包括:用于在网络安全检测设备上操作的任何计算机程序。
本发明实施例揭示的网络安全检测方法可以应用于处理器401中,或者由处理器401实现。处理器401可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,网络安全检测方法的各步骤可以通过处理器401中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器401可以是通用处理器、数字信号处理器(DSP,Digital SignalProcessor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器401可以实现或者执行本发明实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本发明实施例所公开的方法的步骤,可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于存储介质中,该存储介质位于存储器402,处理器401读取存储器402中的信息,结合其硬件完成本发明实施例提供的网络安全检测方法的步骤。
在示例性实施例中,网络安全检测设备可以被一个或多个应用专用集成电路(ASIC,Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable LogicDevice)、FPGA、通用处理器、控制器、微控制器(MCU,Micro Controller Unit)、微处理器(Microprocessor)、或者其他电子元件实现,用于执行前述方法。
可以理解,存储器402可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-Only Memory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-Only Memory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-Only Memory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random AccessMemory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,SynchronousDynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random Access Memory)、同步连接动态随机存取存储器(SLDRAM,SyncLink Dynamic Random Access Memory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
在示例性实施例中,本发明实施例还提供了一种存储介质,即计算机存储介质,具体可以是计算机可读存储介质,例如包括存储计算机程序的存储器402,上述计算机程序可由网络安全检测设备的处理器401执行,以完成本发明实施例方法所述的步骤。计算机可读存储介质可以是ROM、PROM、EPROM、EEPROM、Flash Memory、磁表面存储器、光盘、或CD-ROM等存储器。
需要说明的是:“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
另外,本发明实施例所记载的技术方案之间,在不冲突的情况下,可以任意组合。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (10)

1.一种网络安全检测方法,其特征在于,包括:
获取待处理数据包;
基于规则中的应用指纹关键字,调用应用识别插件对所述待处理数据包进行应用识别;
基于所述应用识别的结果,对所述待处理数据包进行规则匹配;
基于所述待处理数据包的规则匹配的结果进行响应。
2.根据权利要求1所述的方法,其特征在于,所述基于规则中的应用指纹关键字,调用应用识别插件对所述待处理数据包进行应用识别,包括以下至少之一:
基于应用指纹关键字,调用第一识别插件包括的应用指纹特征对所述待处理数据包进行匹配,确定所述待处理数据包应用识别的结果;
基于应用指纹关键字,调用第二识别插件中端口与应用名称的映射关系对待处理数据包进行匹配,确定所述待处理数据包应用识别的结果。
3.根据权利要求2所述的方法,其特征在于,所述调用第一识别插件包括的应用指纹特征对所述待处理数据包进行匹配,确定所述待处理数据包应用识别的结果,包括以下至少之一:
对所述待处理数据包基于服务器应用对应的应用指纹特征进行服务器应用识别,确定所述待处理数据包在服务器应用中的识别结果;
对所述待处理数据包基于客户端应用对应的应用指纹特征进行客户端应用识别,确定所述待处理数据包在客户端应用中的识别结果;
对所述待处理数据包基于负载应用对应的应用指纹特征进行负载应用识别,确定所述待处理数据包在负载应用中的识别结果。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
若所述待处理数据包在调用第一识别插件确定的应用识别的结果与调用第二识别插件确定的应用识别的结果存在冲突时,将调用第一识别插件确定的应用识别的结果作为最终的应用识别的结果。
5.根据权利要求1所述的方法,其特征在于,所述基于所述应用识别的结果,对所述待处理数据包进行规则匹配,包括:
若所述待处理数据包存在基于所述应用识别确定的目标应用,基于相应目标应用对应的规则进行规则匹配;
若所述待处理数据包不存在基于所述应用识别确定的目标应用,基于通用的规则进行规则匹配。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
加载并解析规则库,得到用于网络安全检测的多条规则,所述多条规则包括:基于应用指纹关键字进行应用识别的规则。
7.根据权利要求1所述的方法,其特征在于,所述响应包括以下至少之一:生成日志、生成告警,所述方法还包括:
输出所述告警和/或所述日志。
8.一种网络安全检测装置,其特征在于,包括:
获取模块,用于获取待处理数据包;
应用识别模块,用于基于规则中的应用指纹关键字,调用应用识别插件对所述待处理数据包进行应用识别;
规则检测模块,用于基于所述应用识别的结果,对所述待处理数据包进行规则匹配;
响应模块,用于基于所述待处理数据包的规则匹配的结果进行响应。
9.一种网络安全检测设备,其特征在于,包括:处理器和用于存储能够在处理器上运行的计算机程序的存储器,其中,
所述处理器,用于运行计算机程序时,执行权利要求1至7任一项所述方法的步骤。
10.一种存储介质,所述存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现权利要求1至7任一项所述方法的步骤。
CN201911337670.1A 2019-12-23 2019-12-23 网络安全检测方法、装置、设备及存储介质 Pending CN111064730A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911337670.1A CN111064730A (zh) 2019-12-23 2019-12-23 网络安全检测方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911337670.1A CN111064730A (zh) 2019-12-23 2019-12-23 网络安全检测方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN111064730A true CN111064730A (zh) 2020-04-24

Family

ID=70300874

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911337670.1A Pending CN111064730A (zh) 2019-12-23 2019-12-23 网络安全检测方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN111064730A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112468516A (zh) * 2020-12-17 2021-03-09 全球能源互联网研究院有限公司 一种安全防御方法、装置、电子设备及存储介质
CN115208682A (zh) * 2022-07-26 2022-10-18 上海欣诺通信技术股份有限公司 一种基于snort的高性能网络攻击特征检测方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103384213A (zh) * 2011-12-31 2013-11-06 华为数字技术(成都)有限公司 一种检测规则优化配置方法及设备
CN103973684A (zh) * 2014-05-07 2014-08-06 北京神州绿盟信息安全科技股份有限公司 规则编译匹配方法及装置
CN107872456A (zh) * 2017-11-09 2018-04-03 深圳市利谱信息技术有限公司 网络入侵防御方法、装置、系统及计算机可读存储介质

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103384213A (zh) * 2011-12-31 2013-11-06 华为数字技术(成都)有限公司 一种检测规则优化配置方法及设备
CN103973684A (zh) * 2014-05-07 2014-08-06 北京神州绿盟信息安全科技股份有限公司 规则编译匹配方法及装置
CN107872456A (zh) * 2017-11-09 2018-04-03 深圳市利谱信息技术有限公司 网络入侵防御方法、装置、系统及计算机可读存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
刘秋菊等: "基于分类与特征匹配的应用层协议识别方法", 《计算机工程与设计》 *
胡建胜等: "基于下一代防火墙安全防护的应用", 《科技传播》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112468516A (zh) * 2020-12-17 2021-03-09 全球能源互联网研究院有限公司 一种安全防御方法、装置、电子设备及存储介质
CN115208682A (zh) * 2022-07-26 2022-10-18 上海欣诺通信技术股份有限公司 一种基于snort的高性能网络攻击特征检测方法及装置
CN115208682B (zh) * 2022-07-26 2023-12-12 上海欣诺通信技术股份有限公司 一种基于snort的高性能网络攻击特征检测方法及装置

Similar Documents

Publication Publication Date Title
Zipperle et al. Provenance-based intrusion detection systems: A survey
US11848913B2 (en) Pattern-based malicious URL detection
Xu et al. A sharper sense of self: Probabilistic reasoning of program behaviors for anomaly detection with context sensitivity
Rabadi et al. Advanced windows methods on malware detection and classification
EP3566166B1 (en) Management of security vulnerabilities
US20230252145A1 (en) Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program
KR102362516B1 (ko) 사이버 위협 정보 처리 장치, 사이버 위협 정보 처리 방법 및 사이버 위협 정보 처리하는 프로그램을 저장하는 저장매체
US20230252136A1 (en) Apparatus for processing cyber threat information, method for processing cyber threat information, and medium for storing a program processing cyber threat information
US20240054210A1 (en) Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program
CN111464526A (zh) 一种网络入侵检测方法、装置、设备及可读存储介质
US20230254340A1 (en) Apparatus for processing cyber threat information, method for processing cyber threat information, and medium for storing a program processing cyber threat information
KR20230103275A (ko) 사이버 보안 위협 정보 처리 장치, 사이버 보안 위협 정보 처리 방법 및 사이버 보안 위협 정보 처리하는 프로그램을 저장하는 저장매체
CN111064730A (zh) 网络安全检测方法、装置、设备及存储介质
Mohammed et al. HAPSSA: Holistic Approach to PDF malware detection using Signal and Statistical Analysis
US20230252144A1 (en) Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program
US20240054215A1 (en) Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program
Mirza et al. A cloud-based energy efficient system for enhancing the detection and prevention of modern malware
US20230252146A1 (en) Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program
US20230048076A1 (en) Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program
KR102411383B1 (ko) 사이버 위협 정보 처리 장치, 사이버 위협 정보 처리 방법 및 사이버 위협 정보 처리하는 프로그램을 저장하는 저장매체
KR102396236B1 (ko) 사이버 위협 정보 처리 장치, 사이버 위협 정보 처리 방법 및 사이버 위협 정보 처리하는 프로그램을 저장하는 저장매체
Fawaz et al. Learning process behavioral baselines for anomaly detection
US20240211595A1 (en) Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program
US20230252143A1 (en) Apparatus for processing cyber threat information, method for processing cyber threat information, and medium for storing a program processing cyber threat information
Gunestas et al. Log analysis using temporal logic and reconstruction approach: web server case

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
RJ01 Rejection of invention patent application after publication

Application publication date: 20200424

RJ01 Rejection of invention patent application after publication