CN103748853B - 用于对数据通信网络中的协议消息进行分类的方法和系统 - Google Patents

用于对数据通信网络中的协议消息进行分类的方法和系统 Download PDF

Info

Publication number
CN103748853B
CN103748853B CN201280037279.XA CN201280037279A CN103748853B CN 103748853 B CN103748853 B CN 103748853B CN 201280037279 A CN201280037279 A CN 201280037279A CN 103748853 B CN103748853 B CN 103748853B
Authority
CN
China
Prior art keywords
model
domain
protocol
protocol domain
extracted
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
Application number
CN201280037279.XA
Other languages
English (en)
Other versions
CN103748853A (zh
Inventor
E·赞姆本
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.)
Security Matters BV
Original Assignee
Security Matters BV
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 Security Matters BV filed Critical Security Matters BV
Publication of CN103748853A publication Critical patent/CN103748853A/zh
Application granted granted Critical
Publication of CN103748853B publication Critical patent/CN103748853B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/18Protocol analysers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • H04L63/0245Filtering by information in the payload
    • 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
    • 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
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供一种用于在数据通信网络上对数据流量中的入侵进行检测的入侵检测方法,包括以下步骤:对数据流量进行语法分析,从该数据流量的协议消息中提取至少一个协议域;对被提取的协议域和用于该协议域的个别模型进行关联,该模型选自模型的集合;对被提取的协议域的内容是否在模型所定义的安全区域之内进行评估;及如果证实被提取的协议域的内容在该安全区域之外,生成入侵检测信号。模型的集合可包括与协议域的集合中的每个协议域对应的模型。

Description

