检测和反击企业网络中的恶意代码的制作方法

文档序号:7893331阅读:219来源:国知局
专利名称:检测和反击企业网络中的恶意代码的制作方法
技术领域
本发明涉及计算机病毒和其他恶意计算机代码。本发明尤其涉及检测和反击一个企业计算环境中的病毒和其他恶意代码。
背景技术
在当今的信息时代,计算机和其他信息技术(IT)在几乎所有企业(例如,法人实体、商行、公司、机构、一个公共和政府团体、部门、代理处、慈善团体、其他组织等)的运转中都扮演着相当重要的角色。在许多情况下,企业开放其(至少一部分)计算机网络和信息系统,以便供应商、伙伴、成员、顾客和其他组织访问,从而促进数据和信息的交换。一个企业网络可被配置为以下网络中的一个或这些网络的组合一个局域网(LAN)、一个广域网(WAN)、一个内联网、一个通过远程访问的虚拟个人网络(VPN)、一个互联网或Internet等。此外,企业用户通常被提供有调制解调器或对一个外部网络的宽带访问(可能通过其企业网络),以便从他人获取数据/信息。
由于一个企业网络通常可提供一个开放环境,恶意软件(例如病毒、特洛伊、蠕虫和其他恶意计算机代码)的攻击是对计算机和企业信息系统的其他元件的一个持续和增长的威胁。一个企业计算环境中的用户除非被系统警告感染,否则通常不知道其计算机被恶意代码感染了。因此,当企业环境中的一台计算机被恶意代码攻击时,感染通常迅速在整个企业网络内扩散,到达其他计算机和企业资源。在大多数情况下,一个恶意代码感染一个网络环境的时间越长,越难将感染从该环境根除。
已知存在多种类型的计算机病毒。驻留内存的病毒通常将其自身附着在可执行文件上,并在可执行文件运行时加载到一台计算机的内存中。一旦到了内存中,则病毒可接管计算机的操作系统,从而获取对受限资源(例如安全措施)的访问权限。
引导扇区病毒用病毒代码覆盖包含了系统引导时执行的代码一台计算机的硬盘的一个引导扇区,以使得计算机引导(例如,计算机启动/重机启动时)病毒总被加载到计算机的内存中。一旦存在于计算机的内存中,则病毒可迅速在计算机内扩散。
某些病毒躲藏在一台计算机的文件系统中,并通过在一个被感染的程序运行时感染其他程序/文件而在文件系统中复制自身。某些文件病毒可将自身复制到基本的系统文件,从而获取对被保护资源的访问权限,并使自己更难被删除。
其他类型的病毒被写入到特定计算机程序(例如,字处理程序、电子数据表程序等)的宏语言中,并且在程序运行、通过程序访问一个文档或者当一个用户在程序内执行一个预定的操作(例如一个特定的键击或菜单选择时)被触发。
某些病毒时多形态的(例如,周期性地更改其签名)以便它们能够逃避扫描病毒签名的签名扫描检测方法。混合或多方病毒具有多种类型的恶意代码的特征。
某些恶意代码具有类特洛伊的特征。与传说中的木马一样,特洛伊通过假装是某种它不是的东西来运行。通常,特洛伊伪装成有用的或娱乐软件,同时携带在为运行程序的用户提供的权限下在目标计算机上执行的病毒或恶意代码。特洛伊通常不直接攻击主机,但是却为随后的更严重的攻击提供了一个后门。
一个蠕虫是一段软件,它通常在没有任何人为干预(例如打开一个文件、运行一个程序等)的情况下,在计算机网络中传播自身。通常,它通过利用在目标计算机上运行的一般使用的网络软件中的缺陷或被忽略的特征来感染一个网络。
常规安全工具通常针对已知的恶意代码,但是对于不断增长的新病毒和其他恶意代码流却无能为力。这种安全工具通常忙于追逐应对新恶意代码的繁殖。大多数常规安全工具需要例如通过二进制补丁和/或算法优化,来重新调整或重新配置,以便增强工具检测和应对新的安全威胁的能力。除非工具被更新以对付一个新的威胁,否则工具都是不称职的,会将企业网络暴露在威胁所引起的混乱之中。
从新安全威胁的多量性和不断更改的特征来看,需要先发制人的安全工具,它在一个安全漏洞发生之前就处于运行中。
先发制人的安全性包括识别一个潜在的威胁。大多数常规的安全机制依赖检测固定的、已知的病毒签名或频繁使用的用于攻击安全缺陷的技术。这种检测机制使用病毒签名文件和/或固定安全策略规则。但是,在可检测新的恶意代码之前必须适当更新签名文件和/或策略规则。
常规安全措施将恶意代码视为一个设计为针对一台特定机器的原子执行模块。但是,正如上文建议的,大多数恶意代码是被设计为从一台目标机器传播到另一台,并且许多恶意代码是自传播的由于恶意代码通常不是一个原子单元,如果一个软件病毒已经渗透到了企业环境中,则它应该在几台机器上进行相似的操作。因此,将检测机制本地化到一台机器是不够的。此外,大多数常规的安全工具具有一个处理延时,这使得只能在攻击已在企业环境中充分传播以后才能进行对一个恶意攻击的检测和干预。
虽然某些企业安全工具能够同步整个企业网络中的安全策略和/或收集客户反馈,但是它们不会同步从客户机接收到的数据以监控大规模客户行为,而这可以是诊断整个网络环境中大规模的可疑行为的一个有用的安全信息源。
预防、阻止和隔离恶意攻击也是一个先发制人的安全制度的一部分。常规的阻止程序通常依赖于提供对一个危机情况的有限即时解决方案的固定方法。此外,一个网络环境中的这些措施通常依赖于一个固定的远程管理协议,因此如果一个未预期到的攻击要求协议不能执行的操作,则严重限制了功能。
因此,需要新的、更灵活的标识和反击新的计算机病毒和恶意代码的方法。

