一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

用于识别主机设备中数据篡改的系统和方法与流程

2022-06-01 20:24:16 来源:中国专利 TAG:


1.本发明大体上涉及计算机安全领域;更具体地,涉及用于识别主机设备中数据篡改的方法和系统。


背景技术:

2.随着信息技术的发展,对计算机设备的依赖与日俱增。与此同时,计算机设备正在变得易受攻击,从而需要受到保护,免受如病毒、特洛伊木马、蠕虫、间谍软件和其它类型的恶意软件等恶意攻击。通常,攻击者可能会试图更改主机设备中操作系统的系统文件(即篡改数据)。在主机设备中,在攻击期间,攻击者通常可能希望加固所做的更改,使得这些更改在重新启动期间持续存在。此外,攻击者可能会尝试删除与攻击本身和攻击期间执行的操作相关的任何日志。例如,此类操作可能包括加固在注册表中对操作系统所做的更改。
3.用于检测设备中数据篡改的传统技术依赖于设备的操作系统。例如,在某些操作系统上钝性(blunt)修改事件日志会生成事件指示,例如清除事件日志、修改系统时间或提升权限。这些修改可通过内置在大多数操作系统中的事件日志审计查看,或通过第三方获取。在这种情况下,通常,安全研究人员和系统管理员可以识别事件id不在序列内,或包含无效信息,从而指示修改。但是也有一些可用工具,如“danderspritz”,可以对事件日志进行无痕修改。此外,在事件仍然存在于磁盘上的情况下,甚至有工具可以恢复该事件。但是,需要说明的是,此类审计工具在主机操作系统上运行,这使它们容易受到攻击者的攻击,即除了实际更改之外,还可以修改或“欺骗”审计机制,以使其注意不到更改。
4.例如,操作系统内置有事件日志和注册表的审计工具,这些审计工具可以识别钝性事件,如清除事件日志或修改系统时间,但可以删除单个事件的各类工具可以绕过这些审计工具。在操作系统上,可以使用文件属性保护系统日志。如果在linux系统的启动脚本内使用名为“lcap”的工具,甚至可以使这些属性不可变。这种方法的问题是,它对篡改底层存储很敏感,即对识别系统日志的物理位置,并对存储执行更改很敏感。
5.已知一些其它工具,如“tiny watcher”和“mj registry watcher”,这些工具可以监控并在更改注册表时警报。但是,这些工具也有缺点,因为在注册表更改时,这些工具依赖操作系统调用它们,这意味着它们容易受到攻击者干扰其操作,例如损坏第三方工具可执行文件,使这些工具无法正常工作,或修改windows事件日志或事件记录器以隐藏对更改的审计。此外,fox-it(www.fox-it.com)利用当前工具只修改指向事件的元数据,而不修改事件本身这一事实提供了一种用于恢复事件的工具。但是,如果攻击将事件完全从主机设备的存储中删除,该工具可能就无法起作用。
6.通常,由于上述所有工具都驻留在被攻击的系统上,所以攻击者可以绕过这些工具。因此,根据上文论述,需要克服与用于识别数据篡改的传统技术和方法相关联的上述缺点。


技术实现要素:

