用于检测受损计算系统的系统与方法_3

文档序号:9672524阅读:来源:国知局
正确被分组,但头长度(IHL) 510本身并不被保留在方框320的输出中。
[0053]在方框330中,来自方框320的重组数据包(即,相关的信息)被按位转换为整数,从而产生对应于最初提供给处理300的信息子集的整数序列。在一个实施方案中,8位整数被使用。本领域的普通技术人员将理解IP和TCP网络分组包含小于8位、精确8位和超过8位长的字段。通过填充0到最显著输出位,跨度小于8位字段被转换为8位表示。例如,方框330变换比特“100”到“00000100”。T0S511和IP标记513 (图5),其分别为4位和3位字段,分别以这种方式被转换。跨度超过8位字段转换为多个8位段。例如,方框330变换比特 “0001001001001000” 到 “00010010” 和 “01001000”。数据内容 517,其跨度多于 8位的以这种方式被转换。
[0054]现在参照图7讨论方框320和330。图7示出IP网络分组的一部分。如上所述,在IP网络分组710中,T0S711和总长度712,除其他外,对于检测受损计算系统是有用的。因此,字段711和712被方框320保留并提供给方框330以转换为整数。重组数据包714表示由方框320保留的IP网络分组710的部分。方框330按位转换重组数据包714的内容为8位整数715、716和717。注意为简单起见,IP网络分组710只部分示于图7。在正常操作期间,方框320处理由方框310产生的全组的IP和TCP网络分组并且方框330依次处理由方框320保持的整组的IP和TCP网络分组。以这种方式,方框330产生的8位整数序列718含有整数“40183……”。可选地,8位整数序列718可以在长度上被限制为65536(8位)整数。
[0055]如这里所使用的术语“序列”描述了有序元素的列表,例如,整数。应当理解的是整数序列718内的元素顺序源于被方框310-320处理的双向网络通信的相关部分的排序和邻接。下面所讨论的响应在方框340-360的处理中被进一步被提取使之有助于检测未知系列网络通信的受损计算系统的存在。
[0056]在方框340中,距离函数是用来识别由方框330产生的整数序列的特性。该距离函数针对时间上邻近的整数序列被执行,这意味着由方框330 (基于来自方框320的一组网络数据包)产生的整数序列与由方框330(基于来自方框320的下一个相邻分组的网络数据包)产生的下一个相邻的整数序列进行比较。
[0057]例如字符串距离函数的常规距离函数是本领域公知的并且在此没有详细讨论。作为示例,常规的字符串距离函数可以被用来确定字符串“a b c”和“z b c”具有1的距离,因为字符串变化仅在前者的“a”被替换为后者的“z”,它代表了两个字符串之间的唯一区另IJ。由方框330产生的网络数据包的组合利用距离函数提供给自己进行比较,因为方框330生成整数序列,其可以被视为距离函数的单个元素。然而传统的字符串距离函数不提供足以用于检测受损计算系统的距离度量。例如,这两个字符串相差为1的距离的知识在本发明的上下文中提供了很少的有用信息。
[0058]在一个实施方案中,方框340执行自定义距离函数,如下所述,其产生支持检测受损计算系统的简化的整数序列。为了说明的目的,方框340的自定义距离函数将参考图8和9来讨论。图8示出了在一个实施方案中用于执行自定义距离函数的示例性过程800。图9示出了在当前实施方案中由示例性过程800进行处理的网络数据包的示例性组合。
[0059]转到图8,在方框810中,自定义距离函数标识出现在方框340(图3)产生的相邻一对整数序列内的整数。图9A示出了 910-919示例性整数序列。图9B示出了示例性整数“ 101”,它至少出现在910-911、911-912和912-913相邻对整数序列。(注意,为简单起见整数序列914-919未示出。)在方框810中,自定义距离函数还标识成对相邻整数序列中的所识别整数的第一个实例。图9C示出了 “101”的第一个实例被识别在910-911、911-912和912-913的相邻整数序列中。
[0060]在方框820(图8)中,自定义距离函数对齐在成对相邻整数序列中所识别的整数的第一实例。图9D示出了在910-911、911-912和912-913的成对相邻整数序列中“ 101”的第一个实例的校准。
[0061]在方框830 (图8)中,在某些条件下对于一对相邻整数序列,简化的整数序列可以被创建。对于成对相邻整数序列的组合如果一个或多个整数是共有的,那么简化的整数序列被创建(对于一对相邻整数序列):(i )在成对网络数据包的相邻组合中出现在相同的顺序,和(ii)在第一阈值距离内的成对网络数据包的相邻组合中具有位置。在一个实施方案中,第一阈值距离为4。如果被创建,简化的整数序列将包括满足如上所述的条件(i)和
(ii)的整数(相对于成对邻近的整数序列)。
[0062]图9E示出了当“101”的第一个实例是在910和911整数序列之间被对齐,整数“48”和“52”满足如上所述的⑴和(ii)条件。具体地,在910和911的两个整数序列中整数“101”、“48”和“52”以相同顺序出现。进一步,整数“48”出现在第一阈值距离内的910和911的两个整数序列中(4,在本实施方案中)。因此,如图9F中所示,简化的整数序列920被创建并且包括整数序列“101 48 52”。此外,如图9F所示,整数序列911和912的整数“101”、“48”和“52”也满足如上所述的条件⑴和(ii)。因此,简化的整数序列921被创建并且包括“101 48 52”整数序列。此外如图9F所示,整数序列912和913的整数“53”和“101”在也满足如上所述的条件(i)和(ii)。因此,简化的整数序列922被创建并且包括整数序列“53 101”。
[0063]对于出现在至少一对相邻整数序列内的其它整数,方框810-830重复执行。例如,整数“48”也出现在整数序列910-919之间的至少一对相邻整数序列。因此,对于8位整数“48”方框810-830被重复执行。
[0064]在方框830的实现中(这是在图3中方框340执行的示例性字符串功能),处理进行到方框350(图3)。在方框350中,在第二阈值距离内由方框330创建的网络数据包组合的简化的整数序列出现的频率被确定。第一和第二阈值距离可以是相同的也可以是不同的。在一个实施方案中,第二阈值距离为4。图10A示出了由方框330所创建的整数序列910-919。另外,图10B示出了出现在整数序列910-919中的简化的整数序列920-922(图9F)。如图所示,简化的整数序列920(“101 48 52”)出现在整数序列910-919的除了第八行的十行中(在示例第二阈值距离4的范围内)。因此,80%的频率与简化的整数序列920相关联。出于同样的原因,80%的频率与简化的整数序列921相关联。注意,简化的整数序列920和921没有出现在整数序列916的第二阈值距离内(4,在本实施方案中),因为整数“101”和“48”是被在网络数据包916的组合中的超过四个位置隔开。如图所示,简化的整数序列922( “53 101”)出现(在示例第二阈值距离4的范围内)在网络数据包910-919的十组的第三组范围内。因此,30%的频率与简化的整数序列920-921相关联。与简化的整数序列922相关联的频率被示于图10B中。这些识别在网络数据包组合的阈值距离内顺序显示的与简化的整数序列相关的频率的值可以由术语“置信度值”引用。
[0065]在方框360(图3)中,具有置信度值低于阈值置信度值的简化的整数序列都将被丢弃。在一个实施方案中,阈值置信度值介于80-90%之间。图10C示出了简化的整数序列922的丢弃。此外,简化的整数序列920和921 (其是相同的)被去重复以及维持为简化的整数序列1030。对于本发明的目的,简化的整数序列1030可以由术语“元表达式”引用。
[0066]元表达式1030表示通过网络通信足以检测受损计算系统的存在的信息。即使使用与被提供作为初始输入到过程300 (图3)的被已知威胁不同的数字安全威胁破坏的计算系统,元表达式1030足以检测受损计算系统。回想一下输入到过程300 (图3)的是一系列被用来获取元表达式的网络数据包,包括:(i) 一个计算系统受损之前两个计算系统之间正常通信,(? )成功地破坏了一个计算系统的已知威胁的引入以及(iii)破坏计算系统之后涉及的通信,其包含来自受损计算系统的特性散发物。
[0067]对于运行不同的操作系统和应用程序服务的其它计算系统过程300 (图3)可以被重复。例如,使用包含基于威胁A的攻击以显出基于SOLARIS的服务器上的SSH漏洞的网络通信,过程300可以被执行,使用包含基于威胁B的攻击以显出基于WINDOWS的计算机上的JAVA漏洞的网络通信,过程300可以被执行。实际上,对于操作系统和应用程序服务的不同组合,过程300可以被重复执行以确定可用于检测后面的操作系统和应用程序服务的不同组合所产生的破坏的元表达式。
[0068]图11示出了示例元表达式1101-1103。每个元表达式1101-1102可用于检测网络中的受损计算系统的存在。相比于传统的计算机安全技术这些元表达式的结构和最小尺寸提供了巨大的计算效率。
[0069]3.运行时间
[0070]现在讨论使用过程300所提供的元表达式检测受损计算系统的效率。回想一下过程300(图3)是可以由图1的方框110执行的示例性UTMS训练过程。因此,在完成过程300(图3)后则处理前进到图1的方框120。
[0071]在方框120中,UTMS利用元表达式来分析网络通信并检测网络通信是否包含标识网络中受损计算系统存在的特性散发物。为简单起见,当缺少标识受损计算系统存在的特性散发物时一组网络数据包被认为是“正常”。与此相反,当包含标识受损计算系统存在的特性散发物时一组网络数据包被认为是“异常”。
[0072]方框120的处理开始于两个网络节点之间的一系列双向通信的分组。为了这个目的,可以使用方框310 (图3)的技术。接下来,为了相关信息,网络数据包的组合被过滤。为了这个目的,可以使用方框320 (图3)的技术。接着,形成网络通信新组的重组数据包(包含相关的信息)将被转换成整数序列。在运行时间所使用的整数比特大小应该与训练期间所使用的整数比特大小是相同的。在一个实施方案中,整数是8位的大小。为了将重组数据包转换为整数序列,可以使用方框330 (图3)的技术。
[0073]方框330产生的整数序列与一个或多个元表达式相比较以确定该网络通信是正常还是异常。当两个标准都满足时被分析的一组网络通信被认为是异常的:(i )元表达式中的每个整数都存在于对应网络通信的整数序列中,和(ii)每一整数在相应整数序列和元表达式中以相同顺序出现。值得注意的是,在第一个实例中UTMS可以得出推断一组网络数据包缺少特性散发物(并因此正常),其条件为(i )不保持为真,这意味着UTMS不必为了确定该组的网络数据包是正常
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1