网络中的异常检测的方法

文档序号:7913559阅读:187来源:国知局
专利名称:网络中的异常检测的方法
网络中的异常检测的方法
背景技术
近几十年来,众多计算机和局域网络联网成世界范围的网络(互联网),这明显提高了商业、政府以及私人领域中的大量过程的效率和客户端友好性。不幸的是,随着使用的复杂性,固有故障和薄弱环节的数量也明显增长,这些固有故障和薄弱环节使得怀有恶意的第三者能够出于自身目的滥用该系统。即使制造者已经在软件研发中通过适当的编程技术和质量保障过程逐渐试图减少这些薄弱环节,并且试图在发现这些薄弱环节后尽可能迅速地将其清除,但在每年IT-系统中发现的薄弱环节的数量仍持续增长。同时,基于IT的监视系统和控制系统(这种系统的通用的英文名称为 "Supervisory Control and Data Acquisition (数据采集与监控系统)”或 SCADA, "Distributed Control System( ^^ M M Mt ) " ^ DCS, "Energy Management System(能源管理系统)”或EMS,等)也在例如工业设备、工厂以及发电厂的多种技术设备中,在分配电、水和天然气时以及在石油-和天然气管道中被使用。该系统与迄今为止传统的IT系统的区别在于,该系统完全隔离地在物理性保护区域内工作,并且经常特别是在IT 环境中并不使用常用的通信协议。最高级的优先权在此具有高度的可靠性。直至在毫秒范围内的快速回复时间是场设备彼此通信的先决条件(例如用于在能量传输和分配中实现保护功能)。与IT环境相比,信息安全是次要的,因为这些自动化网络本身已经是安全的或并未与不安全的网络相连接。为了实现进一步提高效率,该系统现在也越来越多地与其他网络相连接从而形成全面的控制网络。因此,例如,将用于直接控制设备的系统(“Manufacturing Control System制造控制系统”或MCS)与质量监督和生产规划(“Manufacturing Execution System制造执行系统”或MES)相连接,并且将该系统-或这两个系统_再次与用于规划企业资源的系统(“企业资源规划系统”或ERP)相连接,该企业资源规划系统是企业的办公软件应用中的一种。不同场所的技术设备通过租用的线路或甚至完全公开的网络彼此通信。 建立起了用于远程维护设备的通道。来自公开的网络(时间、天气预报、供应商的原料价格等)的信息甚至可以汇入技术设备的操作中。经过持续的网络化,现在形成了更易受到攻击的控制网络,这是因为各个系统的隔离导致固有的保护逐渐失效。由此,-正如传统的IT环境一样-越来越需要使设备部件处于安全技术的当前状态中,并且将其保持在此状态中。但这通常是不可能的,因为当相应的补丁(英文“Patch”)-假如是完全可用的-需要各个系统均重新启动一遍时,那么无法在进行的操作中运行该补丁。由于在维护间歇中可能必须执行其他工作,因此维护间歇为此也经常并不充足。这会导致很多年都无法排除控制网络中公知的安全薄弱环节。查毒软件的使用也存在问题,这是因为由于被扫描的设备的性能丧失(Performanzeinbuss)并且由于阻挡了 (可能错位地)被识别为有害的数据和程序,查毒软件可以严重影响设备控制。由此,为了能够预先采取适当的对策并且为了避免技术设备失效可能对人、材料和环境带来严重的后果,必要的是尽可能精确地监视技术设备的控制网络,尤其是监视基于网络的攻击。控制网络-根据所涉及的技术设备-用于在工业或建筑自动化中进行控制和监视。在工业自动化中,控制网络还控制工厂或发电厂以及分配电、水或天然气,这些控制网络也用在石油-和天然气管道中。但迄今为止仍然极少对控制网络进行安全技术监视,人们仍旧最大程度上信赖对用于生产控制的控制网络的(臆想的)隔离以及一些不充分的认识,这些认识涉及大多数来源于传统IT环境中的潜在攻击者的相应协议和设备。随着网络连接的增加、攻击者经验的增加及其动机的增加和商业化程度提高,这些方案越来越不成功。只要攻击或干扰仍持续着,便可以通过现有技术公知的入侵检测系统(英文表达为“Intrusion Detection System”或IDS)来发现控制网络的入侵。分布最广泛的入侵检测系统(例如,SNORT)大多数以签名为基础进行工作。必须费用高昂地生成这些签名,用于检测各个攻击。在对已安装的入侵检测系统进行配置时,必须选择出和攻击相关的样本并且,例如,以配置文件的形式使入侵检测系统知晓。一旦已知了新的薄弱环节或对已经已知的薄弱环节的攻击被修改,便生成新的签名并且相应地扩展入侵检测系统的配置文件。其他公知的交通分析途径借助其明显变化的交通量来检测已经位于TCP/IP-层中的Scanning攻击禾口 Flooding攻击。所有上述的和其他的方法(例如防火墙、应用网关、DMZ、安全单元)均适于保护控制网络。然而,一旦控制网络已经-无论如何-受到感染并且被接收,实际的技术设备仅具有很少的保护。然后,可以利用常规指令来收集关于设备流程的详细信息。另外,在此情况下可通过调节执行机构来使技术设备失去控制。