用于对数据通信网络中的协议消息进行分类的方法和系统
技术领域
本发明涉及数据通信网络领域,特别涉及对数据通信网络中的消息进行分类的领域,例如检测这种数据通信网络中的恶意入侵。
背景技术
在许多数据通信网络中都会部署检测系统来检测恶意入侵。这种入侵包括来自攻击者或被感染的计算机的数据,这种数据会影响服务器、计算机或其他设备的运行。
这种入侵检测系统有两种主要的类型:基于特征的和基于异常的入侵检测系统。
基于特征的入侵检测系统(SBS)依赖于模式匹配技术。该系统包含一个特征的数据库,即从过去的攻击所得知的数据的序列。这些特征对测试数据进行匹配。当找到一个匹配时,激发一个警报。当新的攻击被鉴别时需要专家对该特征的数据库进行升级。
不同的是,基于异常的入侵检测系统(ABS)首先建立一个统计模型,该模型在所谓的“学习阶段”描述正常的网络流量。然后,在所谓的“测试阶段”,系统分析数据并分类出任何明显偏离模型的流量或行为作为攻击。基于异常的系统的优势在于能检测零日攻击,即还没有被专家鉴别出的攻击。为了检测大多数攻击,ABS需要对网络流量净荷进行检查。现有的方法基于n元语法分析,其既可以应用于全部也可以应用于部分的(原始)分组净荷。
然而,在一些数据通信网络中恶意数据与合法数据非常相似。这种情况会发生在所谓的SCADA(Supervisory Control and Data Acquisition:数据采集与监控系统)或其他工业控制网络。在SCADA或其他工业控制网络中,协议消息在数据通信网络的应用层上在计算机、服务器和其他设备间进行交换。这些协议消息可包括用于控制机器的指令。带有恶意指令的协议消息(将旋转速度设置为100rpm)会与合法指令(将旋转速度设置为10rpm)非常相似。
当恶意数据与合法数据非常相似时,恶意数据会被基于异常的入侵检测系统分类为正常数据或合法数据,这会危害到网络中的计算机、服务器和其他设备的运行。
发明内容
本发明的目的在于提供一种改进的入侵检测系统和/或方法。
根据本发明的一个方面,提供了一种用于在数据通信网络上对数据流量中的入侵进行检测的入侵检测方法,包括以下步骤:
对数据流量进行语法分析,从该数据流量的协议消息中提取至少一个协议域;
对被提取的协议域和用于该协议域的个别模型进行关联,该模型选自模型的集合;
对被提取的协议域的内容是否在模型所定义的安全区域之内进行评估;及
如果证实被提取的协议域的内容在该安全区域之外,生成入侵检测信号。
对数据流量进行语法分析允许按照发生在数据网络上的数据通信对协议的单独域(称为“协议域”)进行辨别。然后对域(“协议域”)和模型进行关联(如果成功的话)。另外,提供模型的集合。对被提取的协议域选择合适的模型这将在下面进行详细解释。然后使用模型对协议域进行评估,以证实协议域的内容是否在正常、安全、可接受的范围之内。在后者的情况下,执行合适的动作。通过对协议消息进行语法分析,辨别出数据流量单独协议域,并选择出用于评估该特殊的协议域的合适的模型。从而,能进行恰当的评估,不同的协议域能应用不同的模型进行评估,例如对每个协议域应用根据该特别的协议域进行调整后的个别模型,例如应用根据协议域的类型和/或内容进行调整后的模型。本发明的入侵检测方法可以是在计算机上实行的入侵检测方法。语法分析器(即语法分析)可以使用预定义的协议规范。而且,例如如果该协议是未知的,能通过对网络上的数据流量进行监控和导出其协议规范来学习该协议。
在本说明书的上下文中,术语“协议”能理解为是规则的集合,该规则对通过数据网络传输的一些或所有消息的内容进行定义。网络协议可包括协议消息的定义,也被称为协议数据单元(PDU)。协议消息(PDU)可轮流包括一个或多个域。可以有很多种域。一个域可包括另一个PDU或者一个“原子”数据实体(例如数、字符串或二进制封闭式对象)。网络协议能编制成一个树,在树上结点是PDU,树叶是原子数据实体(域),这将在下面进行详细描述。为每个域(或每个相关域)提供一个单独的模型。作为一个例子,假设一个协议消息包括人的个人数据(包括例如姓名、地址及个人设置),然后一个传输该个人数据的协议信息可包括“姓名”、“地址”及“个人设置”这几个域。“姓名”域例如可轮流包括“姓氏”、“名字”、“登录名”等域。“地址”域例如可包括“家庭地址”和“办公地址”的域。“家庭地址”例如可包括“家庭地址路名”、“家庭地址门牌号”、“家庭地址邮政编码”、“家庭地址城市”的域,“办公地址”例如可包括“办公地址路名”、“办公地址门牌号”、“办公地址邮政编码”、“办公地址城市”的域等等。可为每个域建立一个单独的模型。例如可为域上的每个实体提供一个单独的个体模型。在一个实施方式中,对域的子集可应用相同的模型,例如对“办公地址城市”和“家庭地址城市”可应用相同的模型。
术语“数据流量”可理解为包括通过网络进行通信的任何数据,例如数据流、数据包等。术语“数据网络”可理解为包括允许(例如数字)数据的传输的任何数据通信证实。该网络可包括或连接于一个公共网络,例如因特网,和/或可包括一个只允许认证用户或认证设备访问的专用网络或虚拟专用网络。能通过有线连接、玻璃纤维连接、无线连接和/或其他任何连接进行传输。术语“模型”可理解为包括应用于协议域以评估该协议域的规则或规则的集合。该模型可描述正常、合法或非入侵的协议消息。可理解为在学习阶段使用越多的协议消息,该模型就能更好地描述正常、合法或非入侵的协议消息。
术语“入侵”可理解为包括不希望有的可能对接收该数据的计算机有害、可能对连接到数据网络上的计算机系统上运行的应用程序有害、或可能对连接到数据网络上的装置、设施、仪器等的运转有害的任何数据。
在一个实施方式中,模型的集合包括用于协议域的集合中的每个协议域的个别模型。从而,关于每个协议域可应用根据该协议域调整之后的模型得到更准确的结果。
在一个实施方式中,模型的集合包括用于一个协议域的两个模型,基于另一个域值为一个协议域选择该两个模型中特别的一个模型,以便有可能进一步增加模型的精度。
类似的,在一个实施方式中可执行对协议域的时间序列分析,在该实施方式中模型的集合包括用于一个协议域的至少两个模型,两个模型中的第一个模型与观测数据流量的第一时间间隔进行关联,第二个模型与观测数据流量的第二时间间隔进行关联,第二时间间隔例如不与第一时间间隔重叠。
在一个实施方式中,在学习阶段确定用于域的模型,该学习阶段包括以下步骤:
对数据流量进行语法分析,提取至少一个应用于该数据流量的协议中的协议域;
对被提取的协议域和用于该协议域的模型进行关联,该模型选自模型的集合;及
使用被提取的协议域的内容对用于被提取的协议域的模型进行升级。
于是,在学习阶段中能观测到数据流量,而且被提取的协议域的内容可应用于对与该协议域关联的对应模型进行升级。如果被提取的协议域无法与模型中的任何一个进行关联,能创建一个用于被提取的协议域的新的模型并添加到模型的集合中去。
因此,可区分为两个阶段:学习阶段,在该学习阶段中建立协议消息的模型。这些学习阶段中的协议消息可基于通信协议被构建出来或从数据通信网络的数据流量中被检索出来。
由于协议消息可以用其结构和协议域值来描述,模型可以与学习阶段中的协议域及其值有联系。学习阶段中不同的协议域可以有不同的数据类型,例如它们的值可以是数(例如整数、浮点数等等)、字符串、布尔值或二进制值。这可以由通信协议来定义。可以按照至少一个协议域的数据类型来建立模型。
将被确定的协议域和/或被确定的该协议域值与模型进行比较且基于比较进行分类。基于该比较协议消息被分类为异常,即在模型定义的安全区域之外(于是作为可能的危险)。
在学习阶段,可以从网络上的数据流量获得应用于对模型进行学习的协议消息。作为另一种选择,或者除此之外,可应用模拟数据。在学习阶段,通过统计方法可辨别可能入侵的协议消息,即少用的协议消息或有不正常内容的协议消息,能在使用用于学习模型的协议消息之前被移除。除此之外,或者作为替代,操作者可将某个协议消息鉴别为入侵,或者可在学习之前将该协议消息移除,或者相应地修改模型。
作为学习(训练)模型的另一个选择,可以应用不同于上述的学习阶段。例如,可通过对协议和应用程序进行检查,从其创建例如被预测的协议消息、它们的域和/或域值的集合,从其建立模型或模型的集合来导出该模型。而且,可以对从检查建立这种模型和模型的学习进行组合:例如首先在学习阶段对模型进行学习,然后基于已知行为及协议消息、它们的域和/或域值的间接产生和/或内容的知识对已学习的模型进行改动。
在一个实施方式中,当进行语法分析无法证实域遵循协议时进一步地生成入侵检测信号,以至于如果检测到不符合协议的域(例如恶意的协议消息),也执行一个动作。
在一个实施方式中,当被提取的域无法与模型和集合中的任何模型关联时进一步地生成入侵检测信号,以至于如果被提取的域可能遵循协议但无法提供合适的模型,也执行一个动作。当检索出一个遵循协议但通常不被应用的协议域时,例如在控制应用程序中常常只适用可能的协议域的子集来允许例如激发一个警报。
该方法可应用于各种各样的协议层。例如,该协议可以是应用层协议、会话层协议、传输层协议、或甚至网络协议堆栈中较低的级别中的至少一个协议。数据通信网络中的应用层可由国际标准化组织所确定的开放式通信系统互联参考模型(OSI模型)来定义。在应用层,在计算机或服务器上运行的软件能通过发送协议消息相互通信。该协议消息可以是SCADA或其他工业控制网络协议消息、Windows、办公自动化网络协议消息、HTTP协议消息等等。
在软件之间可按照某个通信协议进行通信,在该协议中定义(部分)协议消息的结构和可能的值。可进一步地由协议消息中的协议域来描述协议消息的结构。软件可能无法处理不依照通信协议的协议消息。
在一个实施方式中,响应于对入侵检测信号进行生成,该方法至少进一步包括以下步骤之一:
对协议域或包含协议域的数据包进行移除;
激发且输出一个入侵警报消息。
可应用任何其他入侵检测动作,像例如对协议域或包含协议域的数据包进行隔离等等。
在一个实施方式中,用于协议域的模型包括以下两者中的至少一个:
可接受的协议域值的集合;
可接受的协议域值的范围的定义。
如果协议域包括一个数值,可提供一个简单的模型从而允许在低数据处理负载下对协议域进行测试。
在一个实施方式中,用于协议域的模型包括:
可接受的字母、数字、符号、及脚本的定义。
如果协议域包括一个字符或字符串,可提供一个简单的模型从而允许在低数据处理负载下对协议域进行测试。
在一个实施方式中,用于协议域的模型包括预定义入侵特征的集合,以至于能考虑到关于已知的攻击的知识。如上所述的模型(包括例如可接受的协议域值的集合,可接受的协议域值的范围的定义,可接受的字母、数字、符号、及脚本的定义)和该预定义入侵特征的集合的组合可以是非常有效的,关于每个特别的域可应用其正常内容与用于该域的一个以上的特别的入侵特征进行组合的模型。
在一个实施方式中,协议包括原始协议域和复合协议域,复合协议域轮流包括至少一个原始协议域,其中在模型的集合中为每个原始协议域提供个别模型。于是,由于复合的协议域(即本身包括协议域的协议域,例如包括“路名”、“门牌号”、“邮政编码”、“城市”的“地址”)能在它们的基本(原始)协议域分割,以允许为每个原始协议域应用一个合适的模型,可提供有效的入侵检测。
由于用于学习阶段中的至少一个协议域和/或学习阶段中的至少一个协议域的值的模型可依照学习阶段中的至少一个协议域的数据类型来建立,相比不考虑协议域的数据类型的模型,该模型能更准确地描述正常、合法、或非入侵的协议消息。
有可能将模型优化为描述带有数值数据类型的协议域会导致在描述带有字符串或二进制数据类型的协议域时不够准确(或不适用)。同样地,将模型优化为描述带有字符串数据类型的协议域会导致在描述带有数值或二进制数据类型的协议域时不够准确。于是,在建立模型时考虑协议域的数据类型会提高模型的准确度。
在一个实施方式中,提供多个模型类型,基于被提取的协议域的特性在学习阶段从多个模型类型中对用于被提取的协议域的模型类型进行选择,基于被选择的模型类型建立用于被提取的协议域的模型。
为了得到用于特别的协议域的模型,可执行一些步骤。如上所述,可应用多个不同的模型类型。首先,从可用的模型类型的集合中为特别的协议域选择某个模型类型。一旦为某个协议域确定模型类型,可为该协议域来建立模型。如在说明书中其他部分所述的那样,例如可以使用对学习阶段中的数据流量进行分析来建立模型。协议域的特性可以是协议域自身中的数据的任何合适的特性,其在协议的上下文中的意思等等。以下将描述一些例子。通过采用不同的模型类型,不但能应用针对不同域值的类型的建模技术,而且能以更限制于或更不限制于按照协议中或应用协议的上下文中的协议域的意思、角色和重要性的方式对值的安全区域进行改动。一般而言,不同的模型类型可应用不同类型的判断标准以证实特殊的协议域值是否是入侵性的。例如不同类型的模型可应用以下任意一个:值的范围、值的数值分布、值的集合、操作符的集合、文本值的集合、状态描述的集合、文本字符的集合或范围、文本编码的集合/范围等等。术语“模型类型”因此可理解为允许在某个值的类型上进行的操作的集合、以及用于为某个类型的值定义安全区域的启发式和用于确定某个值是否在安全区域之内的判断标准。
可在任何时间执行模型类型的选择:在学习阶段也可以,在入侵监控和检测时也可以。在学习阶段,可选择模型类型来作为建立用于特殊的协议域模型的处理的一部分。在检测时,如果用于特殊的协议域的模型不提供一致的结果,可选择不同的模型类型。
可使用协议域值的数据类型和/或进行了语法分析的协议域的语义执行对模型类型的选择。在一个实施方式中,协议域的特性包括协议域的数据类型,该方法包括以下步骤:
对被提取的协议域的数据类型进行确定;以及
使用所确定的数据类型对模型类型进行选择。
例如可从协议规范提取协议域值的数据类型(例如“数”、“字符串”、“数组”、“集合”等等)。作为另一种选择,例如可从所观察的网络流量推导出协议域值的数据类型。在一个实施方式中,从正则表达式的含义推导出域值。例如,正则表达式Λ[0-9]+$可用于鉴别数值整数域值。通过选择一个恰当的模型类型来匹配协议域值的数据类型,能得到一个能导致更可靠的检测结果的模型。
对模型类型的选择可进一步基于进行了语法分析的协议域的语义,或以其代替基于协议域值的数据类型。因此,在一个实施方式中,协议域的特性包括协议域的语义,该方法包括以下步骤:
对被提取的协议域的语义进行确定;以及
使用所确定的语义对模型类型进行选择。
语义可分配于进行了语法分析的协议域。对语义进行分配可通过多种方式来执行:在学习阶段中手动执行、从观察的网络数据进行推导、从协议规范提取信息等等。例如,如果对于某个协议域值类型存在多个可用的模型类型时,可应用语义来选择一个最恰当的模型类型。例如,对于一个数值类型的协议域值,可利用包含这种协议域值的范围的模型类型、包含协议域值的集合的模型类型等等。考虑到语义的话,优选为既考虑协议域值也考虑语义,可允许为该特殊的协议域分配最合适的恰当的模型类型。
使用语义的一个例子可以是基于域的重要性对数值范围有多“严格”进行确定。换句话说,如果协议域的语义提示了该域由于安全的原因而很重要,与相反的情况下应用一个更宽松的范围(例如将在学习阶段中观察到的最大值翻倍、最小值减半)相比,应用一个更严格的数值范围。
通过依照协议域值的类型和/或协议语义以将一个模型类型分配于一个协议域,可以考虑协议域中的数据的内容对模型类型进行分配,于是允许根据协议域的内容调整模型。例如,如果域的类型是数值整数且语义是该域包含另一个域的长度,则可选择数值分布类型的模型。另一方面,如果域的类型是数值整数且域的语义是消息类型,则可选择数值集合类型的模型。作为第三个例子,如果域的类型是数值整数且域的语义是发动机转速,则可应用严格数值范围类型的模型。
在一个实施方式中,模型的集合包括用于操作符协议域的模型和用于实参协议域的模型,对操作符协议域和实参协议域进行关联和评估。协议可包括包含操作符(例如指令、调用等等)的协议域和包含应用于操作符的操作数(例如实参)的协议域。要注意的是,依照本发明的一个实施方式,个别模型可与包括操作符的协议域和包括实参的协议域相关联。从而,一方面,不仅是实参的入侵值,入侵操作符也能被识别。而且,当一个操作符通常跟随了包含某个预定类型的数据的一个或多个实参时,考虑操作符的话允许分配一个最恰当的模型类型,从而允许去提高入侵检测准确率。
此外,协议消息在发送主机的要求下可用作在接收主机上执行的操作的规范。于是,协议消息可包括操作符域(即要求哪种操作的规范)、实参域(即操作该如何执行的规范)和编组域(即不直接和要求的操作有联系的域,但包含主机所需的用于正确接收和解析消息或更一般的,处理网络通信的形参)。“编组”可以理解为将对象的存储规范变为适合存储或传输的数据格式的处理,通常被用于当数据必须在计算机程序的不同部分之间移动或从一个程序移动到另一个程序的时候。
例如,一个HTTP请求包含一个方法域、一个URL域及一些头域,方法域(例如查(GET)、改(POST)、增(PUT)等等)指定操作符,URL域包含用于方法的实参(例如/index.php?id=3),头域(例如,内容长度:100)包含与操作本身没有联系但被主机用于通信的信息(例如,内容长度:100指定了请求消息体的长度是100字节)。
作为另一个例子,一个Modbus/TCP请求消息包含一个功能代码域、数量可变的数据记录及一些其他域,功能代码域鉴别在接收PLC/RTU设备上执行哪个操作,数据记录指定想要的操作的实参,其他域(例如记录计数域、数据长度域等等)与操作本身没有直接联系但接收主机需要用其来理解如何对消息进行语法分析(例如,发送多少记录)。
攻击或入侵企图会通过将恶意数据注入到这些不同的域中的每一个来进行。类似地,这种攻击或入侵企图会因为不同的域的值与正常时的值不同而被检测到。对操作符域和编组域进行检查能提高对攻击或入侵企图进行检测的准确率。于是,在一个实施方式中,模型的集合进一步包括用于编组协议域的模型,对该编组协议域的模型进一步执行关联和评估。
例如,缓冲区溢出攻击通过向字符串域注入比接收主机所分配的缓冲区更多的字符来进行。这种攻击可以因为字符串域包含不同寻常的字符值而被检测。另一方面,通过只使用完全有效的文本字符作为恶意净荷能成功地进行攻击。然后相同的攻击可以因为指定比正常情况下更长的字符串长度的另一个域而被检测,由于准许的字符串长度的最大允许值将会是接收主机所分配的缓冲区的大小,因此必将如此。
另外,可以为操作符域、实参域及编组域使用不同的特别的模型类型以提高检测的准确性或降低所生成的无关警报的数量。对于不同的操作符域可使用(相同或不同模型类型的)不同的模型。对于不同的实参域可使用(相同或不同模型类型的)不同的模型。对于不同的编组域可使用(相同或不同模型类型的)不同的模型。可基于例如如上所述的数据类型和语义来对模型类型进行选择。
应当注意的是,本发明的入侵检测系统和方法能应用于任何类型的数据流量,例如文本数据流量(即文本协议)或二进制数据流量(即二进制协议)。一般而言,文本协议规范不会提供大部分它们的域值中的类型规范。例如,HTTP协议规范不将类型与头值或形参值关联,必须作为文本字符串来进行语法分析。在这种情况下,需要通过对流量进行检查来推导出域的类型。另一方面,在二进制协议中不会出现这种行为,规范需要包括所有协议域的类型,以便允许进行适当的语法分析。由于这个原因,将现有技术应用于二进制协议甚至比应用于文本协议更精确,这是因为对于二进制协议会失去推导域值类型的不确定性。特别是考虑到被语法分析的协议域的数据类型和语义,二进制数据流将给予一个含义,从这种意义上来说,基于数据类型和/或语义对每个协议域语法分析且选择一个合适的模型类型,允许考虑二进制数据的内容。在二进制协议中,术语“协议域的数据类型”可理解为协议域中的(二进制)数据代表哪个数据:例如二进制数据代表另一个数据类型,比如数、字符串等等。
一般而言,协议消息可包括原始协议域和复合协议域。复合协议域包括两个以上的子协议域,其中每个子协议域可以是一个原始协议域或一个复合协议域。用于复合协议域的模型可包括一个在学习阶段中观察到的协议域的实例的计数器。如果观察到域的次数少于给定的次数(阈值),在检测阶段中观察到复合协议域可导致生成入侵检测信号。依照复合协议域的语义,就安全而言其重要性可变。因此,可以例如依照域的考虑到安全的重要性用语义来指定不同的模型类型或模型的不同敏感度。例如,如果是与安全没有联系的复合域的话,可改变被观察的实例的域值以限制生成不相关的入侵检测信号的数量,由此提高了可用性。进一步地,复合域的语义可扩展到其子域,以允许更准确地对模型类型和模型设置进行选择。例如,包含于与安全非常相关的复合域内的数值类型的基础域可与数值集合类型的模型关联,能定义一个比数值范围类型的模型更严格的值的安全区域,由此提高了入侵检测的准确率。
根据本发明的另一方面,提供一种用于在数据通信网络上对数据流量中的入侵进行检测的入侵检测系统,该系统包括:
语法分析器,该语法分析器对数据流量进行语法分析,从该数据流量的协议消息中提取至少一个协议域;
引擎,该引擎对被提取的协议域和用于该协议域的个别模型进行关联,该模型选自模型的集合;
模型处理机,该模型处理机对被提取的协议域的内容是否在模型所定义的安全区域之内进行评估;及
执行器,如果证实被提取的协议域的内容在该安全区域之外,该执行器生成入侵检测信号。
根据本发明的系统,能获得和根据本发明的方法所相同或类似的效果。而且,参照本发明的方法可提供相同或类似的实施方式来获得相同或类似的效果。语法分析器、引擎、模型处理机、及执行器可通过由数据处理设备执行合适的软件指令来实现。可以由同一个数据处理设备执行同一个软件程序来实现,也可以由两个以上的不同的数据处理设备来执行。例如,可以在数据流量经过的位置本地执行语法分析器,同时引擎、模型处理机、及执行器可远程地位于例如安全的位置。而且,可监控来自不同站点的数据,由此例如在每个站点提供一个语法分析器,来自每个语法分析器的输出数据发送到一个单独的引擎、模型处理机、及执行器。
需要注意的是上述的方法和系统并非只能应用于入侵检测。作为替代,或除此之外,上述的方法和系统还可应用于监控的目的。例如,可监控实体(例如工厂、数据中心等等)的数据网络上的数据流量。对于每个或某个协议域,模型可定义为代表一个安全或想要的操作状态。上述的方法和系统可应用于检测上述安全的操作状态之外的状态。作为另一种选择,替代提前定义一个安全或想要的操作状态,本说明书中上述的系统和/或方法可在学习阶段中应用,由此在学习阶段中得到的模型能得到所监控的操作的规范。所传输的数据可包括来自可被导出的操作状态的信息,这种数据应用于学习用于适当的协议域的模型。例如,在工厂的数据网络中,可传输控制信息,该控制信息与发动机的转速、反应堆的温度、液压、及出错消息、过程调用等等有关。这种数据或者可用于与定义了一个想要的或安全的操作状态的预定的模型进行比较,或者可用于学习模型,由此从所学习的模型导出状态。监控可包括通过观察对系统/网络管理员有意义的某个协议域(或协议域的组合)的值对工厂或计算机网络的“健康”状态进行检查,且定义了计算机网络或工业处理中感兴趣的事件。因此,虽然在本说明书中应用了术语“入侵检测”,但其也可以理解为指代“监控”。
附图说明
参照下述并非对实施方式进行限制的说明和说明书附图,只通过实施例对本发明的效果和特征进行进一步的说明。
图1示意性地示出了包括了依照本发明的一个实施方式的入侵检测系统的数据通信网络的一个实施例。
图2示意性地示出了依照本发明的一个实施方式的入侵检测系统的概览图。
图3示意性地示出了依照本发明的一个实施方式的方法中的学习阶段的概览图。
图4示意性地示出了依照本发明的一个实施方式的方法中的入侵检测阶段的概览图。
图5示意性地示出了依照本发明的一个实施方式的入侵检测系统和方法的框图。
具体实施方式
在图1中示出了带有用于依照本发明的一个实施方式对协议消息进行分类的入侵检测系统的数据通信网络的一个实施例的概览图。在该网络中个人计算机(或工作站)14和15连接于服务器13。该网络可通过防火墙17与互联网16连接。
在数据通信网络中,当互联网16或个人计算机14被恶意软件感染时会产生入侵或攻击。
数据通信网络可以是SCADA网络或其他工业控制网络。在这种网络中,可以通过在远程终端单元(RTU)11或可编程逻辑控制器(PLC)上运行的软件来控制机械装置12。在服务器13上运行的软件可向在RTU11上运行的软件发送协议消息。在RTU11上的软件可向也能运行软件的机械装置发送协议消息。
通过在个人计算机14或工作站15上运行的软件和在服务器13上运行的软件之间交换协议消息,用户可通过在个人计算机14或工作站15上运行的软件与服务器13通信。
入侵检测系统10可以如图1所示,位于RTU11和网络的其余部分之间,也可以位于RTU11和机械装置12之间(未图示)。入侵检测系统10可从数据通信网络检索协议消息,可在个人计算机14或工作站15上运行的软件和在服务器13上运行的软件之间、或在服务器13上运行的软件和在RTU11上运行的软件之间、或在RTU11上运行的软件和在机械装置12的数据处理设备上运行的软件之间交换该协议消息。
通信协议可定义为数据协议消息格式的正式规范和用于在计算机系统(上运行的软件)内或之间交换那些消息的规则。通信协议可包括通信的句法、语义、同步的规范。数据通信中应用层上的协议消息可包含一个以上的域,域可用它们的数据类型来表征。举例来说,一个带有数值和字符串值的域可代表消息的整个长度。
一个带有更多关于协议消息的信息且对正常、合法、或非入侵的协议消息进行描述的模型可包括更多关于在数据通信网络中交换的每个协议消息的每个协议域的正常或合法的值的信息。然后该模型可(实时地)用于对来自数据通信网络中当前数据流量的协议消息进行分类以找到异常,即该模型所描述的那些偏离了数据通信网络的正常行为的行为。
图2示意性地示出了依照本发明的一个实施方式的入侵检测系统10的一个实施方式的概览图。入侵检测系统10包括网络协议语法分析器21,其配置为用于从数据通信网络的(例如)应用层中的协议消息中检索至少一个协议域。在学习阶段,可通过输入端25从网络得到协议消息。除了在入侵检测系统的常规操作之外也可以在可选的学习阶段使用网络协议语法分析器21。关于被提取的协议消息的信息可传输到引擎23。
入侵检测系统还包括引擎23、模型的集合26、及模型处理机24。引擎23配置为对被提取的协议域和某个模型类型的模型进行关联,基于协议域的数据类型和/或语义来选择该模型。此外,引擎包含或访问模型的集合26。引擎对被提取的协议域和专用于该协议域的模型进行关联,例如专用于域的数据类型和/或语义。此外,模型的集合26包括不同的模型,每个模型专用于一个(或多个)协议域。在学习阶段中,如果不存在可用于被提取的协议域的模型,该引擎可创建一个用于被提取的协议域的模型且将其添加到模型的集合中去。关于被提取的协议域的信息可传输到处理机24。
然后处理机24对被提取的协议域是否符合该模型进行评估,从而对被提取的协议域的内容是否可被认为是入侵进行评估。在学习阶段中,可使用被提取的协议域的内容对该模型进行升级。该处理机可通过输出端27输出消息。
该入侵检测系统可进一步包括执行器22,如果协议域(的值)被识别为入侵,即在关联的模型所定义的安全区域之外,执行器22生成一个入侵检测信号。响应于入侵检测信号的生成,执行入侵检测动作,例如包括激发一个警报、对数据包或协议域进行过滤(例如因此移除数据包或协议域)。如果语法分析器无法识别协议域(表明数据包不符合协议)和/或如果在入侵检测操作时模型处理机无法将被提取的协议域与集合中的模型进行关联(表明数据包不包括被正常传输的协议域),可以也生成入侵检测信号。
对于每个协议域使用一个特别的模型,优选为对每个不同的协议域使用不同的模型,从而对于每个协议域能执行最优化的评估,专用于该协议域的模型可用于对该协议域进行评估。
在一个实施方式中,使用至少两种模型类型来建立模型,其中至少两种模型类型中的第一模型类型为带有第一数据类型的协议域优化(或只用于该协议域),至少两种模型类型中的第二模型类型为带有第二数据类型的协议域优化。可以是第一模型类型为带有数值数据类型、字符串数据类型、或二进制数据类型中的一个数据类型的协议域优化,第二模型类型为带有数值数据类型、字符串数据类型、或二进制数据类型中的另一个数据类型的协议域优化。
例如,对于带有数值数据类型的协议域A1的值,建立模型M-I-A1以描述数值。对于带有数值数据类型的协议域A2的值,同样也建立模型M-I-A2以描述数值。对于带有字符串数据类型的协议域A3的值,建立模型M-S-A3以优化或调整为描述字符串值。用于不同的协议域的模型有着相同的数据类型,例如用具有不同内容的相同的模型结构(例如不同的允许范围,不同的允许值的集合等等)来建立模型M-I-A1和M-I-A2,以表达协议域A1和A2之间的差异。
可以理解的是,与一个单独的对描述协议消息的所有值(包括数值和字符串值)进行优化的模型相比,一个模型类型用于描述数值的模型和一个模型类型用于描述字符串值的模型能更好地或更准确地描述在其协议域内既包括数值也包括字符串值的协议消息的值。
入侵检测系统10可配置为用于在学习阶段建立模型。参照图3和4对依照本发明的实施方式的入侵检测系统10的工作和方法进行进一步说明。图3示意性地示出了学习阶段,图4示意性地示出了入侵检测阶段。
在图3中示意性地示出了学习阶段中的步骤:步骤a1,对数据流量进行语法分析,提取至少一个应用于该数据流量的协议中的协议域;步骤a2,对被提取的协议域和用于该协议域的模型进行关联,该模型选自模型的集合;步骤a3,如果模型的集合中存在的模型都无法进行关联,为被提取的协议域创建一个新模型且将该新模型添加到模型的集合中;步骤a4,使用被提取的协议域的内容对用于被提取的协议域的模型进行升级。
一般而言,协议消息可包括原始协议域和复合协议域。复合协议域包括两个以上的子协议域,每个子协议域可以是一个原始协议域或一个复合协议域。一个原始协议域不能被划分或分割为更多的协议域。这样一来协议消息可被称为包括一个协议域的树状结构。例如,在协议消息中复合协议域“msg_body”包括原始协议域“msg_len”和复合协议域“msg_data”。复合协议域“msg_data”可包括原始协议域“msg_typeA”和“msg_typeB”。在本说明书中术语“协议域”可指代这种树状结构中任意阶的任意原始协议域。
可使用不同的模型类型。例如,协议域的模型类型可以例如是如下之一:数值模型类型、字符串模型类型、或二进制模型类型。如果发现被提取的协议域包括数值,可为该协议域应用数值模型类型。如果发现被提取的协议域包括字符串值,可为该协议域应用字符串值模型类型。也有可能(例如在文本协议中)在学习阶段中,网络协议语法分析器无法证实协议域的数据类型是数值类型或字符串类型,作为一个更泛用的模型类型可应用二进制数据类型模型。
如上所述,模型的集合可包括用于每个协议域的个别模型。与用于带有字符串数据类型的协议域的模型不同地建立用于带有数值数据类型的协议域的模型(即可以是不同的类型或具有不同的模型结构)。由于模型可为每种数据类型进行优化,相比不考虑协议域的数据类型的模型,这种模型可更准确地描述正常、合法、或非入侵的协议消息。
以下将说明用于不同种类的数据类型的不同种类的模型类型的例子。对于数值数据类型将应用两种模型类型,第一个用于代表长度的协议域,第二个用于代表枚举的协议域。
如果协议域代表枚举(例如值的集合),模型可包括带有在学习阶段中检索的协议域的所有值的集合S。在以空集开始之后,在学习阶段中每个用于识别协议域的值可添加到集合中。在入侵检测阶段,当对应的所确定的协议域的值例如不是集合S的一部分时,可将协议消息分类为异常。
如果协议域代表长度,在学习阶段中模型可建立为协议域值的分布的近似。在学习阶段中,基于确定为该协议域的内容的所有值的样本平均数和样本方差,可计算分布的近似的平均数μ和方差σ2。用分布的近似的平均数μ和方差σ2可为所有值计算概率。在入侵检测阶段中,当所确定的协议域的值的概率小于给定的阈值时,带有该值的协议消息可分类为异常。
用于布尔类型的协议域的模型可用于例如对一些样本平均之后的布尔值进行监控且将平均值与预定的阈值进行比较。这种模型的一个例子如下所述:在学习阶段,域值为“真”(true)时计算概率Pt,域值为“假”(false)时计算概率Pf(1-Pt)。2-在入侵检测中考虑一个域值的n个样本的序列,然后计算从该值的序列观察到的二项概率、给定的Pt和Pf。然后将概率与某个阈值t进行比较,如果p_sample<t的话就激发一个警报。例如,假设在学习阶段中我们观察到了相等数量的“真”值和“假”值,那么Pt~1/2且Pf~1/2。我们为5个值的序列设置概率阈值0.1。现在,考虑这种情况:在入侵检测阶段我们观察到序列[假,假,假,假,假]。二项概率p_sample=P(“真”=0)=0.03125<0.1。在这种情况下我们激发一个警报。用于字符串的可处理ASCII和Unicode字符串的模型类型的例子如下所述。首先,描述用于ASCII字符串的模型类型。
用于ASCII字符串的模型类型包括两个布尔值和一个列表。当我们看到字母(letter)时,第一布尔值(letters)设置为“真”,当我们看到数字(digit)时,第二布尔值(digits)设置为“真”,集合(symbols)保持了我们看到的所有符号(symbol)的记录。给定一个字符串域s,函数f(s)定义为该字符串是否包含字母、数字以及包含哪种符号。例如对于字符串“username?#!”我们就有:
这样的结果。
在学习阶段,给定字符串s,以如下方法:
对模型M进行升级。
一个接一个地对字符串字符进行估算。引擎为每个字符验证类型,如果字符是字母或数字,引擎相应地通过将旗标设置为“真”对模型进行升级。如果当前字符是符号,它会被添加到当前的字符的集合中。如果是已经存在的符号,不会被添加两次。
在入侵检测阶段,给定字符串s,如果:
就激发一个警报。
再一次一个接一个地对字符串字符进行估算。验证处理简单明了。如果当前字符是一个字母(或一个数字),引擎进行如下验证:对于给定的域之前已观察到字母(或数字)字符。如果验证失败,激发一个警报。如果该字符是一个符号,引擎进行如下验证:之前已观察到给定的符号。如果验证失败,激发一个警报。
一开始,如下:
定义模型M。
另一个可用于Unicode字符串的用于字符串的模型类型的例子如下所述。对于Unicode字符串,建模和检测技术都与ASCII字符串的建模相类似。非ASCII的Unicode字符作为ASCII字母来对待,即如果字符串包含Unicode字符,布尔值“letters”设置为“真”。此外,对在学习阶段中看到的Unicode字符集(例如Latin(拉丁字母字符集)、Cyrillic(西里尔字母字符集)、Arabic(阿拉伯字母字符集))进行存储。通过该附加信息来检测例如在字符串中是否出现奇怪的Unicode字符(可能属于与学习阶段中看到的所不同的字符集)。
更详细地,给定一个Unicode字符串域s,我们定义一个函数f’(s)为该字符串是否包含字母、数字以及包含哪种符号、属于哪个Unicode字符集(script)。例如对于字符串“mu3sòafà?#!”我们就有:
这样的结果。
对于Unicode字符串,模型M初始化且通过执行与ASCII字符串相同或相类似的操作且处理附加的类似于域“symbols”的域“scripts”来升级。
以下进一步提供一些用于二进制协议域的模型的例子。
对于二进制数据类型,模型可应用于已知的基于对净荷进行分析的基于异常的入侵检测系统。
二进制模型的一个例子是基于一元语法分析的。在n个连续字节的序列中则是n元语法分析。
给定一个长度为l字节的二进制域b,我们首先计算包含了每个字节的相对频率的向量f。换句话说,给定字节值v,对应于v的f中的字节用以下方式:
来计算。
在学习阶段中,相对频率的向量应用于为每个字节值计算平均值和标准差。因此,给定一个n个二进制域的序列b1..bn,及与它们关联的相对字节频率的向量(f1..fn),计算出分别包含每个字节值(从0到255)的平均值和标准差的两个向量。该例子中的这两个向量形成二进制模型。
在测试阶段,给定一个二进制域值s,首先计算关联的相对频率的向量fs。然后,应用合适的函数F(例如归一化欧氏距离)来确定fs和在学习基地端中建立的模型之间的距离。如果结果距离超过预定的阈值,可激发一个警报。
通过将学习值的集合b1..bn分割为子集来得到如上所述的模型的更准确的版本。可应用集群算法来将学习集合分割为子集,例如将自组织映射(SOM)应用于输入值(b1..bn)。然后为每个子集建立一个分离的模型(即数组对μ,σ)。
在入侵检测阶段,在二进制域值(s)上运行集群算法。可将如上所述的测试应用于与结果集群关联的模型。
二进制模型的第三个例子是所谓的网络模拟器。网络模拟器是一种算法,能确定在字节的集合中是否包含危险的可执行指令。给定一个字节的序列,算法首先将存在的字节值翻译为相对汇编指令(反汇编)。之后,尝试寻找可被识别为危险或可疑的指令序列(例如一个很长序列的NOP(空操作)指令,通常会在已知的攻击的恶意外壳代码中被发现)。如果找到这种序列,激发一个警报。注意这种二进制模型不需要训练阶段。
如果二进制域包含所谓的二进制大型对象(BLOB),在BLOB中依照在网络协议规范中没有规定过的结构来组织数据,可将与本说明书所记载的相同的方式应用于将BLOB进一步划分为其构成域,直到提取和处理基础域(例如数值域、字符串域、布尔域等等)。例如,二进制协议域可包含一张GIF或JPEG图像,存在为其的规范,但是这种规范不是网络协议规范本身的一部分。在这种情况下,GIF或JPEG图像的规范可用于进一步将域值划分为其基础构成域。然后可以依照对象的构成域对模型进行选择和建立。当二进制域包含主机通信之一的整个存储区域时(例如PLC的存储映射作为Modbus协议的部分进行交换)也会发生这种情况。该存储区域的结构可定义在其他文件(例如PLC供应规范)中,或者从观察足够的数据样本来推导出。这种信息可用于进一步将存储区域划分为然后可依照本说明书中所述的技术进行处理的其基础域。
此外,在国际联合会议走向有意义的互联网系统(OTM)上Bolzoni,D.和Etalle,S.(2008)所著的“通过推导出肯定的特征来推进网络入侵检测系统”中的模型可应用于字符串数据类型。基于对净荷的分析可从已知的基于异常的入侵检测系统中为二进制数据类型应用一个子模型。在Ke Wang和Salvatore J.Stolfo.所著的“基于异常净荷的网络入侵检测”(入侵检测最新进展国际会议(RAID),第203-222页,2004)中可以找到一个例子。在该文献中作者提出了一个叫PAYL的系统,利用n元语法分析来检测异常。在一个n个连续字节的序列中有n元,在学习阶段中对1元(1个字节的序列)的相对频率和标准差进行分析且存储于检测模型。然后,在入侵检测阶段,选择(使用净荷长度值)且使用合适的模型来比较进入流量。
在Damiano Bolzoni,Emmanuele Zambon,Sandro Etalle和Pieter H.Hartel所著的“海神(POSEIDON):两阶段的基于异常的网络”(国际信息保障研讨会(IWIA),第144-156页,IEEE计算机协会,2006)中可找到另一个例子。在该文献中作者在PAYL的基础上通过放弃以净荷长度来对检测模型进行选择(和建立)而是以使用神经网络对净荷数据进行预处理后将输出用于对合适的检测模型进行选择来替代,建立了一个改进的系统。
第26届计算机安全应用年会(2010年12月,美国德克萨斯州奥斯汀)的会议记录中由Michalis Polychronakis,Kostas G.Anagnostakis和Evangelos P.Markatos所著的“使用运行启发对综合外壳代码进行检测”中可进一步找到另一个例子。在该文献中作者提出了一种“网络模拟器”。该软件构件实行了启发式的方法且通过软件来模拟物理CPU。网络模拟器可测试输入数据是否包含可执行(并且有害)代码。在一个实施方式中,语法分析处理可包括以下步骤:
(1)从数据通信网络对数据包进行收集;
(2)对IP数据包进行重组;
(3)对TCP信息段进行再汇编;
(4)检索应用数据;以及
(5)检索协议消息。
如上所述,可依照模型所关联的域的语义来选择不同的模型类型。可依照语义对一个或多个模型形参(特定于每个模型类型)进行调整来放宽或缩小由模型所定义的安全区域。在此给出一些使用域的语义对模型类型进行选择或对模型形参进行调整的例子。
在数值域代表协议消息类型的情况下,可使用数值枚举类型的模型。这种模型类型允许确保只有在模型中枚举的消息类型被定义为安全区域。如果在学习阶段中自动建立该模型,则所有观察到的消息类型被认为是安全的。如果手动建立该模型,可依照特别安全策略来建立允许消息的集合。例如,安全策略可以强制在某个主机上只执行读操作。在这种情况下允许消息的集合将只包含读消息。
在数值域在工业处理的上下文中代表引擎的转速的情况下,可使用数值范围类型的模型。这种模型类型允许确保引擎的转速不会被设置为低于或高于被认为是安全的转速。如果在学习阶段中自动建立该模型,则最小/最大允许值可设置为观察到的最小/最大转速(精确范围)。如果手动建立该模型,可依照引擎的技术规范来设置范围的最小值和最大值,以确保转速保持在可接受的操作条件中。
在数值域代表安全相关域的长度(例如字符串缓冲区的长度)的情况下,可使用数值分布类型的模型。而且,由于该域与安全的相关度很高,可作为的缓冲区溢出攻击的目标,可设置一个高概率的阈值。这样一来,模型所定义的安全区就限制为有高概率被在学习阶段中观察到的相同的数值分布所生成的值。换句话说,如果相对于之前在学习阶段中的观察长度域值太大,该值被认为是异常的,从而被认为是可能的攻击。例如,用于执行缓冲区溢出攻击的外壳代码可以比缓冲区的正常内容更长,从而为缓冲区长度域生成一个异常值。
在字符串域代表人名的情况下,可选择字符串类型的模型,且不包含于模型的符号字符的数的默认阈值可设置在一个很低的级别。由于人名被认为不会包含很多符号,将默认域值设置在一个很低的级别确保了如果观察到的值包含出现在模型中的符号就立刻生成一个入侵检测信号。这可能是所谓的SQL入侵攻击的情况,利用了特殊字符,例如单引号或双引号、逗号等等。
图4示意性地示出了入侵检测处理的步骤:步骤b1,对数据流量进行语法分析,从该数据流量的协议消息中提取至少一个协议域;步骤b2,对被提取的协议域和用于该协议域的个别模型进行关联,该模型选自模型的集合;步骤b3,对被提取的协议域的内容是否在模型所定义的安全区域之内进行评估;以及步骤b4,如果证实被提取的协议域的内容在该安全区域之外,生成入侵检测信号(例如在对被提取的协议域或包含协议域的协议消息进行过滤之后,向用户生成一个警报或其他入侵检测动作)。
在一个实施方式中,当语法分析无法证实该域遵从协议时或当被提取的域无法与模型的集合中的任何模型关联时,可进一步生成入侵检测信号。
作为一个例子,图5示意性地示出了本专利申请的概念的概览图。该处理开始于对数据流量进行语法分析(500),从协议消息中提取至少一个协议域。第二步骤对被提取的协议域和用于该协议域的个别模型进行关联(501),该模型选自模型的集合。模型的集合可包括不同的模型类型,在图5中513代表模型的集合。为被提取的协议域选择模型类型可被协议域值类型(由511所代表)和与协议域关联的语义(由512所代表)驱动。也提供不同的模型类型的集合(513)作为输入,不同的模型类型可包括数值范围模型、数值集合(枚举)模型、数值分布模型、ASCII字符串模型、Unicode字符串模型、布尔模型、基于n元语法分析的二进制模型、网络模拟器、入侵检测特征的集合等等。可通过考虑描述操作的域对描述该操作的实参的域的依赖程度来改进对经过语法分析的协议域和与其相应的(某个模型类型的)模型进行关联的处理(由509所代表)。更一般地,当对经过语法分析的协议域和与其相应的模型进行关联时可考虑任何一个域值对另一个域值的依赖程度(由510所代表),如此一来,依照同一个消息中的另一个域值为同一个域建立了多个模型。在学习阶段中,如果无法为经过语法分析的协议域选择一个模型的类型,可创建一个这种模型(步骤515)。类似地,如果已存在这种模型,可在学习阶段中对该模型进行升级以包括该模型所定义的安全区域中的当前经过语法分析的域值(步骤516)。如果语法分析无法证实在网络数据中观察到的域符合协议规范,可生成一个入侵检测信号(步骤508)。在检测阶段中,如果不可能对经过语法分析的域和与被选择的模型类型的现存的模型进行关联,可生成一个入侵检测信号(步骤504)。另一方面,如果不可能对经过语法分析的域和与被选择的模型类型的现存的模型进行关联,关于模型所定义的安全区域对域值进行评估(步骤503)。如果经过语法分析的域值不在模型所定义的安全区域之内,可生成一个入侵检测信号(步骤505)。最后,如果因为如上所述的任何一个原因而生成一个入侵检测信号,可进行进一步的步骤,例如从网络流量对与协议域为异常值关联的协议消息进行移除(步骤506),或者激发并输出一个入侵警报消息(步骤507)。
可以理解上述的实施方式仅仅是本发明的范例,可以通过各种方式来实现。因此,在此所述的特别的结构和功能并不能被解释为是一种限定,而仅仅是权利要求的基础,仅仅是使本领域的技术人员在实际中以任何合适的具体结构来实现本发明的一个示范性的基础。而且,在此所述的术语和短语并不是为了进行限定,而是为了为本发明提供可理解的描述。上述实施方式中的元素可进行结合来形成其他实施方式。
在此所用的术语“一个”定义为一个或多于一个。在此所用的术语“另一个”定义为至少是第二个或更多个。在此所用的术语“包含”和/或“有”定义为包括(即不排除还有其他元素或步骤)。任何权利要求中的附图标号都不被解释为限定权利要求或本发明的范围。显然地,互不相同的从属权利要求所列举的具体措施并不表示不能充分利用这些的组合。本发明的范围只由权利要求来限定。