发明内容
本发明提供了一种系统,用于检测和反击一个企业网络中的已知和未知的恶意代码。在一个实施方式中,本系统包括一台服务器和通过企业网络连接到服务器的多台本地机。每台本地机包括一个模式识别处理器,它监控本地操作,以检测非常规的本地行为模式,并且在检测到非常规的本地行为模式后生成一个警报。服务器监控并分析来自多个本地机的非常规行为警报。如果在一个相应的时间段中,从至少一个阈值数目台本地机接收到相似的警报,则服务器根据对非常规行为警报的分析选择一个或多个对策操作,并将选中的将由本地机执行的对策操作通信给本地机。
本发明还提供了一种检测和反击一个具有一个服务器和多个本地机的企业网络系统中的恶意代码的方法。在一个实施方式中,本方法包括(a)监控每台本地机上的本地操作,以检测非常规的本地行为模式,并且如果在本地机检测到非常规的本地行为模式,则从本地机生成一个非常规行为警报到服务器,以及(b)在服务器处分析来自本地机的非常规行为警报,并且,如果在一个相应的时间段中从至少一个阈值数目台本地机接收到相似的警报,则根据对非常规行为警报的分析选择一个或多个对策操作,并且将选中的对策操作通信给本地机。


从以下参照附图的详细说明中将更容易理解本发明的特征,附图中图1A显示了根据本发明的一个实施方式的一个用于检测和反击一个企业网络中的恶n意代码的系统的框图。
图1B显示了根据本发明的另一个实施方式的一个用于检测和反击一个企业网络中的恶意代码的系统的框图。
图2A显示了根据本发明的另一个实施方式的本地机群的示意图示。
图2B显示了在对应于图2A的实施方式中的一个本地机群中的时序的示意图示。
图3显示了根据本发明的一个实施方式的一种检测和反击一个企业网络中的恶意代码的方法的流程图;以及图4显示了根据本发明的另一个实施方式的一个用于检测和反击一个企业网络中的恶意代码的框图。
具体实施例方式
本申请提供了检测和反击一个企业网络中的已知和未知恶意代码的系统和方法形式的工具。检测恶意代码可通过监控整个企业内的非常规操作完成,其中非常规操作在某些情况下可能归结于新的未标识的代码在运行。工具可实施在存储在一个计算机可读介质上和/或通过一个计算机网络或其他传输介质传输的一个或多个计算机程序。
工具可与例如企业管理软件集成,以便更有效地检测对全企业的安全性的危及。企业工作站/计算机(这里也称为“本地机”)通常配置相似(例如可由企业政策指定)。大多数企业用户使用相似的工具集合,并且具有相似的软件使用习惯。企业用户通常分组成逻辑集合,例如提供相同的功能(例如,管理、市场、支持等)。逻辑分组使它们彼此更加不同。由于彼此不同,因此每个群组可以自适应一个不同的配置文件,以被一个模式识别处理器训练,如下所述。当几个工作站偏离其正常操作路径时,则可推断出在整个企业环境中发生了某些非常规的事。
图1A中显示了根据一个实施方式的一个用于检测和反击一个企业网络中的恶意代码的系统。系统1包括一台服务器3和本地机2-1至2-N,它们通过网络5连接到服务器。每台本地机(2-1至2-N)包括一个模式识别处理器2a。模式识别处理器监控本地操作,以检测非常规本地行为模式,并且在检测到一个非常规本地行为模式后生成一个警报。服务器3监控和分析来自本地机(2-1至2-N)的非常规行为警报。如果在一个相应的时间段中,从至少一个阈值数目台本地机接收到相似的警报,则服务器根据对非常规行为警报的分析选择一个或多个对策操作,并将选中的将由本地机执行的对策操作通信给本地机。
一个企业环境中的未知性质的(即没有已知签名或行为模式的)恶意代码配置可通过模式识别技术(例如神经网络、群集技术、判决树技术等)检测。例如,本地机上的本地模式之外行为被连续或以短时间区间周期性地监控,来自通过企业网络连接的多个本地机的结果被同步,以便识别大规模的非常规行为模式。
例如,模式识别处理器可监控对本地操作系统的调用。可提供一个信号监控器以保存一个本地操作系统调用日志。
每台本地机进一步包括一个远程控制核心,它包括一个用于与服务器通信的网络中继。非常规行为警报通过网络中继从本地机通信给服务器。虽然在一个本地机检测到非常规行为将触发向网络发布一个警报,但对非常规行为的附加确认将触发整个网络中的干预措施。在确定检测到恶意代码后,一个抽象,远程控制核心可被用于迅速配置更改、补丁或者任何可能的处理本地机处的威胁需要的操作。远程控制指令可由本地机通过网络中继接收。
系统可进一步包括一个群集管理器。非常规行为警报通过群集管理器从多个本地机通信到服务器。
服务器可以是一个用于监控企业网络中的可疑活动的专用系统。对策操作可包括通知企业内的管理工具,指示本地机关闭一个或多个与非常规行为警报有关的功能,和/或通过电子邮件警告用户。从服务器传输到本地机的一个对策操作可由库名称和函数调用或者由工具名称标识。
图1B中显示了根据一个客户机-服务器范例的一个用于检测和反击一个企业网络中的恶意代码的系统。但是应理解的,本申请的工具不限于一个客户机-服务器程序模型,而是可用于对等网络系统、消息传输系统以及其他程序模型。
系统10包括一台服务器14和位于多个本地机11-1至11-N上的客户机12,这些本地机通过网络15连接到服务器。每个客户机12可包括一个模式识别处理器12a,并且可选地包括一个操作系统信号监控器12b和一个远程控制核心12c。包括模式识别处理器、信号监控器和远程控制核心的客户机12,可以是存储在相应的本地机(11-1...11-N)上或者通过一个计算机网络或其他传输介质传输到本地机的一个计算机可读介质上的计算机程序。例如,客户机可以是对一个操作系统内核的紧密扩展。
模式识别处理器2a或12a监控相应的本地机上的操作,例如对本地操作系统13的调用。模式识别处理器可采用神经网络或其他人工智能技术来检测本地机内的非常规行为模式。例如,该方法可包括神经网络、基于规则和状态分析技术的一个组合,例如共有美国专利5796942、5734796、6134537、6212509和6327550号,以及共有的待审的标题为“处理混合的数值和/或非数值数据”的美国专利申请60/374064、标题为“自动神经网络模型生成和维护”的美国专利申请60/374020、标题为“通过分级成像查看多维数据”的申请60/374024、标题为“用于发现一个系统内的进化改变的方法和设备”的申请60/374041、标题为“通过本地网络进行的自动模型维护”的申请60/373977,以及标题为“将神经网络用于数据采掘”的申请60/373780,这些专利申请在此处被完全包含进来作为参考。
模式识别处理器可连续监控本地行为模式,或者按照时间周期地操作,其中最好每个时间区间不多于几分钟。在时间区间末尾,模式检测处理器分析区间内的行为模式,并且如果检测到一个非常规模式,则将警报发送给远程控制核心,其中包含最新发现。分析还可包括考虑先前的时间区间记录的行为模式。
在一个模式识别处理器监控对本地操作系统13的调用的实施方式中,信号监控器12b可以进入本地机上的操作系统,以旁听操作系统调用(例如,文件输入-输出、网络输入-输出,内存管理等)。信号监控器模块可以紧密融合到操作系统中,例如,可作为操作系统内核的一个扩展。通过对操作系统的这种联系,信号监控器模块监控和记录无害的或恶意的操作系统调用活动。模式识别处理器12a周期性地分析操作系统调用记录以检测任何非常规模式。
模式识别处理器可被训练为适用于检测其他非常规和/或恶意或病毒行为模式。非常规行为模式可对应于,例如,已知或未知病毒、特洛伊、蠕虫或其他恶意代码(例如具有内h存驻留、文件和/或宏病毒特征的)。模式识别处理器还可以检测内部恶意操作,例如对几台企业机的疏忽性的或直接攻击性的“删除”操作。
除模式识别技术外,模式识别处理器可使用多种检测方法,例如完整性检查(例如,校验或检测一个程序的文件大小的改变)、多态代码检测、中断监控(监控对受限系统资源的访问)、统计分析、签名和/或启发式扫描等。某些示例性的病毒/恶意代码检测方法在2001年7月14日提出申请的美国专利申请09/905342、09/905340、09/905533、09/905341、90/905532和09/905343、于2001年3月30日提出申请的09/823673以及于2001年11月30日提出申请的60/334420中描述,这些专利申请在此处均被包含进来作为参考。
远程控制核心12c提供了一个网络中继,用于将本地访问的信息传输到服务器,并且用于从服务器接收指令,用于本地工作站的远程管理。远程控制进程可包括一个管理协议,用于本地安全措施。本地保护性的(或干预性的)安全措施可包括,例如,阻止对选中文件的任何访问、对一个可疑文件设置一个隔离以防止复制可疑文件(到一台服务器、另一个存储介质、另一个域等)、防止从一台本地机到其他机器的文件传输和/或其他通信,对一个特定用户设置一个隔离以限制用户对本地和/或企业资源(例如,文件系统)的访问权限、补救一个受感染的文件等。
最好提供一个抽象控制机制,它符合系统的软件特征(例如,操作系统、应用软件、工具、动态链接库等的安装的代码的任何要求),以便实现可远程调用的阻止和/或干预功能。另外最好控制机制不被通信协议所限,以便最小化通信开销。远程管理可由服务器通过指定要执行的操作(例如,库名称和函数调用、工具名称、参数等)来执行。然后远程客户机动态地执行操作。抽象远程管理核心使得能够远程指定系统支持的操作。从而,可最小化在远程控制核心处的固定协议限制。
实际上可指定和实现任何远程操作,以便在展开更常规的安全策略之前关闭一个安全缺口。例如,如果一台服务器从一个群集中的预定数目台(例如三台)或更多台本地机接收到关于对一个限制访问的系统资源的可疑的操作系统调用的警报,则服务器可向群集中的每台机器广播,以通过其远程控制核心指示机器(a)在一个指定的时间段中禁止对目标系统资源的访问,(b)同时在仿真模式中运行以标识在所述时间段期间操作系统调用的源(和其他细节)。
通过群集一个局域网(LAN)中的几台本地机,客户机可以容易地分组成一个同步网络。可递归使用一个或多个群集管理器以便将可疑行为模式流发送给服务器14(图2A和2B)。一个群集管理器可驻留在一台本地机上。本地机可将其最新发现的一个压缩签名作为一个警报发送给群集管理器。
一台本地机可以是任何已知的计算平台(例如,一台IBM兼容的或Macintosh个人计算机、一台工作站、一台手持计算机或计算设备,具有一个嵌入式处理器和操作系统的其他设备等)。LAN可以是常规的电缆连接的或无线的(例如,遵循IEEE802.11b标准)。
一台专用机器可用作服务器14。通过收集整个企业内的警报,服务器能够监控全局可疑活动。服务器可使用一个基于规则的方法(和/或其他人工智能),以确定何时在本地机上采取对策操作,以及当遇见特定阈值个相似的警报时采取的对策。
例如,服务器可进行一个或多个以下操作通知整个企业内(用户和资源)的管理工具,例如,限制用户和/或资源访问;通过电子邮件(或广播)向所有用户发布一个警告;指示每台(可能)受感染的机器关闭;查明恶意代码通过网络的确切流动;以及通过经由其远程控制核心向客户机广播来提供一个关于如何防卫以便威胁侵害的迅速的解决方案(例如,禁用一个目标软件,例如一个电子邮件程序或一个文字处理程序,或者关闭一个特定的TCP/IP端口)。
参考图1-3说明了根据本发明的一个实施方式的一个检测和反击一个企业网络中的恶意代码的方法。一台本地机2或11的模式识别处理器2a或12a监控本地操作,例如对本地操作系统的调用,以检测本地机处的非常规行为模式(步骤S31)。可选地,信号监控器12b可记录本地机处的操作系统调用(例如,文件输入-输出调用、网络输入-输出调用、内存管理调用等)以维持一个本地操作系统调用记录。在任何情况下,如果模式识别处理器检测到非常规的本地行为模式(步骤S32),则处理器生成一个非常规行为警报(步骤S33)。警报通过一个远程控制核心12c的网络中继以及可选地一个群集管理器从本地机传输到服务器3或14。同时,服务器分析来自本地机的非常规行为警报(步骤S34)。服务器可以是一个专用系统,它被分配了监控企业网络中的可疑活动的任务。如果在一个相应的时间段中相似警报的数目超过一个阈值数目(例如,5分钟内5个警报,10分钟内12个警报等)[步骤S35],则服务器根据警报的性质选择一个或多个对策操作,并且将对策操作通信给客户机(步骤S36)。对策操作可包括通知整个企业内的管理工具,指示关闭一个或多个本地功能和/或通过电子邮件警告用户。对策操作可由库名称和函数调用、工具调用等标识。
对未知恶意代码(例如,病毒、蠕虫、特洛伊、嵌入的脚本或任何其他行为的软件病毒)的先发制人的检测和反击可通过利用模式识别方法(例如神经网络和其他人工智能)紧密跟踪非常规系统行为来获得。在上述实施方式中,数据可在网络化的企业工作站(这些工作站可能是群集的)上同步以检测任何可能意味着一个新病毒的分布广泛的非常规行为。如果检测到类似病毒的非常规行为,则一个集成的抽象的远程管理核心可被用来执行不工作的对策,以阻止病毒,以及进行防护以免其进一步传染。
根据另一个实施方式(图4),数据可从本地机(42-1至42-N)被收集,并且被一个中央位置(服务器41)中的一个模式识别处理器41a处理。在一个中央位置进行数据的收集和处理可增加网络流量。但是,可通过使用一个简化的检测配置(例如,通过减小客户机数据收集的规模)来减轻增加的流量。
虽然最好上述实施方式中的服务器是一个专用站,但是一个具有其他功能和职责的站也可用作企业监控器。此外,企业网络中的每台机器可具有服务器的功能,以及客户机的功能。警报可作为一条消息从一台机器(分组地或独立地)传递到下一台。当一台机器接收到一条包含阈值数目个警报的消息时,它可调用服务器功能,以分析警报,并且向本地机广播一条指令,以执行本地机远程控制核心上可用的一个或多个对策。
此外,可在不背离发明精神或附录的权利要求书的范围的情况下,在示例性的实施方式上引入许多其他变体。不同的描述性实施方式的元件和/或特征可在本发明和附录的权利要求书的范围内彼此结合和/或彼此替换。
例如,模式识别处理器不必限于检测非常规操作系统调用。可以为每个安全缺口而不是每个非常规安全缺口生成一个警报。这种检测方案容易实现得多。但是,会产生更多虚假警报。
在阅读了2002年4月17日提出申请的美国临时申请60/373135后,具有本领域一般技术者可很容易了解到其他变体,该申请在此处被完全结合进来作为参考。
权利要求
1.一个用于检测和反击一个企业网络中的恶意代码的系统,包括一台服务器;以及多台通过企业网络连接到所述服务器的本地机,每台本地机包括一个模式识别处理器,模式识别处理器监控本地操作,以检测非常规的本地行为模式,并且在检测到一个非常规本地行为模式后生成一个警报,其中服务器监控和分析来自多台本地机的非常规行为警报,并且,如果在一个相应的时间段中,从至少一个阈值数目台本地机接收到相似的警报,则服务器根据对非常规行为警报的分析选择一个或多个对策操作,并将选中的将由本地机执行的对策操作传输给所述多个本地机。
2.权利要求1的系统,其中模式识别处理器监控对本地操作系统的调用。
3.权利要求2的系统,其中每台本地机进一步包括一个信号监控器,并且信号监控器保存一个本地操作系统调用日志。
4.权利要求1的系统,其中每台本地机进一步包括一个远程控制核,其包括一个用于与服务器通信的网络中继,非常规行为警报通过网络中继从本地机传输给服务器,并且远程控制指令通过网络中继被本地机接收。
5.权利要求1的系统进一步包括一个群集管理器,其中非常规行为警报通过群集管理器从多个本地机通信到服务器。
6.权利要求1的系统,其中服务器是一个用于监控企业网络中的可疑活动的专用系统。
7.权利要求1的系统,其中对策操作包括通知整个企业的管理工具。
8.权利要求1的系统,其中对策操作包括指示所述多个本地机关闭一个或多个与非常规行为警报有关的功能。
9.权利要求1的系统,其中被服务器传输给所述多个本地机的一个对策操作是由库名称和函数调用标识的。
10.权利要求1的系统,其中被服务器传输给所述多个本地机的一个对策操作是由工具名称标识的。
11.一种用于检测和反击一个具有一台服务器和多台本地机的企业网络中的恶意代码的方法,包括监控每台本地机上的本地操作,以检测非常规本地行为模式,并且如果在本地机处检测到一个非常规本地行为模式,则从本地机向服务器生成一个非常规行为警报;以及在服务器处分析来自多个本地机的非常规行为警报,并且,如果在一个相应的时间段中,从至少一个阈值数目台本地机接收到相似的警报,则根据对非常规行为警报的分析选择一个或多个对策操作,并将选中的对策操作通信给所述多个本地机。
12.权利要求11的方法进一步包括监控对本地操作系统的调用。
13.权利要求12的方法进一步包括保存一个本地操作系统调用日志。
14.权利要求11的方法,其中对策操作包括通知整个企业的管理工具。
15.权利要求11的方法,其中对策操作包括指示所述多个本地机关闭一个或多个与非常规行为警报有关的功能。
16.权利要求11的方法,其中被服务器传输给所述多个本地机的一个对策操作是由库名称和函数调用标识的。
17.权利要求11的方法,其中被服务器传输给所述多个本地机的一个对策操作是由工具名称标识的。
18.一个系统包括一个处理器;以及一个可由系统读取的程序存储设备,它有形地实现一个可由机器执行以执行权利要求11的方法的指令的程序。
19.一个可由一台机器读取的程序存储设备,它有形地实现一个可由机器执行以执行权利要求11的方法的指令的程序。
20.实现在一个传输介质中的一个计算机数据信号,它实现了可由一台计算机执行以执行权利要求11的方法的指令的程序。
全文摘要
提供了一个用于检测和反击一个企业网络中的恶意代码的系统。一个模式识别处理器监控通过一个企业网络连接的多台本地机上的本地操作以检测非常规本地行为模式。在检测到一台本地机上的一个非常规本地行为模式后生成一个警报。来自多台本地机的非常规行为警报被分析。如果在一个相应的时间段中,从至少阈值数目台本地机接收到相似的警报,则根据对非常规行为警报的分析选择一个或多个对策操作。选中的对策操作被通信给本地机并被本地机执行。
文档编号H04L12/66GK1647483SQ03808403
公开日2005年7月27日 申请日期2003年4月15日 优先权日2002年4月17日
发明者雅隆·克卓恩 申请人:计算机联合思想公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1