发明内容
因此,本发明的目的在于提供一种控制网络中的异常检测的方法,利用该方法可以检测出利用现有技术所公知的方法无法得出的异常。根据本发明由此实现该目的,S卩,对微处理器进行编程来检测控制网络中的异常, 以便执行五个步骤。在第一步骤中得出控制网络中的通信数据。在第二步骤中得出通信数据中按一定顺序的(ordnung^emafien )消息的时间序列和/或时间间隔并且将其存储在训练数据中。在第三步骤中利用训练数据训练异常检测系统。在第四步骤中得出控制网络中的当前通信数据。最后在第五步骤中利用异常检测系统检测当前通信数据中的按一定顺序的消息的时间序列和/或时间间隔与训练数据的偏差。另外,本发明包括计算机程序模块,该计算机程序模块在计算机中运行并且在此以上述步骤实施该方法。在此,计算机程序模块也可以被存储在计算机可读的数据载体上。本发明的另一个有利的实施方式表现为从属权利要求的特征。根据该方法得出了通信数据中按一定顺序的消息的时间序列和/或时间间隔,其被存储在训练数据中并且考虑用于训练异常检测系统(并且由此用于随后对偏差的检测)。通过得出按一定顺序的消息的时间序列和“节拍”,能够检测出攻击,在使用正规的、但被攻击者接管的观察站或控制站的情况下进行这种攻击,并且无论是利用以内容为基础的方法(借助签名或字节序列分析)还是通过数据信息流通量的明显增长均无法检测出这种攻击。另外,也可以检测出,例如,攻击者通过接管正规的并且被授权的设备而具有了受信任的密码钥匙后所可能发起的攻击。由此可以发现的攻击无论由于其消息的内容(使用其他协议、非常规的访问、错误的HMAC或签名...)还是由于其路径(错误的发送人或接收人)均与通常特性不同,并且因此无法被字节样本(Byte-Muster)探测方法检测出来。既可以使用以网络为基础的入侵检测系统(NIDS)技术也可以使用以设备为基础的入侵检测系统(HIDS)。有利地是将该异常检测系统安装在一个或多个服务器上。该方法的一个优点在于,对正规授权的设备之间的按一定顺序的消息的时间特性 (顺序,节拍)进行分析,将其作为对于控制网络的安全监视的另一个新标准。该方法形成了进一步的安全屏障,该安全屏障仍能够对一个其控制网络已经被感染的技术设备进行监视并且(通过安全人员报警)来防止可能的破坏行为。