Claims (30)

1.一种用于在数据通信网络上对数据流量中的入侵进行检测的入侵检测方法,包括以下步骤:
对数据流量进行语法分析,从该数据流量的协议消息中提取至少一个协议域;
对被提取的协议域和用于该协议域的个别模型进行关联,该模型选自模型的集合,模型的集合包括用于不同的协议域的不同的模型;
对被提取的协议域的内容是否在模型所定义的安全区域之内进行评估;及
如果证实被提取的协议域的内容在该安全区域之外,生成入侵检测信号,该入侵检测方法的特征在于,
在学习阶段为被提取的协议域建立模型,该学习阶段包括以下步骤:
提供多个模型类型;
对被提取的协议域的数据类型进行确定;
基于被提取的协议域的特性从多个模型类型中对用于被提取的协议域的模型类型进行选择,该特性包括所确定的数据类型;以及
基于被选择的模型类型建立用于被提取的协议域的模型。
2.根据权利要求1所述的入侵检测方法,其特征在于,
模型的集合包括用于操作符协议域的模型和用于实参协议域的模型,对操作符协议域和实参协议域进行关联和评估。
3.根据权利要求2所述的入侵检测方法,其特征在于,
模型的集合还包括用于编组协议域的模型,还对编组协议域进行关联和评估。
4.根据权利要求1~3中任意一项所述的入侵检测方法,其特征在于,
协议域的特性包括协议域的语义,该方法包括以下步骤:
对被提取的协议域的语义进行确定;以及
使用所确定的语义对模型类型进行选择。
5.根据权利要求1~4中任意一项所述的入侵检测方法,其特征在于,
模型的集合包括用于协议域的集合中的每个协议域的个别模型。
6.根据权利要求1~5中任意一项所述的入侵检测方法,其特征在于,
在学习阶段确定用于域的模型,该学习阶段包括以下步骤:
对数据流量进行语法分析,提取至少一个应用于该数据流量的协议中的协议域;
对被提取的协议域和用于该协议域的模型进行关联,该模型选自模型的集合;及
使用被提取的协议域的内容对用于被提取的协议域的模型进行升级。
7.根据权利要求6所述的入侵检测方法,其特征在于,
如果被提取的协议域无法与模型中的任何一个进行关联,创建一个用于被提取的协议域的新的模型并将该新的模型添加到模型的集合中去。
8.根据权利要求1~7中任意一项所述的入侵检测方法,其特征在于,
当语法分析无法证实域符合协议时也生成入侵检测信号。
9.根据权利要求1~8中任意一项所述的入侵检测方法,其特征在于,
当被提取的域无法与模型的集合中的任何一个模型进行关联时也生成入侵检测信号。
10.根据权利要求1~9中任意一项所述的入侵检测方法,其特征在于,
协议是应用层协议、会话层协议、传输层协议、或低级别协议堆栈协议中的至少一个协议。
11.根据权利要求1~10中任意一项所述的入侵检测方法,其特征在于,
响应于对入侵检测信号进行生成,该方法至少进一步包括以下步骤之一:
对协议域或包含协议域的数据包进行移除;
激发且输出一个入侵警报消息。
12.根据权利要求1~11中任意一项所述的入侵检测方法,其特征在于,
用于协议域的模型包括以下三者中的至少一个:
可接受的协议域值的集合;
协议域值的数值分布;
可接受的协议域值的范围的定义。
13.根据权利要求1~12中任意一项所述的入侵检测方法,其特征在于,
用于协议域的模型包括:
可接受的字母、数字、符号、及脚本的定义。
14.根据权利要求1~13中任意一项所述的入侵检测方法,其特征在于,
用于协议域的模型包括:
预定义入侵特征的集合。
15.根据权利要求1~14中任意一项所述的入侵检测方法,其特征在于,
模型的集合包括用于一个协议域的两个模型,对两个模型中特别的那个模型与一个协议域基于另一个协议域值进行关联。
16.一种用于在数据通信网络上对数据流量中的入侵进行检测的入侵检测系统,该系统包括:
语法分析器,该语法分析器对数据流量进行语法分析,从该数据流量的协议消息中提取至少一个协议域;
引擎,该引擎对被提取的协议域和用于该协议域的个别模型进行关联,该模型选自模型的集合,模型的集合包括用于不同的协议域的不同的模型;
模型处理机,该模型处理机对被提取的协议域的内容是否在模型所定义的安全区域之内进行评估;及
执行器,如果证实被提取的协议域的内容在该安全区域之外,该执行器生成入侵检测信号,
该入侵检测系统的特征在于,
该系统配置为在学习阶段为被提取的协议域建立模型,该学习阶段包括以下步骤:
提供多个模型类型;
对被提取的协议域的数据类型进行确定;
基于被提取的协议域的特性从多个模型类型中对用于被提取的协议域的模型类型进行选择,该特性包括所确定的数据类型;以及
基于被选择的模型类型建立用于被提取的协议域的模型。
17.根据权利要求16所述的入侵检测系统,其特征在于,
模型的集合包括用于操作符协议域的模型和用于实参协议域的模型,所述引擎配置为对操作符协议域和实参协议域进行关联和评估。
18.根据权利要求17所述的入侵检测系统,其特征在于,
模型的集合还包括用于编组协议域的模型,所述引擎配置为还对编组协议域进行关联和评估。
19.根据权利要求16~18中任意一项所述的入侵检测系统,其特征在于,
协议域的特性包括协议域的数据类型,该系统配置为:
对被提取的协议域的数据类型进行确定;以及
使用所确定的数据类型对模型类型进行选择。
20.根据权利要求16~19中任意一项所述的入侵检测系统,其特征在于,
模型的集合包括用于协议域的集合中的每个协议域的个别模型。
21.根据权利要求16~20中任意一项所述的入侵检测系统,其特征在于,
该系统进一步配置为在学习阶段中进行操作,在学习阶段学习至少一个模型,所述模型处理机配置为在学习阶段中使用被提取的协议域的内容对用于被提取的协议域的模型进行升级。
22.根据权利要求21所述的入侵检测系统,其特征在于,
所述引擎进一步配置为在学习阶段中,如果被提取的协议域无法与模型中的任何一个进行关联,创建一个用于被提取的协议域的新的模型并将该新的模型添加到模型的集合中去。
23.根据权利要求16~22中任意一项所述的入侵检测系统,其特征在于,
所述执行器进一步配置为,当语法分析器无法证实域符合协议时,响应于该语法分析器的指示,生成入侵检测信号。
24.根据权利要求16~23中任意一项所述的入侵检测系统,其特征在于,
所述执行器进一步配置为,当被提取的域无法与模型的集合中的任何一个模型进行关联时,响应于引擎的指示,生成入侵检测信号。
25.根据权利要求16~24中任意一项所述的入侵检测系统,其特征在于,
协议是应用层协议、会话层协议、传输层协议、或低级别协议堆栈协议中的至少一个协议。
26.根据权利要求16~25中任意一项所述的入侵检测系统,其特征在于,
所述执行器配置为响应于对入侵检测信号进行生成,
对协议域或包含协议域的数据包进行移除;
激发且输出一个入侵警报消息。
27.根据权利要求16~26中任意一项所述的入侵检测系统,其特征在于,
用于协议域的模型包括以下三者中的至少一个:
可接受的协议域值的集合;
协议域值的数值分布;
可接受的协议域值的范围的定义。
28.根据权利要求16~27中任意一项所述的入侵检测系统,其特征在于,
用于协议域的模型包括:
可接受的字母、数字、符号、及脚本的定义。
29.根据权利要求16~28中任意一项所述的入侵检测系统,其特征在于,
用于协议域的模型包括:
预定义入侵特征的集合。
30.根据权利要求16~29中任意一项所述的入侵检测系统,其特征在于,
模型的集合包括用于一个协议域的两个模型,所述引擎配置为对两个模型中特别的那个模型与一个协议域基于另一个协议域值进行关联。
CN201280037279.XA 2011-07-26 2012-07-26 用于对数据通信网络中的协议消息进行分类的方法和系统 Active CN103748853B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161511685P 2011-07-26 2011-07-26
NL2007180A NL2007180C2 (en) 2011-07-26 2011-07-26 Method and system for classifying a protocol message in a data communication network.
US61/511,685 2011-07-26
NL2007180 2011-07-26
PCT/NL2012/050537 WO2013015691A1 (en) 2011-07-26 2012-07-26 Method and system for classifying a protocol message in a data communication network