7.本发明寻求提供一类用于识别主机设备中数据篡改的方法、设备和计算机程序产品。本发明寻求提供一种工具的现有问题的解决方案,这些工具依赖于作用于系统当前存储的工具来恢复或审计系统日志、事件日志和windows注册表。本发明的目的是提供一种至少部分解决现有技术中遇到的问题的解决方案,该解决方案改进了使用备份服务来识别对操作系统修改和日志记录的修改和修改恢复的方法和系统,在系统内不容易绕过。
8.本发明的目的是通过所附独立权利要求书中提供的解决方案实现的。本发明的有利实现方式在从属权利要求中进一步定义。
9.在第一方面,本发明提供了一种用于识别主机设备中数据篡改的方法,其中,所述方法包括:在几个顺序时间点接收备份系统中主机设备的备份;从所述接收到的所述主机设备的备份中提取数据;将所述接收到的备份的所述提取数据存储在所述备份系统的事件数据库中;扫描所述接收到的备份的所述存储数据,以检测所述主机设备中的所述数据篡改的事件;发出所述检测到的事件的指示。
10.第一方面的方法提供:备份系统以规律的时间间隔从主机设备获取备份,以便具有主机设备的可跟踪视图,以便检测由主机设备上的威胁引起的任何更改。一旦检测到威胁,备份系统就会通知主机设备并将其恢复到最后的健康状态。这样一来,备份系统就能够对威胁进行根本原因分析,以确保相同的威胁不会在主机设备中再次发生。
11.在第一方面的一种实现方式中,所述数据的提取通过以下方式进行:激活所述主机设备的作为虚拟机的所述接收到的备份,并从所述激活的虚拟机中提取所述数据。
12.虚拟机提供单独的系统来独立执行扫描,以检测主机设备中的数据篡改。虚拟机上的执行不容易受到主机设备上被篡改数据的影响。因此,虚拟机提供了一个在系统内不容易绕过的安全环境。
13.在第一方面的一种实现方式中,提取所述数据包括提取所述主机设备的事件日志的副本和所述主机设备的注册表的副本。
14.需要说明的是,主机设备的事件日志和注册表作为主机系统中所做更改的记录。对事件日志和/或注册表的任何未经授权的更改都是数据篡改的指示,因此,主机设备的事件日志的副本和主机设备的注册表的副本可用于识别数据篡改。
15.在第一方面的一种实现方式中,检测所述事件通过以下方式进行:比较在所述几个顺序时间点中的一个时间点所述备份的所述存储数据的扫描结果与在所述一个时间点之前的某个时间点所述备份的所述存储数据的扫描结果之间的备份差异。
16.通过比较在一个时间点备份的存储数据的扫描结果与在所述一个时间点之前的某个时间点备份的存储数据的扫描结果之间的备份差异,检测主机设备的事件日志和/或注册表的任何未经授权的更改,继而可用于识别主机设备中的数据篡改。此外,备份差异的比较可以确定主机设备在数据篡改事件之前的最后健康状态,并且该信息可用于将主机设备恢复到数据篡改事件之前的状态。
17.在第一方面的一种实现方式中,检测所述事件通过以下方式进行:比较在第一两个顺序时间点第一对所述备份的所述存储数据的扫描结果之间的第一差异,并比较在第二两个顺序时间点第二对所述备份的所述存储数据的扫描结果之间的第二差异。
18.比较备份的第一差异和第二差异可以识别攻击模式,并提供与每个时间点攻击对
主机设备所做的更改相关的附加信息。
19.在第一方面的一种实现方式中,所述方法还包括:使用所述第一差异检测所述主机设备的注册表中攻击的加固,并使用所述第二差异检测所述主机设备的所述注册表中所述攻击的隐藏。
20.通常,在网络攻击期间,攻击者会尝试加固所做的更改,以便这些更改在重新启动期间持续存在,此外,还可能会尝试删除提供攻击本身以及攻击期间执行的操作的证据的任何日志。通过顺序比较,可以通过比较主机设备的注册表和事件日志中的更改来识别此类事件在主机设备中发生的时间。
21.在第一方面的一种实现方式中,检测所述事件包括检测以下各项中的至少一种:所述主机设备的操作系统注册表的更改;所述主机设备的事件日志的更改;所述主机设备中事件的更改;所述主机设备的系统时间的修改;指向所述主机设备中所述事件的元数据的修改;所述主机设备中的恶意软件;所述主机设备中的恶意活动;所述主机设备的所述注册表中的攻击的加固;在所述主机设备的所述系统注册表中进行的更改的加固;所述主机设备中的所述攻击的隐藏;以及权限提升。
22.主机设备的所列元素在攻击期间最容易被更改,因此与这些元素中的任何一个的未经授权的更改相关的检测事件可用作主机设备中数据篡改的可靠指标。
23.在第一方面的一种实现方式中,扫描在几个顺序时间点接收的所述备份的所述存储数据周期性或连续地进行。
24.周期性或连续扫描备份中的存储数据,可以实时或接近实时地检测主机设备中的任何攻击或数据篡改。此外,这种周期性或连续扫描能够识别数据篡改事件在主机设备中发生的顺序时间点,并且可以确定,从而恢复主机设备在数据篡改事件之前的状态。
25.在第一方面的一种实现方式中,周期性扫描所述存储数据包括扫描所述每个接收到的备份的所述存储数据。
26.扫描每个接收到的备份有助于接近实时地识别主机设备中的数据篡改。
27.在第一方面的一种实现方式中,连续扫描所述数据包括在一段时间内扫描所述接收到的备份的所述存储数据。
28.在一段时间内扫描接收到的备份的存储数据可以确保确定数据篡改事件,同时限制处理资源的消耗。
29.在第一方面的一种实现方式中,所述方法还包括构建攻击配置文件。
30.通过分析攻击对主机设备所做的更改,可以构建其攻击配置文件。构建攻击配置文件是为了执行攻击的事后分析和性能分析,以获取攻击的根本原因分析,以便可以使主机设备(和其它设备)免受类似类型的攻击。
31.在第一方面的一种实现方式中,所述方法还包括启动恢复所述被篡改数据。
32.备份系统具有在攻击之前数据的原始副本,通过使用该备份系统恢复被篡改的数据,可以将主机设备恢复到攻击前的状态。
33.在第二方面中,本发明提供了一种用于识别主机设备中数据篡改的系统,其中,所述系统包括一个或多个处理器;可由所述一个或多个处理器访问的存储器,其中,所述存储器包括数据库管理系统、数据提取引擎、扫描引擎;并且,所述系统用于发出所述检测到的事件的指示。
34.第二方面的系统实现了第一方面的方法的所有优点和效果。
35.在第二方面的一种实现方式中,所述数据库管理系统包括用于接收主机设备的备份的备份数据库和用于存储提取数据的数据库。
36.所述备份数据库和数据库分别为主机设备的接收到的备份和用于处理接收到的备份的提取数据提供单独的存储单元,以便可以在不受对主机设备的攻击的影响的情况下处理备份。
37.在第二方面的一种实现方式中,所述数据提取引擎用于从所述接收到的所述主机设备的备份中提取数据,所述提取数据包括所述主机设备的事件日志的副本和所述主机设备的注册表的副本。
38.需要说明的是,主机设备的事件日志和注册表作为主机系统中所做更改的记录。对事件日志和/或注册表的任何未经授权的更改都是数据篡改的指示,因此,主机设备的事件日志的副本和主机设备的注册表的副本可用于识别数据篡改。
39.在第二方面的一种实现方式中,所述系统还包括存储在所述存储器中的虚拟机引擎。
40.虚拟机提供单独的系统来独立执行扫描,以检测主机设备中的数据篡改。虚拟机上的执行不容易受到主机设备上被篡改数据的影响。因此,虚拟机提供了一个在系统内不容易绕过的安全环境。
41.在第三方面,本发明提供了一种计算机程序,所述计算机程序在备份系统上执行时用于执行第一方面的上述方法。
42.第三方面的计算机程序产品实现了第一方面的方法或第二方面的系统的所有优点和效果。
43.需要说明的是,本技术中描述的所有设备、元件、电路、单元和模块可以在软件或硬件元件或其任何类型的组合中实现。本技术中描述的各种实体执行的所有步骤和所描述的将由各种实体执行的功能旨在表明各个实体适于或用于执行各自的步骤和功能。即使,在以下具体实施例的描述中,待由外部实体执行的特定功能或步骤未反映在执行该特定步骤或功能的该实体的具体详细元件的描述中,技术人员也应该清楚,这些方法和功能可以在相应的软件或硬件元件,或其任何种类的组合中实现。应当理解,本发明的特征易于以各种组合进行组合,而不偏离由所附权利要求书定义的本发明的范围。
44.本发明的附加方面、优点、特征和目的从附图和结合以下所附权利要求书解释的说明性实现方式的详细描述中变得显而易见。
附图说明
45.当结合附图阅读时,可以更好地理解以上发明内容以及说明性实施例的以下详细描述。为了说明本发明,本发明的示例性结构在附图中示出。但是,本发明不限于本文公开的具体方法和工具。此外,本领域技术人员应理解,附图不是按比例绘制的。在可能的情况下,相同的元件用相同的数字表示。
46.现在参考下图仅作为示例来描述本发明的实施例,其中:
47.图1是本发明的一个或多个实施例提供的用于识别数据篡改的系统的框图;
48.图2是本发明的一个或多个实施例提供的用于识别主机设备中数据篡改的方法的
流程图;
49.图3是本发明的一个或多个实施例提供的用于检测主机设备中数据篡改的备份的时间线的示例性说明;
50.图4是本发明的一个或多个实施例提供的用于识别主机设备中数据篡改的系统的框图。
51.在附图中,带下划线的数字用于表示带下划线的数字所在的项目或与带下划线的数字相邻的项目。不带下划线的数字是指由将不带下划线的数字与项目连接的线所标识的项目。当一个数字不带下划线并具有相关联的箭头时,不带下划线的数字用于标识箭头指向的一般项目。
具体实施方式
52.以下详细描述说明了本发明的实施例以及可以实现这些实施例的方式。虽然已经公开了实施本发明的一些模式,但本领域技术人员应认识到,也可以存在用于实施或实践本发明的其它实施例。
53.图1是本发明的实施例提供的用于识别主机设备中数据篡改的系统100的框图,其中,该系统包括一个或多个处理器102a、102b-102n;可由所述一个或多个处理器访问的存储器104,其中,所述存储器包括数据库管理系统106、数据提取引擎108、扫描引擎110;并且所述系统用于发出检测到的事件的指示。存储器104用于将在几个顺序时间点接收的主机设备(例如,描述中后续论述的图4的主机设备402)的备份存储在备份系统中。在发出检测到的事件的指示的实施例中,系统用于在备份系统中在几个顺序时间点接收主机设备的备份;系统的数据库管理系统的事件数据库用于存储接收到的备份的提取数据;系统的数据提取引擎用于从主机设备的接收到的备份中提取数据;扫描引擎用于检测主机设备中的数据篡改事件。
54.在此,一个或多个处理器102a、102b至102n涉及可操作以响应和处理驱动系统100的指令的计算元件。一个或多个处理器102a、102b至102n的示例可以包括但不限于微处理器、微控制器、复杂指令集计算(complex instruction set computing,cisc)处理器、专用集成电路(application-specific integrated circuit,asic)处理器、精简指令集(reduced instruction set,risc)处理器、超长指令字(very long instruction word,vliw)处理器、中央处理单元(central processing unit,cpu)、状态机、数据处理单元和其它处理器或电路。此外,一个或多个处理器102a、102b至102n可以指一个或多个单独的处理器、处理设备、作为机器一部分的处理单元。
55.在此,存储器104可以包括合适的逻辑、电路和/或接口,它们可以用于存储具有可由一个或多个处理器102a、102b至102n执行的至少一个代码段的机器代码和/或指令。存储器104的实现示例可以包括但不限于电可擦除可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、随机存取存储器(random access memory,ram)、只读存储器(read only memory,rom)、硬盘驱动器(hard disk drive,hdd)、闪存、安全数字(secure digital,sd)卡、固态硬盘(solid-state drive,ssd)和/或cpu缓存内存。存储器104可以存储操作系统和/或用于操作系统100的其它程序产品。存储器104可以包括用于提供非瞬时性存储器的计算机可读存储介质,该非瞬时性存储器可以包括但不限于电
子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备,或上述任何合适的组合。
56.在此,数据库管理系统106涉及数字信息的组织系统,而不管数据是以何种方式表示的。可选地,数据库管理系统106可以是硬件、软件、固件和/或其任何组合。数据库管理系统106可以以表、地图、网格、数据包、数据报、文件、文档、列表或任何其它形式存储主机设备的相关数据。数据库管理系统106包括任何数据存储软件和系统,例如,ibm db2和oracle 9等关系数据库。在此,如本领域中所常见的,数据库管理系统106可以在本文中作为数据库互换使用。可选地,数据库管理系统106可以操作以支持关系操作,而不管它是否强制严格遵守关系模型,如本领域普通技术人员所理解的。数据库管理系统106由主机设备的备份填充。此外,数据元素可以包括数据记录、数据位、单元格,在本文中可互换使用,并且所有这些都旨在表示存储在数据库的单元格中的信息。在一个实施例中,数据库管理系统106包括用于接收主机设备的备份的备份数据库112和用于存储提取数据的事件数据库114。
57.数据提取引擎108用于从主机设备的接收到的备份中提取数据,所述数据包括主机设备的事件日志的副本和主机设备的注册表的副本。可选地,数据提取引擎108可以在几个顺序时间点自动提取数据。此外,数据提取引擎108可以转换数据的格式,使得数据提取变得更容易。数据提取引擎108用于从主机设备中收集和检索数据,以便实时或接近实时地进一步处理和分析。在本发明中,数据提取引擎108提取数据,以便可以识别主机设备中的数据篡改事件,如在以下段落中详细论述的。
58.扫描引擎110用于扫描接收到的备份的存储数据,以检测主机设备中的数据篡改事件。在此,周期性或连续地扫描在几个顺序时间点接收的备份的存储数据。周期性扫描存储数据包括扫描每个接收到的备份的存储数据。连续扫描数据包括在离散时间段之后扫描接收到的备份的存储数据。在一个示例中,检测事件通过以下方式进行:比较在几个顺序时间点中的一个时间点备份的存储数据的扫描结果与在所述一个时间点之前的某个时间点备份的存储数据的扫描结果之间的备份差异。在另一个示例中,检测事件通过以下方式进行:比较在第一两个顺序时间点第一对备份的存储数据的扫描结果之间的第一差异,并比较在第二两个顺序时间点第二对备份的存储数据的扫描结果之间的第二差异。
59.系统100还包括存储在存储器104中的虚拟机引擎116,用于允许运行一个或多个虚拟机。在此,一个或多个虚拟机从主机设备的其余部分沙箱化,并创建单独的平台,用于扫描和检测主机设备中的数据篡改。因此,虚拟机中的数据不能被攻击者篡改。因此,从虚拟机中提取数据。例如,可以通过使用文件存档器、linux阅读器和/或虚拟化软件包(例如工作站的播放器)将vmdk连接到现有虚拟机来从虚拟机中提取数据。从虚拟机中提取的数据包括主机设备的事件日志的副本和主机设备的注册表的副本。此类数据由虚拟机提取,因为事件日志和注册表中的任何更改都可能提供有关攻击或数据篡改事件的完整详细信息。
60.图2是本发明的实施例提供的用于识别主机设备中数据篡改的方法200的流程图。方法200可以在图1的系统100上执行,如在以下段落中论述的。在此,术语“数据篡改”是指主机设备所面临的安全威胁,涉及更改或编辑存储在主机设备中的文件,通常对主机设备造成某种形式的损害。数据篡改是指通过未经授权的渠道故意修改、操纵或编辑数据的行为。鉴于此,主机设备遭受安全漏洞,未经授权的攻击者可能会部署损坏数据或底层程序代
码的恶意代码。如上所述,本发明的方法200通过执行其中列出的步骤202-220来识别主机设备中的这种数据篡改。
61.在步骤202中,方法200包括在几个顺序时间点接收备份系统中主机设备的备份。如所论述的,数据库管理系统106的备份数据库112用于接收主机设备的备份。在信息技术中,备份或数据备份是获取并存储在其它地方的计算机数据的副本,以便在数据丢失事件后用于恢复原始数据。备份是指将物理或虚拟文件或数据库复制到辅助位置,以便在设备故障或数据损坏时保存。主机设备的备份包括存储在主机设备中的全部或部分数据。在一个示例中,备份中的信息可以包括但不限于主机设备的事件日志、主机设备的注册表、与各种文件相关的元数据,以及文件(如媒体文件)、文件夹、主机设备上安装的软件,等等。在本示例中,备份可以包括存储主机设备数据的块设备的副本,例如vmware虚拟磁盘文件(vmware virtual disk file,vdmk)(一种虚拟硬盘)的副本。vmdk是一种文件格式,用于描述要在vmware工作站或virtualbox或esx服务器等虚拟机中使用的虚拟硬盘驱动器的容器。可以理解的是,块设备代表文件系统装载(所位于)的较低级别。块设备的副本可以连接到虚拟机。备份系统可以视为主机设备的历史记录的远程视图。备份系统可以视为主机设备的历史记录的远程视图。也就是说,在备份的系统中,备份系统可以视为系统的历史记录的远程视图。该备份系统可以被视为“远程”是因为它不驻留在主存储上(vmdk数据是存储在vmfs上的文件,该vmfs存储在主存储的逻辑单元(logical unit,lu)上)。备份系统无法由虚拟机访问,因此不容易被攻击者更改,而且为“有历史的”,因为它包含系统存储在几个时间点所呈现的信息。接收备份的顺序时间点取决于备份中信息的固定性(pedantic)或相关性。例如,主机设备的备份可以每一小时、每十小时、每一天或每周接收一次。
62.在步骤204中,方法200包括从接收到的主机设备的备份中提取数据。如所论述的,数据提取引擎108用于从接收到的主机设备的备份中提取数据。在本示例中,可以从块设备中提取数据,以避免在主机设备中运行备份代理。如此做的原因是备份代理如果在主机设备中执行,可能已经获得被篡改的数据。这就是在较低级别进行备份的原因,例如在虚拟机磁盘级别(如上所述)进行。可以理解的是,备份通常呈压缩文件的形式。如此做的原因是压缩文件占用的存储空间较少,因此可以更快地在各位置之间传输,例如在互联网上。此外,备份还提供几个文件和文件夹组合到一个易于管理的软件包中。备份系统可以利用一个或多个压缩技术和对应的提取技术来实现该目的。此外,为了对备份中的数据进行任何形式的处理,可能需要首先从备份中提取数据。在一些示例中,仅从接收到的备份中提取可能有助于识别主机设备中的数据篡改的相关数据。这可以确保减少提取时间和减少系统资源消耗。
63.在一个实施例中,提取数据通过激活主机设备的作为虚拟机的接收到的备份并从激活的虚拟机中提取数据来进行。在此,由图1的系统100的虚拟机引擎116运行虚拟机。如所论述的,虚拟机呈从主机设备的其余部分沙箱化的独立系统形式,它提供单独的平台,用于扫描提取数据,以检测主机设备中的数据篡改。由于虚拟机是一个独立的系统,从备份中提取的数据不受对主机设备的攻击的影响,因此,可以可靠地用于识别主机设备中的数据篡改。
64.在一个实施例中,提取数据包括提取主机设备的事件日志的副本。事件日志是由主机设备的操作系统存储的系统、安全和应用程序通知的详细记录,供主机设备的管理员
用于诊断主机设备中的问题并预测未来问题。例如,事件日志可以包括主机设备中特定事件的跟踪,所述特定事件如日志文件、应用程序安装、安全管理、初始启动时的系统设置操作以及问题或错误。此外,事件日志包括有关以下各项的信息:数据出现的日期和时间、事件发生时登录到宿主机的用户的用户名、指定事件日志的标识号、导致该事件日志的源和事件日志的类型。
65.此外,提取数据包括提取主机设备的注册表的副本。注册表是一种数据库,其中存储了有关操作系统上安装的硬件和软件程序的所有信息。存储的数据可以呈时间、位置、软件设置、选项、用户首选项等形式。例如,当主机设备上安装新程序时,将生成存储在注册表中的子项。除了程序的信息外,子项还提供如下信息:程序安装在计算机上的时间、存储程序的位置、程序的版本以及与已安装程序相关的其它详细信息。
66.在步骤206中,方法200包括将接收到的备份的提取数据存储在备份系统的事件数据库中。在本实施例中,事件数据库可以等效于图1的系统100的事件数据库114。事件数据库提供与主机设备的主存储分离开的存储空间。因此,主机设备中普遍存在的任何攻击者都无法修改或破坏存储在事件数据库中的提取的事件日志和注册表。
67.在步骤208中,方法200包括扫描接收到的备份的存储数据,以检测主机设备中的数据篡改事件。如所论述的,存储数据的这种扫描可以由图1的系统100的扫描引擎110执行。扫描包括针对数据中的任何不一致检查备份,这些不一致可以指示任何未经授权的更改。例如,进行扫描以确定主机设备的提取的注册表副本中(或注册表的部分中)任何未经授权的更改。此外,进行扫描以确定主机设备的提取的事件日志副本中(或事件日志的部分中)任何未经授权的更改。注册表和/或事件日志中任何确定的未经授权的更改都视为检测到主机设备中的数据篡改。通过使用这些技术,可以实时或接近实时地检测数据篡改。
68.在一个实施例中,周期性或连续地扫描在几个顺序时间点接收的备份的存储数据。周期性或连续扫描备份中的存储数据,可以实时或接近实时地检测主机设备中的任何攻击或数据篡改。此外,这种周期性或连续扫描能够识别数据篡改事件在主机设备中发生的顺序时间点,并且可以确定,从而恢复主机设备在数据篡改事件之前的状态。
69.在一个实施例中,周期性扫描存储数据包括扫描每个接收到的备份的存储数据。扫描每个接收到的备份有助于在有源(即新备份)可用于进行比较以识别任何威胁时立即识别主机设备中的数据篡改。
70.在另一个实施例中,连续扫描数据包括在一段时间内扫描接收到的备份的存储数据。这意味着可以在任何时间点之间连续执行存储扫描,从而实现连续的数据保护。存储数据的连续扫描可以使用客户数据平台(customer data platform,cdp)引擎完成,该引擎为接收到的备份提供中心位置。连续数据保护可以保留主机设备中发生的每一个更改(即,在主机设备的存储磁盘中,包括i/o的更改),并且可以将备份(例如,存储在虚拟硬盘或vmware虚拟磁盘文件中的备份)恢复到任何时间点。因此,扫描连续数据保护存储的数据能够检测注册表文件发生的每一个更改,还有助于在该特定时间段内接近实时地识别主机设备中的数据篡改,并将主机设备恢复到数据篡改之前的状态。
71.在一个实施例中,检测事件通过以下方式进行:比较在几个顺序时间点中的一个时间点备份的存储数据的扫描结果与在所述一个时间点之前的某个时间点备份的存储数据的扫描结果之间的备份差异。如所论述的,这种事件检测可以在虚拟机(例如,图1的系统
100的虚拟机)中执行。通过比较顺序时间点中两个即时备份的扫描来检测事件。例如,通过确定注册表和/或事件日志的当前状态与先前状态之间的差异来检测事件。本领域技术人员将设想,通过比较即时备份的扫描结果之间的备份差异,可以实时或接近实时地检测主动威胁。此外,它还提供攻击模式,如事件日志中事件的单次删除、注册表中指示恶意软件或主机设备中任何其它恶意活动的已知更改。
72.现在参考图3,示出了本发明的实施例提供的备份的时间线300和主机设备中沿着时间轴t的数据篡改事件的示例性说明。时间线300示出了在备份系统(例如,在描述中后面论述的图4的备份系统400)中接收主机设备的备份302的开始。在此,备份302可以是主机设备的主备份。此外,在所示的示例中,备份系统总计接收7个备份302a-302g。分别地,在第一顺序时间点接收第一备份302a,在第二顺序时间点接收第二备份302b,依此类推,直到在第七顺序时间点接收第七备份302g。时间线300还描绘了生成主机设备的事件日志304的开始。事件日志304可以是主机设备的主事件日志。此外,根据主机设备中的活动和更改,在一段时间内将事件304a-304c等事件添加到事件日志304中。如图所示,第一事件304a在备份系统接收到第三备份302c和第四备份302d之间的某个时间发生,并且对应的更改记录在事件日志304中。此外,第二事件304b在备份系统接收到第四备份302d和第五备份302e之间的某个时间发生;第三事件304c在备份系统接收到第五备份302e和第六备份302f之间的某个时间发生。在本示例中,第二事件304b表示与攻击的加固相关的事件,第三事件304c表示与同一攻击的隐藏相关的事件。
73.在一个实施例中,检测事件通过以下方式进行:比较在第一两个顺序时间点第一对备份的存储数据的扫描结果之间的第一差异,并比较在第二两个顺序时间点第二对备份的存储数据的扫描结果之间的第二差异。结合图3,第一差异是指备份系统的第四备份302d与第五备份302e之间的差异。通过比较第一差异,即备份系统的第四备份302d和第五备份302e的扫描结果之间的差异,检测第二事件304b。另外,结合图3,第二差异是指备份系统的第五备份302e与第六备份302f之间的差异。通过比较第二差异,即备份系统的第五备份302e和第六备份302f的扫描结果之间的差异,检测第三事件304c。
74.再次参考图2,根据一个实施例,方法200还包括:使用第一差异检测主机设备的注册表中攻击的加固,并使用第二差异检测主机设备的注册表中攻击的隐藏。通常,在发生任何攻击的情况下,攻击会尝试加固在主机设备中所做的任何更改,以便所做的更改在重新启动期间持续存在,然后攻击可能会尝试删除提供攻击本身以及攻击期间执行的操作的证据的任何日志。在此,主机设备的注册表中的攻击加固会增加主机设备中应用程序、系统、基础架构、固件和其它区域的漏洞。此外,主机设备的注册表中的攻击隐藏使得难以检测攻击。由于此类尝试将记录为事件日志中的事件,并且在每次此类尝试之前和之后可能存在顺序备份;通过比较此类顺序备份,可以理解可以检测到此类尝试。
75.参考图3,如所论述的,第二事件304b表示与攻击的加固相关的事件,第三事件304c表示与攻击的隐藏相关的事件。在此,第一差异,即备份系统的第四备份302d和第五备份302e的扫描结果之间的差异,导致检测第二事件304b,从而检测攻击的加固。此外,在此,第二差异,即备份系统的第五备份302e和第六备份302f的扫描结果之间的差异,导致检测第三事件304c,从而检测攻击的隐藏。
76.参考图2,在一个实施例中,检测事件包括检测主机设备的操作系统注册表中的更
改。例如,检测计算机特定信息(如存储在主机设备的注册表中的硬件配置)的更改。检测事件还包括检测主机设备的事件日志中的更改。例如,检测存储在主机设备的事件日志中的帐户凭证的更改。检测事件还包括检测主机设备中事件的更改。例如,检测事件日志中的任何更改或修改。检测事件还包括主机设备的系统时间修改。例如,检测与任何事件相关联的日期和/或时间的修改,所述事件可能与攻击相关,也可能与攻击无关,如数据库事务。检测事件还包括指向主机设备中事件的元数据的修改。例如,检测关于特定事件的详细信息(如相关联的用户信息等)的修改。检测事件还包括主机设备中的恶意软件。例如,检测恶意软件,所述恶意软件包括但不限于病毒、蠕虫、特洛伊木马、rootkit、间谍软件和keylogger。检测事件还包括主机设备中的恶意活动。例如,检测未经授权的人员登录主机设备等事件。检测事件还包括主机设备的注册表中的攻击加固。例如,注册表中的攻击加固可以包括但不限于添加多余的程序,提供权限和访问,使攻击者有机会进入主机设备内,并且检测注册表中攻击的这种加固。检测事件还包括在主机设备的系统注册表中进行的更改的加固。例如,检测试图永久化的任何未经授权的注册表更改。检测事件还包括主机设备中的攻击隐藏。例如,主机设备的事件日志被更改以隐藏主机设备中的攻击,并检测此类更改。检测事件还包括权限提升。例如,检测与允许未经授权的人员访问主机设备数据相关的更改。
77.在步骤210中,方法200包括发出检测到的事件的指示。也就是说,一旦通过扫描接收到的备份的存储数据检测到数据篡改事件,就会发出检测到的事件的指示,以通知安全研究人员对主机设备的威胁。检测到的事件的指示可以呈通知、电子邮件、短信、警报等中的一种或多种形式发出。可以实时或接近实时地发出检测到的事件的指示,以便可以采取措施快速保护主机设备免受检测事件的影响。还指示了检测到的事件的详细信息。例如,发出的检测到的事件可以包括有关从事件日志中删除事件a、b和c的信息。在一些示例中,有关主机设备的最后健康状态的信息也会与指示一起通知。
78.在一个实施例中,方法200还包括构建攻击配置文件。攻击配置文件包括与检测活动相关的信息,以及有关攻击期间在主机设备中所做更改的详细信息。攻击配置文件可以使用在备份系统中在几个连续时间点接收的主机设备的备份来构建。构建攻击配置文件是为了对检测到的事件进行事后分析,以提高主机设备的安全性。攻击配置文件可以存储在备份系统中,以便将来更好地分析。可选地,检测到的事件的事后分析可以在隔离沙箱(如虚拟机)中执行,该隔离沙箱提供了隔离环境来运行和测试与主机设备相关的恶意事件,以便了解事件如何在主机设备上工作。
79.根据一个实施例,方法100还包括启动恢复被篡改数据。一旦检测到事件,使用在备份系统中在主机设备的几个顺序时间点接收的备份来识别事件之前主机设备的健康状态,并将主机设备恢复到健康状态。可以理解的是,主机设备的健康状态被确定为与主机设备中发生数据篡改事件之前的备份对应的状态。在一些示例中,重新启动主机设备可用于将主机设备恢复到健康状态。
80.步骤202至210仅仅是说明性的,还可以提供其它替代方案,其中添加一个或多个步骤,删除一个或多个步骤,或以不同的顺序提供一个或多个步骤,而不脱离本文权利要求的范围。
81.图4是本发明的实施例提供的用于识别主机设备中的数据篡改的系统100的示例性框图。如图所示,系统100与主机设备402相关联。在此,主机设备402涉及与用户相关联
(或由用户使用)的电子设备,该电子设备能够使用户执行与本发明的实施例相关联的特定任务。此外,主机设备402旨在被广义地解释为包括可用于通过无线通信网络进行语音和/或数据通信的任何电子设备。主机设备402的示例包括但不限于蜂窝电话、个人数字助理(personal digital assistant,pda)、手持设备、无线调制解调器、笔记本电脑、个人计算机等。此外,主机设备402可以包括外壳、存储器、处理器、网络接口卡、麦克风、扬声器、键盘和显示器。
82.如图所示,主机设备402包括存储器404。在此,存储器404涉及可以存储主机设备402的操作系统和/或其它程序产品的计算机可读存储介质。也就是说,存储器404可以是任何计算机可读存储介质,如电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或上述任何合适的组合。存储器404的示例可以包括但不限于电可擦除可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、随机存取存储器(random access memory,ram)、只读存储器(read only memory,rom)、硬盘驱动器(hard disk drive,hdd)、闪存、安全数字(secure digital,sd)卡、固态硬盘(solid-state drive,ssd)和/或cpu缓存内存。主机设备402的存储器404可以在被传输到本发明的系统100和/或由本发明的系统100执行之前临时存储主机设备402生成的备份。
83.如图所示,系统100包括备份系统400。备份系统400与主机设备402的存储器404通信,以从其接收主机设备402的备份。在此,备份系统400结合系统100的备份数据库112和事件数据库114。在此,备份数据库112存储主机设备402的备份,所述备份包括主机设备402的第一备份408a、第二备份408b、第三备份408c直至第n备份408n。在此,备份408a-408n在备份数据库112中在几个顺序时间点接收。
84.如本文所论述的,备份数据库112包括可以在几个顺序时间点接收的主机设备402的第一备份408a、第二备份408b、第三备份408c到第n备份408n。根据备份的固定性或相关性,例如根据对应的备份策略需要执行备份的频率,几个顺序时间点可以是任何合适的时间段,如一小时、一天、两周或一个月。在一个示例中,第一备份408a可以在第一天由备份数据库112接收,第二备份408b可以在第二天由备份数据库112接收,第三备份408c可以在第三天由备份数据库112接收,依此类推。
85.在此,例如,虚拟机引擎116可以是具有独立操作系统的物理计算机,该操作系统提供了不同于主机402的单独平台,在该单独平台中,用于识别数据篡改的过程可以独立运行。此外,事件数据库114提供与主机设备402的操作系统相关的记录的集合,而不管数据的表示方式如何。通常,事件数据库114可以呈表、地图、网格、数据包、数据报、文件、文档、列表或任何其它形式。可选地,事件数据库114可以是硬件、软件、固件和/或其任何组合。备份系统400还结合虚拟机引擎116。在此,例如,虚拟机引擎116是具有独立操作系统的物理计算机,该操作系统提供了不同于主机402的单独平台,在该单独平台中,用于识别数据篡改的过程可以独立运行。
86.在操作中,备份数据库112在几个顺序时间点接收主机设备402的第一备份408a、第二备份408b、第三备份408c直到第n备份408n。几个顺序时间点可以根据备份数据库112中备份的固定性或相关性而变化。备份数据库112定期在内部装载备份408a、408b、408c至408n的副本,然后将这些副本传输到虚拟机引擎116。备份可以包括与主机设备402相关的信息,如操作系统、安装的软件、文件夹、媒体、事件日志、注册表等。
87.如所论述的,提取数据通过激活主机设备402的作为虚拟机引擎116的接收到的备份并从激活的虚拟机引擎116中提取数据来执行。虚拟机引擎116从主机设备的其余部分沙箱化,并创建单独的平台,用于扫描和检测主机设备中的数据篡改。因此,虚拟机引擎116中的数据不能被攻击者篡改。因此,从虚拟机引擎116中提取数据。例如,可以通过使用文件存档器、linux阅读器和/或虚拟化软件包(例如工作站的播放器)将vmdk连接到现有虚拟机来从虚拟机引擎116中提取数据。从激活的虚拟机引擎116中提取的数据包括主机设备的事件日志的副本和主机设备的注册表的副本。此类数据由虚拟机引擎116提取,因为事件日志和注册表中的任何更改都可能提供有关攻击或数据篡改事件的完整详细信息。
88.然后,由虚拟机引擎116提取的数据存储在事件数据库114中。然后,扫描存储在事件数据库114中的数据,以检测主机设备402中的数据篡改事件。为了检测事件,比较两个连续备份的数据之间的备份差异。例如,将备份408b与备份408a进行比较,以检测在接收备份408b与备份408a之间的时间上发生的事件。类似地,将备份408c与备份408b进行比较,以检测在接收备份408b和备份408c之间的时间上发生的事件。
89.在本实施例中,如果在任何顺序时间点检测到事件,则备份系统400向主机设备402的管理员发出警报。备份系统400还提供检测到的事件的根本原因分析,以保护主机设备402在未来免受类似事件的影响。此外,将主机设备402恢复到通过扫描存储在事件数据库114中的数据而检测到的最后健康状态。例如,如果在备份408c中检测到事件,则将主机设备402恢复到备份408c之前的状态,如备份408b处主机设备402的状态,这是主机设备402的健康状态。
90.在系统100中,首先在备份系统400中周期性或连续备份主机设备402。备份系统400将定期在内部装载主机设备402的作为虚拟机的副本。在此,如果备份是周期性的,则将扫描每个备份映像,如果备份是连续的,则将检查每个时间段。然后,备份系统400将运行从正在运行的虚拟机引擎116中提取数据的工具。这包括使用事件日志工具提取事件日志的副本,以及提取注册表。然后,备份系统400将提取的数据存储在事件数据库114中,并扫描注册表或事件日志的当前状态与先前状态之间的差异。此外,备份系统400将在出现问题的情况下向管理员发出警报。该系统将提供根本原因分析,并使主机设备402被篡改的部分(即数据)恢复。
91.本发明还提供了一种计算机程序,用于在备份系统400(例如,图4的备份系统400)上执行时执行上述方法。这种用于识别主机设备(例如,主机设备402)中数据篡改的计算机产品可以包括但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备,或上述任何合适的组合。
92.本发明的系统和方法提供了主机设备随时间推移的安全和可跟踪视图,以允许系统管理员和安全研究人员接近实时地获得活动威胁的通知,并执行威胁进展的事后分析和性能分析。在本实现方式中,在短间隔内对系统的敏感组件进行备份,如windows注册表或系统日志,并且在备份之后,在备份系统内部对这些组件进行扫描(使用备份系统资源,因此主机不受这些扫描的影响)。然后,将这些扫描的结果与先前的结果进行比较,并识别典型的攻击模式,如事件日志中事件的单次删除、注册表中指示恶意软件或系统中的恶意活动的已知更改。备份系统对此类事件的敏感性实际上可以根据在这些扫描中备份系统的固定性或相关性进行微调,例如,通知注册表中的任何更改,或用户无权执行任何此类更改的
注册表的部分中的任何更改。一旦检测到威胁,备份系统会通知系统管理员。通知中可以是有关最后健康系统状态的信息,以及检测到的威胁的详细信息,例如从事件日志中删除事件a、b和c。
93.在不脱离所附权利要求所定义的本发明范围的情况下,可以对上文描述的本发明的实施例进行修改。如“包括”、“结合”、“具有”、“是/为”等用于描述和要求保护本发明的表述旨在以非排他性的方式解释,即允许未明确描述的项目、组件或元素也存在。对单数的引用也应解释为与复数有关。本文使用的词语“示例性”表示“作为一个示例、实例或说明”。任何描述为“示例性的”实施例并不一定解释为相比其它实施例是优选或有利的,和/或并不排除从其它实施例中结合特征。本文使用的词语“可选地”表示“在一些实施例中提供且在其它实施例中没有提供”。应了解,为了清楚起见在单独实施例的上下文中描述的本发明的某些特征还可以组合提供于单个实施例中。相反地,为了简洁起见在单个实施例的上下文中描述的本发明的各个特征也可以单独地或以任何合适的组合或作为本发明的任何其它描述的实施例提供。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献