下面借助附图详细阐述本发明的实施例。其示出图1是带有在可能的情况下可能被攻击者接管的设备的控制网络;图2是方法的流程图;图3是方法和参与系统的示意图。
具体实施例方式图1示出了控制网络10。该控制网络由多个彼此连接的网络构成,其中有企业控制网络100(例如,在ERP系统或MES系统范围内)、过程控制网络200以及控制系统网络 300。另外,控制网络10还包括多个被授权的观察站或控制站,其中有客户端11、网络客户端12以及用于远程维护入口的支援站13。作为安全措施,在控制网络10中设置了多个防火墙70。图1现在示出的情况是,攻击者已经成功地接管了被授权的观察站或控制站,例如-过程控制网络200中的客户端11或服务器,-企业控制网络100中的网络客户端12,或-支援站13。攻击者现在可以窥探并且甚至操控技术设备的那些被其所接管的授权的观察站或控制站所管辖的部分。在此,攻击并不针对控制网络10,而是-在使用或滥用控制网络 10的情况下-针对技术设备本身。在此,攻击局限于正规的命令和通信消息。被接管的授权观察站或控制站可以正确地计算出密码的校验和以及签名。-如在规划中确定的-按顺序地遵寻通信路径。因此,基于签名的入侵检测系统和基于字节序列的自学入侵检测系统实际上均无法确定这种攻击。因此,尤其是当观察站和控制站处于在物理上和信息技术上受到相对较好保护的控制网络10以外时,必须特别对其进行保护。下面对第一个实施例进行描述。图2示出了用于控制网络10中的异常检测的方法的流程图。描述的是该方法的第一步骤1、第二步骤2、第三步骤3、第四步骤4以及第五步骤5。除第一步骤1以外,这些步骤也在图3中被示出,图3示意性地描述了该方法以及异常检测系统50和控制网络10。
在图2所示的第一步骤中,得出控制网络10中的通信数据,例如网络通信数据。在图2和图3所示的第二步骤中,得出通信数据中按一定顺序的消息的时间序列和/或时间间隔,并且将其存储在训练数据30中。在第三步骤中,利用训练数据30来训练异常检测系统50。因此在最初的训练阶段中,异常检测系统50基于安全的、仍未受到敌对的攻击感染的控制网络10进行训练。异常检测系统50对此具有例如受过训练的中枢网络60。然而,也可以利用其他技术,例如支持向量机来执行该异常检测系统50。在第四步骤中,在控制网络中得出当前通信数据40。在第五步骤中,利用异常检测系统50来检测当前通信数据40中的按一定顺序的消息的时间序列和/或时间间隔与训练数据30之间的偏差。当控制网络10中的一个在图 3中示出的单元20、尤其是一个在图1所示的观察站或控制站被攻击者接管或被另外操纵或具有故障时,这种偏差将被检测出来。控制网络10并不局限于工业自动化(包括能量和水分配,管道等),也可以涉及其他领域和行业,例如,用于建筑自动化、通信网络等的网络。下面将描述第二个实施例,该实施例示出了迄今为止的实施方式的具体形式。根据第二个实施例,可以在客户端11处为操作者示出整个技术设备的概况和其部分区域的详细信息。为了进行监视,操作者通常在调出下一幅图像之前至少要花费几秒钟来关注刚刚调出的图像。然而如果客户端11在短时间内(例如少于一秒钟)对多个图像进行请求, 那么不再将其归结为操作者正常并谨慎的行为,而更确切地指出,例如有恶意的程序扫描技术设备并且在尽可能短的时间内收集大量信息。为了实现第二个实施例,要对微处理器进行编程,从而得出控制网络10中的通信数据并且将按一定顺序的消息(其包括在通信数据中)的时间间隔存储在训练数据30中。 按一定顺序的消息在此是用于调出图像的消息。在通常情况下,时间间隔大于一秒。该消息被存储在训练数据30中,利用该训练数据来训练异常检测系统50。如果在客户端11的后期运行阶段中在短时间内对多个图像进行请求的话,那么这在控制网络10的当前通信数据40中是可见的。基于之前所进行的训练,异常检测系统50可以检测出相应的消息与训练过的时间间隔之间的偏差,并且例如,由此断定客户端11是否已被攻击者接管。为了在前述训练之后检测出该偏差,要将异常检测系统50编程为中枢网络60或支持向量机。下面描述第三个实施例,该实施例是可选的,但也可以实施该实施例作为对第二个实施例的补充。在第三个实施例中,网络客户端12有规律地(例如每一秒或两秒)对控制网络10中的服务器的图像的当前值进行请求,该图像恰好是客户端所关注的。该请求是自动发生的,无需操作者进行协助,因此消息(忽略网络中可能的抖动(Jitter))的间隔始终完全相同。与此相反地,通常由操作者引发两个不同图像之间的交替,并且该交替由此会以很不规律的间隔来实现。然而如果以完全相同的时间间隔实现该交替,那么该交替必须是受程序控制的。这指出了显示交替的通过操作人员的(可能不可靠的)自动化,利用显示交替来掩饰网络客户端12的物理缺席,或指出了被攻击者所接管的网络客户端12,其想要获得关于技术设备的信息并且对此以较低频率对图像进行请求。在实施第三个实施例时要注意的是,正如在请求问时操作者对此进行等待那样, 在训练数据30中消息的时间间隔略微不规律,这些消息标记了在不同的图像之间的交替。由此,被训练的异常检测系统50所处的状态是,检测出明显有规律的时间间隔并且由此推测出攻击。根据仍然是可选的、但可以作为对前述的实施例的补充而实施的第四个实施例, 通过异常检测系统50将同一个指令有规律地或短时间地重复(例如每2s重复指令“关闭阀门123”)检测成偏差-并且因此被作为对设备部分发生故障的指示或作为对攻击的指示。在训练异常检测系统之前要确保是训练数据30中不包括这种命令序列。作为基础,在所有实施例中均使用了异常检测系统50,该系统将控制网络10中的观察站或控制站(客户端11、网络客户端12、支援站1 和相应的服务器之间的数据流记录下来作为通信数据并且进行分析。以下算法尤其适用于实施该方法,a)在学习阶段(第一步骤1、第二步骤2、第三步骤幻中可以获取生成作为训练数据30的消息的序列(也就是说,时间顺序),包括其时间间隔,并且b)在操作阶段(第四步骤4、第五步骤幻中可以检测出当前通信数据40中的序列,该序列无论是在消息的顺序方面和/或其时间间隔方面均与训练数据30存在明显偏差。为此所使用的公知方法是所谓的频繁情节挖掘(Episode Rule Mining),该方法能够研究彼此相连的事件在时间间隔上的频率并且也适用于进行分类。该频繁情节挖掘是 Mannila, H. ;Toivonnen, H.和 Verkamo,A.在由 Kluwer 学术出版社在 1997 年出版的数据挖掘和知识发现 1 的第 259-298 页中的 “Discovery of frequent episodes in event sequences (发现事件序列中的频繁情节),,中公知的Marmila算法。该Marmila算法在数据组中找出了以下形式的频繁的情节X,Y_ > Z (s,k,w),其中,X,Y和Z是出现在顺序Χ. ..Y... Z中的长度为W的时间窗中的一定的事件量。S是所谓的支持度(总量中的X UYU Z的相对频率),而k是可信度=s(X U Y)/s(X U Y U ζ)。 在前提(χ,γ)的条件下,可信度k缺少结论出现的相对频率。在此,令人关注的仅在于具有确定的最小频率smin和可信度kmin的情节。将在记录下来的通信数据中所找到的事件量(消息的总量)X,Y和Z转用于第二个实施例,该事件量与用于传送三个图像Bx、By和Bz的信息流相应。如果需要这些图像来图形地描述客户端11的话,那么在短时间窗w中进行显示。如果额外地一再更新该图形的话,那么正如算法所发现的那样,已经具有了频繁的情节X,Y,Z。通信数据中全部被找到的情节因此表现为普通的数据流,其包括了技术设备的控制网络10中普通的时间间隔。一旦在当前通信数据40的操作阶段中,在相同的时间窗w中观察到多个较长的情节,这就指出了第二个实施例中所描述的攻击。即使是适当的在训练数据30中没有出现过的全新情节也可以指出攻击。替代Marmila算法,还可以通过现有技术所公知的概率方法,例如,类似扩展的马科夫模型(Markov-Modelle)来实施该方法(参见,例如,Ge, X. ;Smyth, P "DeformabIe Markov model templates for time-series pattern matching",in Proceedings of the 6th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Boston,MA,August2000,第81-90页)。这些方法以及相似的算法在其他领域中已经成功地用于执行类似的分类任务,类似用于分析脑机相互作用所用的ECG和EEG信号,用于在金融数据中进行样本识别,用于语言识别,用于对音乐作品进行自动化分类,以及用于分析多人游戏中玩家的点击行为,但也可以被用在网络付款模式中(参见khlilssler,Τ. ;Goglin, S. ;Johnson, Ε. “Is a bot at the Controls ? Detecting Input Data Attacks,,,in Proceedings of the 6th ACM SIGCOMM NetGames, Melbourne, Australien, September 2007)。
权利要求
1.一种用于控制网络(10)中的异常检测的方法,在所述方法中对微处理器进行编程,以便-在第一步骤(1)中得出所述控制网络(10)中的通信数据;-在第二步骤O)中得出所述通信数据中按一定顺序的消息的时间序列和/或时间间隔并且将所述时间序列和/或时间间隔存储在训练数据(30)中;-在第三步骤(3)中利用所述训练数据(30)训练异常检测系统(50); -在第四步骤中得出所述控制网络(10)中的当前通信数据GO);和 -在第五步骤(5)中利用所述异常检测系统(50)检测所述当前通信数据GO)中的所述按一定顺序的消息的时间序列和/或时间间隔与所述训练数据(30)的偏差。
2.根据权利要求1所述的方法,-在所述方法中,当攻击者接管或使用者未经许可地改变所述异常检测系统(50)中的单元00)尤其是观察站或控制站、或者所述单元O0)尤其是观察站或控制站具有故障时, 所述第五步骤(5)中的所述异常检测系统(50)检测出偏差。
3.根据权利要求1所述的方法,-在所述方法中,将所述异常检测系统(50)作为以网络为基础的入侵检测系统来执行,并且所述通信数据以及所述当前通信数据GO)是网络流量数据,或-在所述方法中,将所述异常检测系统(50)作为以设备为基础的入侵检测系统来执行,并且所述通信数据以及所述当前通信数据GO)描述了设备、尤其是服务器的通信特性。
4.根据权利要求1所述的方法,-在所述方法中,在所述第二步骤O)中借助频繁情节挖掘、尤其是根据Marmila的算法、或借助概率方法、尤其是具有扩展的马科夫模型的方法来得出所述通信数据中的所述按一定顺序的消息的所述时间序列和/或时间间隔。
5.根据权利要求1所述的方法,-在所述方法中,所述异常检测系统(50)至少部分包括中枢网络(60)或支持向量机。
6.根据权利要求1所述的方法,-在所述方法中,所述控制网络是用于监视和控制、工业自动化或建筑自动化的网络。
7.根据权利要求1所述的方法,-在所述方法中,所述单元是观察站或控制站。
8.一种计算机可读的数据载体,-当计算机程序在计算机中运行时,在所述数据载体上存储实施根据上述权利要求中任意一项所述的方法的所述计算机程序。
9.一种计算机程序模块,-所述计算机程序模块在计算机中运行并且在此实施根据权利要求1至7中任意一项所述的方法。
全文摘要
为了检测例如用于监视和控制、工业自动化或建筑自动化的控制网络中的异常,采用了一种入侵检测系统技术(英文名称为“intrusion detection system”或IDS),从而对网络通信中按一定顺序的消息的时间顺序和时间间隔进行分析并且将其用来训练异常检测系统。通过获得按一定顺序的消息的时间顺序和节拍能够检测出设备的故障或所受的操纵,以及能够检测出在使用正规的、但却是被攻击者所接管的或有故障的观察站或控制站的情况下所进行的攻击,并且这些攻击无论是利用以内容为基础的方法(借助签名或字节序列分析)还是通过明显的数据通信增长均无法检测出。由此形成了进一步的安全屏障,该安全屏障仍能够对一个其控制网络已经被感染的技术设备进行监视并且(可能通过安全人员报警)来防止可能的破坏行为。
文档编号H04L29/06GK102577305SQ201080041207
公开日2012年7月11日 申请日期2010年8月12日 优先权日2009年9月21日
发明者克里斯托夫·施特尔曼, 延斯-乌韦·布瑟, 扬·克斯特纳, 迈克尔·蒙策尔特 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1