Publications (2)

Publication Number Publication Date
CN103748853A CN103748853A (zh) 2014-04-23
CN103748853B true CN103748853B (zh) 2017-03-08

Family

ID=47601337

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280037279.XA Active CN103748853B (zh) 2011-07-26 2012-07-26 用于对数据通信网络中的协议消息进行分类的方法和系统

Country Status (11)

Country Link
US (4) US9628497B2 (zh)
EP (1) EP2737683B1 (zh)
JP (1) JP6117202B2 (zh)
CN (1) CN103748853B (zh)
BR (1) BR112014001691B1 (zh)
CA (1) CA2842465C (zh)
EA (1) EA037617B1 (zh)
ES (1) ES2581053T3 (zh)
IL (2) IL230440A (zh)
NL (1) NL2007180C2 (zh)
WO (1) WO2013015691A1 (zh)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL2007180C2 (en) * 2011-07-26 2013-01-29 Security Matters B V Method and system for classifying a protocol message in a data communication network.
US9292688B2 (en) * 2012-09-26 2016-03-22 Northrop Grumman Systems Corporation System and method for automated machine-learning, zero-day malware detection
US11126720B2 (en) * 2012-09-26 2021-09-21 Bluvector, Inc. System and method for automated machine-learning, zero-day malware detection
JP2015535997A (ja) * 2012-09-28 2015-12-17 ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. アプリケーションセキュリティ検査
JP6273834B2 (ja) * 2013-12-26 2018-02-07 富士通株式会社 情報処理装置及びロギング方法
CN104270275B (zh) * 2014-10-14 2018-04-10 广东小天才科技有限公司 一种异常原因的辅助分析方法、服务器以及智能设备
CN105704103B (zh) * 2014-11-26 2017-05-10 中国科学院沈阳自动化研究所 基于OCSVM双轮廓模型的Modbus TCP通信行为异常检测方法
US10572811B2 (en) 2015-01-29 2020-02-25 Splunk Inc. Methods and systems for determining probabilities of occurrence for events and determining anomalous events
US9953158B1 (en) * 2015-04-21 2018-04-24 Symantec Corporation Systems and methods for enforcing secure software execution
TWI562013B (en) * 2015-07-06 2016-12-11 Wistron Corp Method, system and apparatus for predicting abnormality
US10015188B2 (en) 2015-08-20 2018-07-03 Cyberx Israel Ltd. Method for mitigation of cyber attacks on industrial control systems
CN105306436B (zh) * 2015-09-16 2016-08-24 广东睿江云计算股份有限公司 一种异常流量检测方法
US10033747B1 (en) * 2015-09-29 2018-07-24 Fireeye, Inc. System and method for detecting interpreter-based exploit attacks
CN106657545B (zh) * 2015-10-29 2021-06-15 中兴通讯股份有限公司 拦截推送信息的方法、装置及终端
US10955810B2 (en) * 2015-11-13 2021-03-23 International Business Machines Corporation Monitoring communications flow in an industrial system to detect and mitigate hazardous conditions
WO2017119888A1 (en) * 2016-01-07 2017-07-13 Trend Micro Incorporated Metadata extraction
US10419401B2 (en) * 2016-01-08 2019-09-17 Capital One Services, Llc Methods and systems for securing data in the public cloud
US9998487B2 (en) * 2016-04-25 2018-06-12 General Electric Company Domain level threat detection for industrial asset control system
CN106022129B (zh) * 2016-05-17 2019-02-15 北京江民新科技术有限公司 文件的数据特征提取方法、装置及病毒特征检测系统
CN106209843A (zh) * 2016-07-12 2016-12-07 工业和信息化部电子工业标准化研究院 一种面向Modbus协议的数据流异常分析方法
CN106603531A (zh) * 2016-12-15 2017-04-26 中国科学院沈阳自动化研究所 一种基于工业控制网络的入侵检测模型的自动建立方法及装置
CN106790108B (zh) * 2016-12-26 2019-12-06 东软集团股份有限公司 协议数据解析方法、装置和系统
RU2659482C1 (ru) * 2017-01-17 2018-07-02 Общество с ограниченной ответственностью "СолидСофт" Способ защиты веб-приложений при помощи интеллектуального сетевого экрана с использованием автоматического построения моделей приложений
US10839154B2 (en) * 2017-05-10 2020-11-17 Oracle International Corporation Enabling chatbots by detecting and supporting affective argumentation
US10817670B2 (en) * 2017-05-10 2020-10-27 Oracle International Corporation Enabling chatbots by validating argumentation
CN110612525B (zh) 2017-05-10 2024-03-19 甲骨文国际公司 通过使用交流话语树启用修辞分析
US11960844B2 (en) * 2017-05-10 2024-04-16 Oracle International Corporation Discourse parsing using semantic and syntactic relations
US11165802B2 (en) * 2017-12-05 2021-11-02 Schweitzer Engineering Laboratories, Inc. Network security assessment using a network traffic parameter
US11641370B2 (en) * 2018-03-08 2023-05-02 Forescout Technologies, Inc. Attribute-based policies for integrity monitoring and network intrusion detection
NL2020552B1 (en) * 2018-03-08 2019-09-13 Forescout Tech B V Attribute-based policies for integrity monitoring and network intrusion detection
US11475370B2 (en) * 2018-11-29 2022-10-18 Microsoft Technology Licensing, Llc Providing custom machine-learning models
FR3090153B1 (fr) * 2018-12-17 2022-01-07 Commissariat Energie Atomique Procédé et système de détection d’anomalie dans un réseau de télécommunications
LT3674823T (lt) * 2018-12-28 2022-08-10 Nozomi Networks Sagl Infrastruktūros anomalijų aptikimo būdas ir aparatas
US10802937B2 (en) * 2019-02-13 2020-10-13 United States Of America As Represented By The Secretary Of The Navy High order layer intrusion detection using neural networks
KR102204290B1 (ko) * 2019-08-23 2021-01-18 고려대학교 세종산학협력단 통계적 분석 기반 비공개 프로토콜의 구분자 및 정적필드 추출방법
US11621970B2 (en) * 2019-09-13 2023-04-04 Is5 Communications, Inc. Machine learning based intrusion detection system for mission critical systems
CN110912908B (zh) * 2019-11-28 2022-08-02 中国电子产品可靠性与环境试验研究所((工业和信息化部电子第五研究所)(中国赛宝实验室)) 网络协议异常检测方法、装置、计算机设备和存储介质
US11363059B2 (en) * 2019-12-13 2022-06-14 Microsoft Technology Licensing, Llc Detection of brute force attacks
CN111126627B (zh) * 2019-12-25 2023-07-04 四川新网银行股份有限公司 基于分离度指数的模型训练系统
CN111585993B (zh) * 2020-04-27 2022-08-09 深信服科技股份有限公司 一种隐蔽信道通信检测方法、装置及设备
CN111885059B (zh) * 2020-07-23 2021-08-31 清华大学 一种工业网络流量异常检测定位的方法
CN111865723A (zh) * 2020-07-25 2020-10-30 深圳市维度统计咨询股份有限公司 一种基于大数据的网络数据采集系统
DE112021005121T5 (de) * 2020-09-29 2023-09-07 Fanuc Corporation Netwerk-Relais-Vorrichtung
CN112887280B (zh) * 2021-01-13 2022-05-31 中国人民解放军国防科技大学 一种基于自动机的网络协议元数据提取系统及方法
US11363050B1 (en) 2021-03-25 2022-06-14 Bank Of America Corporation Information security system and method for incompliance detection in data transmission
US11588835B2 (en) 2021-05-18 2023-02-21 Bank Of America Corporation Dynamic network security monitoring system
US11792213B2 (en) 2021-05-18 2023-10-17 Bank Of America Corporation Temporal-based anomaly detection for network security
US11799879B2 (en) 2021-05-18 2023-10-24 Bank Of America Corporation Real-time anomaly detection for network security
CN113742475A (zh) * 2021-09-10 2021-12-03 绿盟科技集团股份有限公司 一种office文档检测方法、装置、设备及介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101119241A (zh) * 2007-08-24 2008-02-06 北京启明星辰信息技术有限公司 一种基于状态检测的协议异常检测方法及系统
CN101399710A (zh) * 2007-09-29 2009-04-01 北京启明星辰信息技术有限公司 一种协议格式异常检测方法及系统

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09153924A (ja) 1995-11-28 1997-06-10 Nec Corp 通信制御システムの手順誤り検出方式
US6078874A (en) * 1998-08-04 2000-06-20 Csi Technology, Inc. Apparatus and method for machine data collection
US6925454B2 (en) * 2000-12-12 2005-08-02 International Business Machines Corporation Methodology for creating and maintaining a scheme for categorizing electronic communications
US6898737B2 (en) * 2001-05-24 2005-05-24 Microsoft Corporation Automatic classification of event data
US7225343B1 (en) * 2002-01-25 2007-05-29 The Trustees Of Columbia University In The City Of New York System and methods for adaptive model generation for detecting intrusions in computer systems
US8370936B2 (en) * 2002-02-08 2013-02-05 Juniper Networks, Inc. Multi-method gateway-based network security systems and methods
ATE374493T1 (de) * 2002-03-29 2007-10-15 Global Dataguard Inc Adaptive verhaltensbezogene eindringdetektion
US7039702B1 (en) * 2002-04-26 2006-05-02 Mcafee, Inc. Network analyzer engine system and method
US7349917B2 (en) * 2002-10-01 2008-03-25 Hewlett-Packard Development Company, L.P. Hierarchical categorization method and system with automatic local selection of classifiers
US7305708B2 (en) * 2003-04-14 2007-12-04 Sourcefire, Inc. Methods and systems for intrusion detection
US20070094722A1 (en) * 2003-05-30 2007-04-26 International Business Machines Corporation Detecting networks attacks
WO2005047862A2 (en) * 2003-11-12 2005-05-26 The Trustees Of Columbia University In The City Of New York Apparatus method and medium for identifying files using n-gram distribution of data
US8656488B2 (en) * 2005-03-11 2014-02-18 Trend Micro Incorporated Method and apparatus for securing a computer network by multi-layer protocol scanning
US7860006B1 (en) * 2005-04-27 2010-12-28 Extreme Networks, Inc. Integrated methods of performing network switch functions
US8631483B2 (en) * 2005-06-14 2014-01-14 Texas Instruments Incorporated Packet processors and packet filter processes, circuits, devices, and systems
US7757283B2 (en) * 2005-07-08 2010-07-13 Alcatel Lucent System and method for detecting abnormal traffic based on early notification
US9055093B2 (en) * 2005-10-21 2015-06-09 Kevin R. Borders Method, system and computer program product for detecting at least one of security threats and undesirable computer files
US20070150574A1 (en) * 2005-12-06 2007-06-28 Rizwan Mallal Method for detecting, monitoring, and controlling web services
US8135994B2 (en) * 2006-10-30 2012-03-13 The Trustees Of Columbia University In The City Of New York Methods, media, and systems for detecting an anomalous sequence of function calls
US8448234B2 (en) * 2007-02-15 2013-05-21 Marvell Israel (M.I.S.L) Ltd. Method and apparatus for deep packet inspection for network intrusion detection
US20080295173A1 (en) * 2007-05-21 2008-11-27 Tsvetomir Iliev Tsvetanov Pattern-based network defense mechanism
US7966660B2 (en) * 2007-05-23 2011-06-21 Honeywell International Inc. Apparatus and method for deploying a wireless network intrusion detection system to resource-constrained devices
US9100319B2 (en) * 2007-08-10 2015-08-04 Fortinet, Inc. Context-aware pattern matching accelerator
US8844033B2 (en) * 2008-05-27 2014-09-23 The Trustees Of Columbia University In The City Of New York Systems, methods, and media for detecting network anomalies using a trained probabilistic model
EP2200249A1 (en) * 2008-12-17 2010-06-23 Abb Research Ltd. Network analysis
FI20096394A0 (fi) * 2009-12-23 2009-12-23 Valtion Teknillinen Tunkeutumisen havaitseminen viestintäverkoissa
US9088601B2 (en) * 2010-12-01 2015-07-21 Cisco Technology, Inc. Method and apparatus for detecting malicious software through contextual convictions, generic signatures and machine learning techniques
NL2007180C2 (en) * 2011-07-26 2013-01-29 Security Matters B V Method and system for classifying a protocol message in a data communication network.
US9092802B1 (en) * 2011-08-15 2015-07-28 Ramakrishna Akella Statistical machine learning and business process models systems and methods
US9672355B2 (en) * 2011-09-16 2017-06-06 Veracode, Inc. Automated behavioral and static analysis using an instrumented sandbox and machine learning classification for mobile security
US9189746B2 (en) * 2012-01-12 2015-11-17 Microsoft Technology Licensing, Llc Machine-learning based classification of user accounts based on email addresses and other account information
US9292688B2 (en) * 2012-09-26 2016-03-22 Northrop Grumman Systems Corporation System and method for automated machine-learning, zero-day malware detection
WO2014144893A1 (en) * 2013-03-15 2014-09-18 Jones Richard B Dynamic analysis of event data
US10476742B1 (en) * 2015-09-24 2019-11-12 Amazon Technologies, Inc. Classification of auto scaling events impacting computing resources

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101119241A (zh) * 2007-08-24 2008-02-06 北京启明星辰信息技术有限公司 一种基于状态检测的协议异常检测方法及系统
CN101399710A (zh) * 2007-09-29 2009-04-01 北京启明星辰信息技术有限公司 一种协议格式异常检测方法及系统

Also Published As

Publication number Publication date
CA2842465C (en) 2021-05-04
CN103748853A (zh) 2014-04-23
NL2007180C2 (en) 2013-01-29
EA201490333A1 (ru) 2014-06-30
US9628497B2 (en) 2017-04-18
US20140090054A1 (en) 2014-03-27
IL230440A0 (en) 2014-03-31
IL254829A0 (en) 2017-12-31
JP2014522167A (ja) 2014-08-28
ES2581053T3 (es) 2016-08-31
BR112014001691B1 (pt) 2022-06-21
BR112014001691A2 (pt) 2020-10-27
US20140297572A1 (en) 2014-10-02
EP2737683A1 (en) 2014-06-04
IL254829B (en) 2018-06-28
US11902126B2 (en) 2024-02-13
EA037617B1 (ru) 2021-04-22
US11012330B2 (en) 2021-05-18
IL230440A (en) 2017-10-31
EP2737683B1 (en) 2016-03-02
JP6117202B2 (ja) 2017-04-19
WO2013015691A1 (en) 2013-01-31
US20210344578A1 (en) 2021-11-04
CA2842465A1 (en) 2013-01-31
US20170195197A1 (en) 2017-07-06

Similar Documents

Publication Publication Date Title
CN103748853B (zh) 用于对数据通信网络中的协议消息进行分类的方法和系统
CN110233849B (zh) 网络安全态势分析的方法及系统
KR101949338B1 (ko) 기계 학습 모델에 기반하여 페이로드로부터 sql 인젝션을 탐지하는 방법 및 이를 이용한 장치
Maggi et al. Protecting a moving target: Addressing web application concept drift
KR101874373B1 (ko) 난독화 스크립트에 대한 악성 스크립트 탐지 방법 및 그 장치
CN111835777B (zh) 一种异常流量检测方法、装置、设备及介质
Rodofile et al. Process control cyber-attacks and labelled datasets on S7Comm critical infrastructure
CN107979581A (zh) 僵尸特征的检测方法和装置
KR102362516B1 (ko) 사이버 위협 정보 처리 장치, 사이버 위협 정보 처리 방법 및 사이버 위협 정보 처리하는 프로그램을 저장하는 저장매체
US20230252145A1 (en) Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program
CN111787018A (zh) 用于识别网络攻击行为的方法、装置、电子设备及介质
US20230252136A1 (en) Apparatus for processing cyber threat information, method for processing cyber threat information, and medium for storing a program processing cyber threat information
Kim et al. Unknown payload anomaly detection based on format and field semantics inference in cyber-physical infrastructure systems
US20240054210A1 (en) Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program
Alosefer et al. Predicting client-side attacks via behaviour analysis using honeypot data
US20230048076A1 (en) Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program
KR102411383B1 (ko) 사이버 위협 정보 처리 장치, 사이버 위협 정보 처리 방법 및 사이버 위협 정보 처리하는 프로그램을 저장하는 저장매체
US20230254340A1 (en) Apparatus for processing cyber threat information, method for processing cyber threat information, and medium for storing a program processing cyber threat information
EP3547193B1 (en) Analysis apparatus, analysis method and analysis program
Kozik et al. The http content segmentation method combined with adaboost classifier for web-layer anomaly detection system
US20240054215A1 (en) Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program
KR102396236B1 (ko) 사이버 위협 정보 처리 장치, 사이버 위협 정보 처리 방법 및 사이버 위협 정보 처리하는 프로그램을 저장하는 저장매체
US20230252143A1 (en) Apparatus for processing cyber threat information, method for processing cyber threat information, and medium for storing a program processing cyber threat information
US20230252144A1 (en) Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program
US20230252146A1 (en) Cyber threat information processing apparatus, cyber threat information processing method, and storage medium storing cyber threat information processing program

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant