系统分析和管理的制作方法

文档序号:6456592阅读:200来源:国知局
专利名称:系统分析和管理的制作方法
系统分析和管理
站旦 冃私
构建可靠且安全的计算机系统的主要挑战是管理系统的持续状态
(ps),这包括所有可执行文件、配置设置以及管控系统如何运作的其它 数据。误配置和其它ps问题是范围从个人台式机到大规模因特网服务的各 种系统上的故障和安全漏洞的主要原因。ps问题以及由诸如硬件组件和编
程逻辑等系统元素的故障引起的问题可能有害地影响整个系统。
无法有效管理系统的ps的代价是高昂的。例如,ps问题可在系统重 新引导或应用程序重新启动之后再现自己。另外,ps状态在运行时期间由
于诸如补丁和应用程序相关更新等改变而漂移。当前不存在有效的方式来 关闭系统上所发生的、改变上的循环。在这样的场景中,如果已知问题标
识失败,且如果随后的系统重新引导/应用程序重新启动不能补救ps问题,
则没有选择而只能手动检査系统来标识根本原因ps。
手动调査系统以标识根本原因ps由于大量潜在问题而是困难且昂贵
的。例如,可能影响发生故障的应用程序的潜在状态的集合是巨大的,且 因此潜在根本原因列表可包括系统上状态的完整集合。此外,如果也对集
合的每一可能的组合进行了考虑,尤其对其中不是单个ps根本原因的情况
进行了考虑,则情形可能更坏。
概述
提供本概述以便介绍将在以下详细描述中进一步描述的基于模型的许 可证计数的简化概念。本概述并不旨在标识所要求保护的主题的必要特征, 也不旨在用于帮助确定所要求保护的主题的范围。
在一实施例中,对基于计算的设备的程序进行分类和枚举,获得向该 基于计算的设备注册的程序的最近加载时间,并且将与向该基于计算的设
备注册的程序相关联的文件的最近修改时间同最近加载时间进行比较。附图简述
参考附图来描述详细描述。在附图中,参考标号中最左边的数字标识 该参考标号首次出现的附图。在各附图中,使用相同的标号来指示相同的 特征和组件。


图1示出用于系统管理的示例性体系结构。
图2示出示例性收集服务器。
图3示出描绘所生成的通知的示例性可视界面。
图4示出描绘一个程序的执行对第一程序的执行的依赖性的示例性可 视界面。
图5示出用于捕捉与系统的PS中的修改相关联的数据的示例性方法。
图6示出用于对所记录的改变进行分类的示例性方法。
图7示出用于禁止未经授权的交互的执行的示例性方法。
图8示出用于检测一个或多个可扩展性点的示例性方法。
图9示出用于检测漏出条目的示例性方法。
图10示出用于检测常见误配置或失效文件的示例性方法。
图11示出示例性计算机环境。
详细描述
为实现这一点,系统包括报告与发生在系统内的修改相关联的数据的 一个或多个计算机程序或代理。该数据包括与同文件和/或设置的所有交互 相关联的信息。这种类型的交互包括像对注册表项、文件的读或写访问, 以及诸如加载等二进制模块交互等活动。代理将所收集的数据报告给后端 服务,该后端服务处理所报告的信息来进行像生成web报告、警告,或与 用于执行系统管理的其它服务集成等活动。此外,处理可以在其中也收集 该数据的单个机器上完成。这包括生成报告、警告等。具体地,着眼于系 统的持续状态(PS),其中PS包括所有可执行文件、配置设置、和管控该 系统如何运作的其它数据。虽然讨论持续状态,但应当理解,所讨论的技 术和方法适用于其它种类的状态。
所报告的数据可用于若干用途。例如,可以检査数据来验证正在发起授权的交互相关联。
尽管所描述的用于系统管理的系统和方法的各方面可用任何数量的不 同计算系统、环境和/或配置来实现,但系统分析和管理的各实施例在以下 示例性系统体系结构的上下文中描述。
示例性系统
图1示出其中可以收集和分析与一个或多个程序之间的交互相关联的 信息的示例性计算机系统100。系统100包括其上运行或安装一个或多个程
序的基于计算的设备102、收集服务器104、档案收集106和报告108。
与一个或多个程序和/或文件系统或设置之间的交互相关联的信息代 表了可能发生在系统100内部的、持续状态(PS)中的修改。基于计算的 设备102可以包括任何数量的基于计算的设备102。例如,在一个实现中, 系统100还可以包括公司网络,该公司网络包括遍及若干国家的数千台办 公室个人计算机(PC)、各种服务器以及其它基于计算的设备,其所有都 用作基于计算的设备102。或者,在另一可能的实现中,系统100可包括具 有有限数量的PC的家庭网络。基于计算的设备102可通过包括LAN、WAN 或任何其它本领域已知的联网技术的有线和/或无线网络来按照各种组合彼
此親合。
基于计算的设备102可以包括能够对系统100中的功能进行插装 (instrument)来捕捉与一个或多个基于计算的设备102和/或文件系统和设 置之间的交互相关联的信息的代理110。在一个实现中,代理IIO可以是能 够修改、添加和/或删除该功能中的计算机可读指令来截取调用该功能的线 程的线程数据记录器(TDR)。在另一可能的实现中,对功能进行插装还 包括修改、添加和/或删除功能中的计算机可读指令来要求线程执行该功能 中允许对与该线程相关联的数据进行捕捉的计算机可读指令。在又一实现 中,与该线程相关联的数据包括关于与该线程相关联的程序、与该线程相 关联的一个或多个交互的信息,和关于与该线程相关联的程序的用户的信 息。虽然讨论了 TDR,但应当理解,可能并不是所有算法都需要截取,因 此所讨论的技术和方法可能不必绑定到基于TDR的数据收集。此外,基于 虚拟机(VM)的插装可与其中动态地添加代码的基于TDR的插装不同。在VM中,可能是VM内部件的硬编码功能来进行这类收集。
被进行插装的功能可包括可由程序/进程调用的功能。在一个实现中, 被进行插装的功能可包括低级瓶颈功能,诸如文件系统驱动程序、注册表 功能、创建新进程和/或服务的功能等。
线程数据记录器从线程捕捉的数据可被存储和/或处理,以管制系统 100的行为以及调査系统100的状况或持续状态。线程数据记录器可从线程 捕捉的数据的类型和线程数据记录器的操作在Verbowski等人在
_提交的、申请序列号为_的题为"Thread
Interception and Analysis (线程截取和分析)"的美国专利申请中更详细地 讨论,该申请通过引用结合于此。
收集服务器104负责收集与在系统100中所发生的修改相关的信息。 在一个实现中,代理110将与交互相关联的信息作为经压縮的日志存储在 收集服务器104中。在另一实现中,与交互相关联的信息还可以被上传到 档案收集106。对收集服务器104或档案收集106中所收集的信息的分析被 用于生成报告108。作为在收集服务器104或档案收集106上所收集的信息 上所执行的分析的结果而生成的报告108提供对在一个或多个基于计算的 设备102内发生的交互或修改的洞察。在另一实现中,报告108可以通过 可视界面来生成。在又一实现中,可视界面可以通过用于检索和显示先前 创建的和/或高速缓存的报告的浏览器来实现,以便执行对存储在收集服务 器104或档案收集106中的信息的可编程数据访问。收集服务器104和档 案收集106可以驻留在用作收集服务器104或档案收集106的单个设备上, 或作为该单个设备的一部分。
如上所述,代理110所收集的并存储在收集服务器104或档案收集106 中的信息可被分析,以提供对系统100的运作的洞察。所执行的分析可以 包括异常检测、改变管理、管理异常系统活动、标识安全漏洞、标识未经 授权的应用程序、执行遵从审核等。
图2示出被配置成存储、处理和/或分析来自代理110的数据的示例性 收集服务器106。收集服务器106包括一个或多个处理器202和存储器204。 处理器202例如包括微处理器、微机、微控制器、数字信号处理器、中央处理单元、状态机、逻辑电路和/或基于操作指令操纵信号的任何设备。
处理器202被配置成取回并执行存储在存储器204中的计算机可读指令, 并且具有其它能力。
存储器204可以是本领域已知的任何计算机可读介质,例如包括易失 性存储器(例如RAM)和/或非易失性存储器(例如,ROM、闪存等)。 存储器204也可包括程序206和数据208。程序206可对与运行在一个或多 个基于计算的设备102上的程序与文件系统和/或设置之间的交互相关联的 数据执行査询相关进程以及其它操作。程序206还包括例如査询模块210、 通知模块212、操作系统214和其它应用程序216。操作系统214提供用于 程序206中的一个或多个模块的运作的操作环境。
査询模块210对代理110所收集的诸如日志存储218所包括的信息等 信息执行基于査询的操作。代理110所收集的信息还可从档案收集106中 检索。查询220包括多个査询,如预定义的査询。这种预定义的査询可以 涉及与诸如安全策略定义等为系统100所规定的一个或多个策略定义相关 的状况。在这种情况下,可由査询模块210执行的任何或所有分析都可以 符合这种预定义的策略定义或预定义的查询。
査询模块210可将査询220限于一个或多个属性。这样的属性可包括 文件名、应用程序类型、执行的时间等。当在受限査询的基础上运作时, 査询模块210扫描存储在日志存储218和/或档案收集106中的所有信息以 寻找指示该属性的存在的值。例如,如果个体希望在档案收集106中搜索 与诸如文字处理程序等特定应用程序相关的数据,则查询模块210搜索与 该文字处理程序所发起或影响的交互相关联的条目或事件。
査询220可以包括诸如系统管理员等一个或多个个体或实体所输入或 编程的査询。例如,査询220可包括检测与给定用户ID相关联的所有交互 的指令。此外,查询220可以包括检测与在一个或多个基于计算的设备102 上运行的应用程序相关联的所有交互的指令。
回头参考收集服务器104,执行对与一个或多个基于计算的设备102 同文件系统和/或设置之间的交互相关联的信息的分析,以确定系统100的 运作和/或持续状态。查询模块210可被用来对代理IIO所收集的并存储在日志存储218和/或档案收集106中的信息执行分析。査询模块210可通过 使用査询220中所指定的一个或多个査询来执行对日志存储218和/或档案 收集106的搜索来这样做。执行査询220所生成的结果指示了一个或多个 基于计算的设备102与文件系统和/或设置之间的交互。
査询模块210可以指示通知模块212发出因执行査询220而生成的结 果的通知。通知模块212所生成的通知可被存储在数据208中的通知222 中。通知模块212所发出的通知还可被存储在外部数据库中,如外部存储 设备。査询模块210还可以指示通知模块212传递因执行査询220而生成 的通知。
査询模块210可以搜索日志存储218和/或档案收集106,来检测关于 查询模块210所执行的查询220的、与一个或多个基于计算的设备102之 间的交互相关联的信息中的偏差。在这种情况下,检测这种与特定交互相 关的偏差可再次由通知模块212通知,并且对应的通知222可被传递给如 系统管理员或计算系统等各个个体,用于存储通知以供将来引用。
通知模块212还能够提供与通知222相关联的上下文信息。该上下文 信息可以另外指定与对应的交互相关联的设置。上下文信息可对相关通知 进行一级或多级注解。例如, 一个级别提供与其上安装程序的机器的数量、 文件的最常用版本等相关的统计信息。另一级别的注解指示所安装的文件 的散列值与索引例如程序名、版本信息等属性的数据收集的比较。能够存 在又一级别的注解,其可以提供与已知问题、厂商等相关的注释或任何辅 助信息。可以实现附加级别的注解,从而指定与相关联的通知222相关的 附加属性。通知222还可以通过允许例如系统管理员等个体审阅通知222 并对必要情况采取适当的动作的可视界面来显示。
査询模块210可被用于检测所记录的、由于在一个或多个基于计算的 设备102上运行的程序与文件系统和/或设置之间的交互而在系统100内发 生的改变。所记录的改变包括由于程序、操作系统、用于实现如结算等特 定商务任务的程序和其它程序等的非预期执行而导致的对系统的PS的改 变或修改。这种所纪录的对系统的PS的改变被授权和控制,以防止如系统 的被扼制的性能、安全问题等不合需要的状况。还应注意,PS中所发生的改变并不全是所记录的改变。
所记录的改变可以由标识符来进行注解,并按照所分配的注解来分类。 所记录的改变的注解可以通过查询模块210指定分类规则来执行。基于分 类规则中所指定的参数,将适当的参数与同所记录的改变相关的特定属性
进行关联。例如,查询模块210将分类规则中包含的子串的每一匹配与所
记录的每一改变中包含的修改的名称或类型进行关联。所记录的改变的分 类可以在优先级值的基础上来分配。例如,在这种情况下,具有较高优先 级的分类子串的匹配优先于具有较低优先级的分类子串。具有较高优先级 的分类子串随后确定为相关的所记录的改变的相关分类。
所记录的改变可以通过将改变标记为以下分类的至少一个或多个来分

问题指示来自即时PS的存在或移除的已知问题或结果。 安装指示PS中的作为安装或升级的结果的改变。 设置指示对配置设置或配置PS所进行的改变。 内容指示网页、图像、文本和用户数据。
管理改变指示对在系统上运行的负责该系统的管理的程序所进行的 安装、打补丁、或配置改变。
未经授权的指示未经授权的或禁止的应用程序的安装或包括禁止值 的配置改变。
用户活动指示PS中的作为用户登录或运行窗口应用程序的结果的改变。
噪声指示临时的或高速缓存的PS。 未知指示未分类的PS。
可以提供附加解来进一步对所记录的改变进行分类并使它们与其它改 变相区别。
查询模块210还可用于确定在系统100上运行的程序的状态是经授权 的还是未经授权的。这是基于只有经授权的进程或程序才应在系统100上 运行的需求的。査询模块210通过将查询220中所指定的属性与定义系统 的PS中的特定改变或修改的属性进行比较,来确定在系统100上运行的程序的状态是经授权的还是未经授权的。例如,查询模块210执行指定应用
程序类型为未经授权的程序的查询220。因执行査询220而获得的结果包含 与PS中的、响应于指定的应用程序类型的执行所发生的改变相关的信息。 査询模块210在获得结果时将这些结果标记为未经授权的程序的执行或动 作所招致的改变。
査询模块210可以将经批准的和/或未经批准的程序的预定义列表中指 定的属性与定义系统的PS中的特定改变或修改的属性进行比较。该列表在 即时情况下可以包含特定数量的经批准的或未经批准的程序。在系统100 上运行的、与在该预定义列表中被标识为未经批准的程序相类似的程序被 标记为未经批准的程序。
预定义列表中所指定的经批准的和/或未经批准的程序还可以包含诸 如标记等属性化程序的本性和/或各种特性的附加信息。这种附加信息的示 例包括诸如"经批准的"、"类型"、"类别"、"功能"、"产品信息"、 "制造商信息"和"产品描述"等标记。例如,被标记为"经批准的"的 程序被认为是用于在系统100中的一个或多个基于计算的设备102上运行 的经授权的程序;而"类别"标记指定该程序的预期用途。
程序第一次所执行的改变或修改默认是未经批准的,并被标记为"未 经授权的"。例如,在第一次检测程序的改变和修改时,查询模块210将 该査询及其相关联的交互标记为"未经授权的"。被标记为"未经授权的" 的程序可由通知模块212通知来供例如系统管理员审阅,以在必要时执行 诊断或等待批准。如果获得批准,则该经批准的程序被进一步与属性化该 程序的适当的标记进行关联,并还可以被添加到包含经批准的和/或未经批 准的程序的预定义列表中。
査询模块210还可以检测可扩展性点(EP) 。 EP是指示与在一个或多 个基于计算的设备102上运行的操作系统或程序相关联的指令的动态加载 和执行的交互。例如,在诸如文字处理程序、电子表格应用程序等在一个 或多个基于计算的设备102上运行的第一程序启动时,该第一程序还可以 触发与诸如插件程序等向该第一程序的运行提供附加功能的其它程序相关 联的指令。以此方式,第一程序的运行可以生成各种交互,包括第一程序与文件系统之间的交互和向第一程序的运行提供附加功能的其它程序与该 文件系统之间的交互。这种信息可以提供对其上安装第一程序的系统的运 作的洞察,并且还推测这些安装可能在系统上产生的影响。
作为第一程序的运行的结果所生成的、与各种交互相关联的信息可由 例如代理110截取并复制。与各种交互相关联的事件信息可以作为经压縮
的日志存储在日志存储218和/或档案收集106中。虽然事件信息存储在压 縮存储中,但可以理解,可能不必使用压縮存储;然而,对压縮存储的使 用通过使存储占据更少空间来使系统可伸縮性更好。所存储的事件信息可 由诸如系统管理员等实体或由查询模块210来审阅,以检测与第一程序和 其它程序相关联的、同文件系统的交互。以此方式,如果其它程序与第一 程序的运行相关联,则可以检测它们。
査询模块210还可被用来检测第一程序的直接EP。例如,查询模块210 可通过隔离(1)关于在第一程序的执行之前加载到系统存储器中供执行的 各个程序,并且(2)引用第一程序或与第一程序的运行相关联的交互,来 检测直接EP。
在一个示例性实现中,查询模块210可通过在日志存储218和/或档案 收集106中査询关于在第一程序的执行之前加载到系统存储器中供执行的 各个程序的交互来标识第一程序的潜在直接EP。例如,査询模块210可査 询关于在第一程序的执行之前的给定时间范围内,诸如1秒内加载到系统 存储器中供执行的各个程序的交互。査询模块210可通过査询引用第一程 序或与第一程序的运行相关联的交互的潜在EP来从潜在EP中标识第一程 序的直接EP。直接EP可以存储在其它数据224中。
査询模块210还可用于检测间接EP。例如,返回以上第一程序示例, 査询模块210可以査询日志存储218和/或档案收集106以寻找引用直接EP 或与直接EP相关联的交互。这种交互可被称为间接EP。间接EP可以存储 在其它数据224中。
査询模块210也可用于通过监控直接EP来检测恶意软件应用程序的存 在。恶意软件应用程序可包括诸如"间谍软件"、"特洛伊木马"、"蠕 虫"、"病毒"等在正常环境下不与程序相关联的应用程序。例如,査询模块210可以将在一个或多个基于计算的设备102上运行的程序的EP与在 不存在恶意软件的情况下在该程序在基于计算的设备102上运行时所找到 的同一程序的控制EP进行比较。EP和控制EP之间的差异可由诸如查询模 块210和/或系统管理员等实体来检査,以确定这些差异是否指示结合程序 运行的恶意软件的存在。使用EP找到的恶意软件可由査询模块210、系统 管理员等从受影响的基于计算的设备102中移除。
在另一实现中,査询模块210可被用于由通知模块响应于对EP的检测 而生成通知222。在又一实现中,所生成的通知222还可通过方便诸如系统 管理员等个体对通知222进行审阅以进行进一步分析或执行必需诊断的可 视界面来査看和检索。
图3示出描绘在各可能的实现的一个中所生成的通知222的示例性可 视界面300。在所示实现中,可视界面300描绘第一程序(例如web浏览 器)在其执行时所执行的下载。可视界面300在段302和304中描绘第一 程序在其执行期间所下载的程序列表(在图3所示的示例中,具体是"MSN 搜索工具栏(msnsearchtoolbarsetup_en-us.exe)"禾卩"Winamp媒体播放器 (winamp52—full—emusic-7plus.exe)")。在该图示中,在段306中可以看 到,在段302、 304中所看到的程序的下载还导致与不同于第一程序和段 302、 302所示的程序的程序相对应的程序文件的创建。可视界面300形式 的可视表示因而提供在执行、下载和/或安装第一程序时无意地安装在系统 100的一个或多个基于计算的设备102上的程序的列表。
段306还可以指示系统100的PS中的、作为不同于第一程序的程序的 安装或执行的结果的影响或修改。不同于第一程序的一个或多个程序的进 一步执行可能依赖于第一程序的执行。例如,如图所示,"MAN搜索工具 栏"可在第一程序的程序文件的执行时被激活。对该效果的判定可以通过 检测对应于第一程序的EP来实现。通过监控与第一程序相关联的EP,依 赖于第一程序的执行的其它程序的程序执行的实例可被检测并且在需要时 可以采取纠正动作。
依赖于第一程序的执行的其它程序的执行的实例还可以通过另一可视 界面400来显示,如图4所示。图4示出如段402所示的例如"iexplorer.exe"等第一程序的执行,包括如段404所示的Winamp的执行,其又进一步执 行如段406所示的"emusic.exe"。从该图示中,与第一程序相关联的EP 的检测可以详细地并通过可视手段来实现。
査询模块210可用于检测漏出PS。漏出文件包括在创建文件或注册表 设置的程序被卸载之后留在诸如系统100的系统上的文件或注册表设置。 其还可以包括作为安装的结果所创建的(例如临时文件)但在安装过程完 成之后没有被删除的文件或设置。此外,另一类PS可能漏出,如在程序的 运行时期间(即,在安装之后)所生成的PS。这些的示例是可在第一次使 用时所生成的状态或在初始安装之后分开安装的对程序的扩展。
为检测漏出文件,査询模块210对安装文件和与加载到系统100上的 每一程序相关联的设置改变进行分类,这可以通过程序的使用以及初始安 装来跟踪。之后,如果程序被卸载,则可回收该程序的安装文件和配置或 注册表设置的相应的目录,且可检査系统100来确保移除或复位了所有安 装文件和注册表设置。为了检测基于计算的设备102上的漏出文件,查询 模块210可通过对一个或多个基于计算的设备102运行扫描来检测诸如应 用程序等安装在基于计算的设备102上的所有程序以对安装文件分类。
查询模块210也可取得一个或多个基于计算的设备102的操作系统的 安装程序数据库中注册的所有程序的列表。安装程序数据库的示例包括产 生安装在所考虑的基于计算的设备上的程序的填充列表的组件。
查询模块210在日志存储218和/或档案收集106中査询注册表配置或 设置信息并枚举向基于计算的设备102的操作系统注册的程序的列表。査 询模块210随后可以扫描日志存储218和/或档案收集106,来枚举安装在 基于计算的设备102上的、可被概括为所有PS的文件和注册表项。为了枚 举文件和注册表项,査询模块210可查询对应于安装在基于计算的设备102 上的程序的例如程序ID等一个或多个属性的所有文件和注册表项。
如果基于计算的设备102上的文件或设置没有被包括在对应于安装在 基于计算的设备102上的程序的程序ID的文件和注册表项中,则査询模块 210可推断该文件或设置是漏出文件。漏出文件可由查询模块210或包括操 作系统、系统管理员等在内的各种其它程序来移除。
15检测到的漏出文件(PS)可以通过允许例如系统管理员等个体审阅该 漏出文件并对必要情况采取适当动作的可视界面来显示。此外,所显示的 漏出文件(PS)和相关联的信息可以存储在例如外部数据库等外部存储收 集中以供将来引用。漏出PS列表可被系统用来在主应用程序被移除后自动 地移除漏出状态。该漏出PS还可被用来将系统上的每一 PS与所有者应用 程序进行关联。
查询模块210可检测由于改变的文件、设置或失效模块,包括常见的 误配置、老软件版本等而失效的进程。失效进程例如当软件升级无法在替 换盘上可执行文件、程序文件或设置之后重启受影响的进程时出现。结果, 其上找到失效进程的基于计算的设备将忽略升级并继续基于老的可执行文 件、程序文件或设置来执行。
为检测失效进程,査询模块210可以查询存储在日志存储218和/或档 案收集106中的、与程序的交互相关联的信息。査询模块210在日志存储 218和/或档案收集106中査询安装在一个或多个基于计算的设备102上的 程序的最近加载时间。查询模块210也可在日志存储218和/或档案收集106 中查询与所安装的软件相关联的文件或注册表设置的最近加载时间。在一 个示例性实现中,査询模块210在日志存储218和/或档案收集106中査询 与随软件安装的软件关联动态链接库(DLL)相关联的文件或注册表设置 的最近加载时间。査询模块210也可在日志存储218和/或档案收集106中 査询安装在基于计算的设备上的软件的最近修改的时间或日期。这样的修 改例如包括对与所安装的软件的最近已知版本相关联的一个或多个文件或 程序设置执行的访问。
在软件的最近加载时间晚于软件最近已知修改的时间或日期时,可能 发生因软件没有利用最近加载的更新而导致的不一致性。这样的不一致性 如果被查询模块210检测到,则可由诸如系统管理员等个体注意并更正。
检测到的失效文件可以通过允许例如系统管理员等个体审阅该失效文 件并对必要情况采取适当的动作的可视界面来显示。此外,所显示的失效 文件和相关联的信息可以存储在例如外部数据库等外部存储收集中以供将 来引用。査询模块210可以检测包括诸如"恶意软件"、"间谍软件"、"特 洛伊木马"、"病毒"等软件应用程序在内的已知不当程序的出现。为此,
査询模块210可在日志存储218和/或档案收集106中查询并搜索在一个或 多个基于计算的设备102的存储器中所加载以供执行的程序。在存储器中 加载以供执行的程序然后可例如由査询模块210对照已知不当程序的列表 来比较。
例如,查询模块210可基于与程序相关联的标识符,诸如程序ID等来 检测基于计算的设备102上的存储器中所加载以供执行的程序的出现。查 询模块210随后可将基于计算的设备102上的存储器中所加载以供执行的 程序的标识符对照诸如程序ID等已知不当程序的标识符列表进行比较。如 果在存储器中所加载以供执行的程序的标识符与一已知不当程序的标识符 相匹配,则查询模块210可实现从基于计算的设备102移除在存储器中所 加载以供执行的程序。在一可能的实现中,已知不当程序的标识符的列表 可至少部分由系统管理员输入。
査询模块210所检测到的不当程序可以通过允许例如系统管理员等个 体审阅该不当程序并对其移除采取适当的动作的可视界面来显示。所显示 的不当程序和相关联的信息可以存储在例如外部数据库等外部存储收集 中,以供将来引用来用于检测相同的或类似的不当程序。
一个或多个基于计算的设备102上的不具有与其相关联的标识符的未 标识的程序可由査询模块210检测出并被报告给系统管理员以査明该未标 识的程序是否是不当程序。系统管理员可以通过审阅报告形式的未标识的 程序的列表来检查该未标识的程序的目的。系统管理员的审阅可以包括检 査该未标识的程序的目的、该未标识的程序对其它程序的依赖性、以及确 定该未标识的程序是否是不当的。另外,系统管理员可审阅对具有与这些 未标识的程序类似的特征的程序的以往经验来确定未标识的程序是否是不 当的。
如果系统管理员确定未标识的程序是不当的,则系统管理员可实现从 基于计算的设备102移除该未标识的程序。例如,系统管理员自己可以移 除未标识的程序,或系统管理员可以指示基于计算的设备102的元素来移除该未标识的程序。
另外,系统管理员可以在所生成的报告或一个或多个通知222的基础 上向未标识的程序分配诸如程序ID等标识符,并将该标识符包括在不当程 序的列表上。以此方式,如果未标识的程序出现在基于计算的设备102上, 则其可在相关联的标识符的基础上被快速地标识为不当程序。此外,未标 识的程序的移除可由基于计算的设备102的各元素、代理110等来实现。
查询模块210所检测到的未标识的程序及其相关联的进程可以通过允 许例如系统管理员等个体审阅该未标识的程序并对其移除采取适当的动作 的可视界面来显示。所显示的未标识的程序和相关联的信息可以存储在例 如外部数据库等外部存储收集中,以供将来引用来用于检测相同的或类似 的不当程序。此外,还可以标识和/或跟踪不需要的改变。
査询模块210可以通过禁止在一个或多个基于计算的设备102上运行 的程序向网络驱动器或可移动位置写入,来阻塞将文件复制到这些位置。 查询模块210还可以审阅先前出于审核目的执行的这种禁止写入以便将来 防止这种写入。
示例性方法
参考图1到4描述线程截取和分析的示例性方法。这些示例性方法可 在计算机可执行指令的一般上下文中描述。 一般而言,计算机可执行指令
可包括执行特定功能或实现特定的抽象数据类型的例程、程序、对象、组 件、数据结构、过程、模块、功能等。这些方法还能在其中功能由通过通 信网络链接的远程处理设备完成的分布式计算环境中实现。在分布式计算 环境中,计算机可执行指令可以位于包括存储器存储设备在内的本地和远 程计算机存储介质中。
图5示出用于捕捉和收集与在一个或多个基于计算的设备102上运行 的程序和/或文件系统和设置之间的交互相关联的信息的示例性方法500。 描述方法的次序并不旨在解释为限制,并且任何数量的所述方法框都可以 按任何次序组合以实现本方法或实现替换方法。另外,可从方法中删除各 个框,而不背离此处所述的主题的精神和范围。此外,本方法可用任何合 适的硬件、软件、固件或其组合来实现。在框502处,截取与在系统上运行或执行的程序相关联的信息或数据。 在一实现中,在程序/进程调用包括经修改的功能代码在内的被进行插装的 功能时收集所述信息。例如,计算机可读指令可被修改,来指示一个或多
个功能捕捉与在基于计算的设备102的一个或多个上运行的程序和/或文件
系统和设置之间的交互相关联的数据。在一实现中,虚拟机在其解释原始 代码执行时直接应用数据收集逻辑。该技术将不要求修改原始代码。类似 地,这可以直接在处理器硬件中实现。
诸如代理110等代理可以对系统100中的一个或多个功能进行插装。 可通过修改与该一个或多个功能相关联的计算机可读指令来对该一个或多 个功能进行插装。
诸如线程数据记录器等代理110可以截取调用系统100中的经修改的 功能的线程。线程与之相关联的程序可在若干操作层之一中运行,诸如程 序层202、中间件层204、操作系统层等。程序可能正视图与之交互的文件 系统可包括文件(诸如数据文件、可执行文件)和设置信息(诸如配置设 置或注册表设置)等。
在框504处,与在一个或多个基于计算的设备102上运行的程序的执 行相关联的各种信息或数据被收集在或复制到存储器位置中。与程序同文 件系统和/或设置的交互(包括经修改的功能所发起的交互)相关联的信息 被复制和发送到存储器位置。例如,代理110可以复制与这些交互相关联 的所有或选择的数据,并将该数据存储在存储器位置中,如收集服务器104。 与这些交互相关联的数据可以包括关于所插装的功能所发起的交互的信 息。
在框506处,压縮存储在存储器位置中的数据。在一个实现中,压縮 数据可被存储在另一存储器位置中。例如,压縮数据可被存储在收集服务 器104中的日志存储218中和/或档案收集106中。
在框508处,周期性上传压縮数据以供分析。压縮数据可被上传给收 集服务器106或用作收集服务器106的存储器位置。上传压縮数据以供分 析的周期可变化。在一个实现中,压縮数据在指定时间间隔之后上传。在 另一实现中,压縮数据可在压縮数据超出存储器的预定义阈值限制时上传。图6示出用于分类所记录的改变的示例性方法600。所记录的改变包
括由于程序、操作系统、用于实现如结算等特定商务任务的程序和其它程 序等的非预期执行而发生的改变或修改。描述方法的次序并不旨在解释为 限制,并且任何数量的所述方法框都可以按任何次序组合以实现本方法或 实现替换方法。另外,可从方法中删除各个框,而不背离此处所述的主题 的精神和范围。此外,本方法可用任何合适的硬件、软件、固件或其组合 来实现。
在框602处,指定由各参数值所属性化的分类规则。例如,分类规则 可以由査询模块210连同定义该分类规则的参数值一起来指定。
在框604处,将定义分类规则的参数与定义所记录的改变的本性和特 征的一个或多个属性进行关联。查询模块210将定义分类规则的参数与表 征所记录的改变的属性进行关联。 一个或多个参数值与表征所考虑的所记 录的改变的属性的关联产生一组可能的分类。例如,程序模块210将分类 规则中包含的子串的每一匹配与所记录的每一改变中包含的PS名称进行 关联。
在框606处,向一个或多个可能的分类分配优先级值。査询模块210 可以向一个或多个可能的分类分配优先级值。例如,在较长一段时间内所 发生的特定的所记录的改变将被分配较高的优先级值。
在框608处,向所考虑的所记录的改变分配具有最高优先级值的可能 的分类。在一实现中,査询模块210确定分配给可能的分类的最高优先级 值,并将该分类分配给所考虑的所记录的改变。
图7示出用于禁止例如由系统管理员定义的未经授权的交互在一个或 多个基于计算的设备102上的执行的示例性方法700。未经授权的交互的示 例包括由未被授权对文件系统执行读和/或写动作的实体或程序对文件系统 执行这样的动作。
描述方法的次序并不旨在解释为限制,并且任何数量的所述方法框都 可以按任何次序组合以实现本方法或实现替换方法。另外,可从方法中删 除各个框,而不背离此处所述的主题的精神和范围。此外,本方法可用任 何合适的硬件、软件、固件或其组合来实现。在框702处,接收与在系统上运行的程序相关联的信息。该信息与程 序同文件系统和/或配置设置之间的交互相关联。查询模块210可以在日志 存储218和/或档案收集106中查询与一个或多个基于计算的设备102上的 程序所执行的交互相关的信息。通过查询的执行所获得的信息由一个或多 个属性来表征。
在框704处,将在系统上运行的程序的属性与预定义列表中所包括的 多个经批准的和未经批准的程序/进程的属性进行比较。例如,查询模块210 将该程序的诸如程序类型等属性与预定义列表中所包括的程序的属性进行 比较。
在框706处,确定该属性是否对应于未经批准的程序/迸程或交互的属 性。例如,如果在系统100上运行的程序的属性对应于与未经批准的交互 相关联的属性(即自框706的'是'分支),则不允许进行与程序相关联 的交互(即框708)。另选地,如果在系统IOO上运行的程序的属性不对应 于与未经批准的交互相关联的属性(即自框706的'否'分支),则允许 进行与该程序相关联的交互(即框710)。
图8示出用于检测安装在一个或多个基于计算的设备102上的程序的 一个或多个可扩展性点(EP)的示例性方法800。 EP包括控制计算机应用 程序的动态加载和执行的交互。描述方法的次序并不旨在解释为限制,并 且任何数量的所述方法框都可以按任何次序组合以实现本方法或实现替换 方法。另外,可从方法中删除各个框,而不背离此处所述的主题的精神和 范围。此外,本方法可用任何合适的硬件、软件、固件或其组合来实现。
在框802处,检查先前的交互(即,关于在第一程序的执行之前在系 统存储器中所加载以供执行的各个程序的交互)。例如,查询模块210可 通过在日志存储218和/或档案收集106中査询关于在第一程序的执行之前 加载到一个或多个基于计算的设备102的存储器中以供执行的各个程序的 交互,来标识第一程序的潜在直接可扩展性点(EP)。査询模块210可査 询关于在第一程序的执行之前的给定时间范围内,诸如2秒内加载到存储 器中以供执行的各个程序的交互。
在框804处,执行检査以找出引用在基于计算的设备的系统存储器中
21所加载以供执行的第一程序的文件名的先前交互。例如,查询模块210可 査询与引用第一程序或同第一程序在基于计算的设备102上的执行相关联
的各个程序相关联的交互。査询模块210可査询包括各种属性的交互,属 性诸如有第一程序的文件名、第一程序的程序ID等。
在框806处,将引用第一程序的文件名的先前的交互标记为直接EP。 例如,查询模块210可通过查询引用第一程序或与第一程序的执行相关联 的所有先前交互,来标识第一程序的直接EP。
图9示出用于检测因从一个或多个基于计算的设备卸载程序而留下的 漏出条目的示例性方法900。描述方法的次序并不旨在解释为限制,并且任 何数量的所述方法框都可以按任何次序组合以实现本方法或实现替换方 法。另外,可从方法中删除各个框,而不背离此处所述的主题的精神和范 围。此外,本方法可用任何合适的硬件、软件、固件或其组合来实现。
在框902处,分类并枚举与加载到基于计算的设备和/或系统上的每一 程序相关联的安装文件和设置改变。枚举包括创建向基于计算的设备的操 作系统注册的程序的列表。
例如,可扫描系统100以检测安装在系统中的基于计算的设备上的所 有程序以及与基于计算的设备上的程序相关联的所有操作系统安装文件。 可通过将安装在基于计算的设备上的所有程序和/或与程序相关联的所有操 作系统安装文件置于列表中来枚举这些程序和文件。
査询模块210对系统100运行扫描,检测安装在一个或多个基于计算 的设备102上的所有程序以分类并枚举基于计算的设备102上的所有操作 系统安装文件。例如,査询模块210可在日志存储218和/或档案收集106 中查询向系统100中的一个或多个基于计算的设备102的操作系统注册的 所有程序。所找到的程序可由如査询模块210、代理IIO等各个设备来分类 和枚举。此外,与所找到的程序相关联的、基于计算的设备102上的所有 操作系统安装文件可由如査询模块210、代理110等各个设备来分类和枚 举。
在框卯4处,枚举存在于基于计算的设备和/或系统上的持续状态(PS), 包括与卸载的程序相关联的文件和注册表设置。这可涉及在基于计算的设备和/或系统上的存储器中扫描已被安装在基于计算的设备和/或系统上的 所有程序的文件和注册表设置,包括已被卸载的程序的文件和注册表设置。
例如,査询模块210可査询日志存储218和/或档案收集106以获取对应于 已被安装在基于计算的设备102上的所有程序的标识符(如程序ID)的所 有文件和注册表设置。
在框906处,将与向操作系统注册的程序相关联的文件和注册表设置 与已被安装在基于计算的设备102和/或系统IOO上的程序的文件和注册表 设置进行比较。例如,査询模块210可将所枚举的、与向基于计算的设备 102的操作系统注册的程序相关联的文件和注册表设置的标识符(如程序 ID)与已被安装在基于计算的设备102上的所有程序的文件或设置的标识 符进行比较。
在框908处,可将与同时位于这两个列表上的程序相关联的文件和注 册表设置排除在考虑之外。表示对应于已从基于计算的设备102和/或系统 100卸载的程序的文件和注册表设置的其余文件和注册表设置可被称为漏 出文件,且可从基于计算的设备102和/或系统100中移除。例如,査询模 块210可使与向基于计算的设备102的操作系统注册的程序相关联的文件 和注册表设置的标识符(如程序ID)与关联于巳被安装在基于计算的设备 102上的程序的文件和注册表设置的标识符相关。与非相关程序相关联的文 件和注册表设置可由查询模块210视为漏出文件,并可由诸如查询模块 210、代理IIO等元素从基于计算的设备102移除。
图10示出用于检测包括常见的误 配置、老软件版本等安装在一个或多 个基于计算的设备102上的失效文件的示例性方法1000。失效文件例如在 软件升级无法在替换磁盘上的可执行文件之后重启受影响的进程时出现。 结果,其上找到失效文件的基于计算的设备102将忽略升级并继续根据老 的文件来执行该程序。描述方法的次序并不旨在解释为限制,并且任何数 量的所述方法框都可以按任何次序组合以实现本方法或实现替换方法。另 外,可从方法中删除各个框,而不背离此处所述的主题的精神和范围。此 外,本方法可用任何合适的硬件、软件、固件或其组合来实现。
在框1002处,分类并枚举加载到基于计算的设备和/或系统上的程序。在一个实现中,枚举包括创建向基于计算的设备的操作系统注册的程序的 列表。例如,可扫描系统以检测安装在该系统中的基于计算的设备上的所 有程序。可通过将安装在基于计算的设备上的所有程序置于列表中来枚举 这些程序。
在一个可能的实现中,査询模块210对系统100运行扫描,检测在一
个或多个基于计算的设备102上注册的所有程序以分类并枚举向基于计算 的设备102的操作系统注册的所有程序。例如,査询模块210可在日志存 储218和/或档案收集106中査询向系统100中的一个或多个基于计算的设 备102的操作系统注册的所有程序。所找到的程序可由如査询模块210、代 理110等各个设备或实体来分类和枚举。
在框1004处,获取在基于计算的设备和/或系统上注册的所有程序的 最近加载时间,以及与在基于计算的设备和/或系统上注册的程序相关联的 文件的最近加载时间。例如,查询模块210在日志存储218和/或档案收集 106中査询在基于计算的设备102上注册的程序的最近加载时间和/或随在 系统100中的基于计算的设备102上注册的程序而安装的诸如动态链接库 (DLL)文件等文件的最近加载时间。
在框1006处,获取与在基于计算的设备和/或系统上注册的程序相关 联的文件或设置的最近修改时间,并将其与该程序的最近加载时间进行比 较。例如,查询模块210可在日志存储218和/或档案收集106中査询向基 于计算的设备102的操作系统注册的程序的最近修改的时间或日期。査询 模块210可将最近修改的时间和日期与程序的最近加载时间进行比较。
在框1008处,记录在比较期间找到的任何不一致性。例如,在基于计 算的设备和/或系统上注册的程序的最近加载时间晚于该程序的最近已知修 改的时间或日期的情况下,程序有可能还未对最近修改作出响应。在这种 情况下,可向诸如用户或系统管理员等实体发出出错报告,报告程序未对 最近尝试的修改作出响应。或者,可进行尝试来重试程序的最近尝试的修 改。
在一个示例性实现中,査询模块210可査询向系统100中的基于计算 的设备102的操作系统注册的程序的最近加载时间和最近修改时间两者。査询模块210可将最近加载时间与最近修改时间进行比较,如果程序的最 近加载时间晚于程序的最近修改时间,则査询模块210可向诸如用户或系 统管理员等实体发出出错报告,报告程序未对最近尝试的修改作出响应。
在另一实现中,査询模块210还可以尝试重试程序的最近尝试的修改。
示例性计算机环境
图11示出了示例性通用计算机环境1100,它可用于实现此处所述的 技术,且整体或部分地表示此处所述的元素。计算机环境1100仅是计算环 境的一个示例,而非旨在对计算机和网络体系结构的使用范围或功能提出 任何限制。计算机环境1100也不应被解释成对于在示例计算机环境1100 中所示出的任一组件或其组合有任何依赖或要求。
计算机环境1100包括计算机1102形式的通用的基于计算的设备。计 算机1102例如可以是台式计算机、手持式计算机、笔记本或膝上型计算机、 服务器计算机、游戏控制台等。计算机1102的各组件可以包括但不限于 一个或多个处理器或处理单元1104、系统存储器1106、以及将包括处理器 1104在内的各系统组件耦合至系统存储器1106的系统总线1108。
系统总线1108表示任何若干类型的总线结构中的一个或多个,包括存 储器总线或存储器控制器、外围总线、加速图形端口以及使用任何各种总 线体系结构的处理器或局部总线。作为示例,这样的体系结构可包括工业 标准体系结构(ISA)总线、微通道体系结构(MCA)总线、增强型ISA (EISA)总线、视频电子技术标准协会(VESA)局部总线和外围部件互连 (PCI)总线(也被称为夹层(Mezzanine)总线)。
计算机1102通常包括各种计算机可读介质。这样的介质可以是能由计 算机1102访问的任何可用介质,包括易失性和非易失性介质以及可移动和 不可移动介质。
系统存储器1106包括诸如随机存取存储器(RAM) 1110等易失性存 储器形式的计算机可读介质,和/或诸如只读存储器(ROM) 1112等非易失 性存储器形式的计算机可读介质。基本输入/输出系统(BIOS) 1114被存储 在ROM 1102中,它包含插助在诸如启动期间在计算机1112内元件之间传 递信息的基本例程。RAM 1110通常包含处理单元1104可以立即访问和/或目前正在操作的数据和/或程序模块。
计算机1102还可以包括其它可移动/不可移动、易失性/非易失性的计 算机存储介质。作为示例,图11示出了对不可移动、非易失性磁性介质(未
示出)进行读写的硬盘驱动器1116,对可移动、非易失性磁盘1120 (例如 "软盘")进行读写的磁盘驱动器1118,以及对诸如CD-ROM、 DVD-ROM 或其它光学介质等可移动、非易失性光盘1124进行读写的光盘驱动器 1122。硬盘驱动器1116、磁盘驱动器1118和光盘驱动器1122各自通过一 个或多个数据介质接口 1126连接至系统总线1108。或者,硬盘驱动器1116、 磁盘驱动器1118和光盘驱动器1122也可通过一个或多个接口 (未示出) 与连接至系统总线1108。
盘驱动器及其相关联的计算机可读介质向计算机1102提供对计算机 可读指令、数据结构、程序模块以及其它数据的非易失性存储。尽管该示 例示出了硬盘1116、可移动磁盘1120和可移动光盘1124,可以理解可存 储可由计算机访问的数据的其它类型的计算机可读介质也可用来实现该示
例性计算系统和环境,这些介质如盒式磁带或其它磁存储设备、闪存卡、 CD-ROM、数字多功能盘(DVD)或其它光盘存储、随机存取存储器(RAM)、 只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)等等。
众多程序模块可储存在硬盘1116、磁盘1120、光盘1124、 ROM 1112 和/或RAM 1110中,作为示例包括操作系统1127、 一个或多个应用程序 1128、其它程序模块1130和程序数据1132。每个这样的操作系统1127、 一个或多个应用程序1128、其它程序模块1130以及程序数据1132 (或其 某种组合)可实现支持分布式文件系统的常驻组件的全部或部分。
用户可通过诸如键盘1134和定点设备1136 (例如"鼠标")等输入 设备向计算机1102输入命令和信息。其它输入设备1138 (未具体示出)可 以包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、串行接口、扫描仪等。 这些和其它输入设备通过耦合到系统总线1108的输入/输出接口 1140连接 到处理单元1504,但也可通过其它接口和总线结构如并行端口、游戏端口 或通用串行总线(USB)来连接。
监视器1142或其它类型的显示设备也经由诸如视频适配器1144等接
26口连接至系统总线1108。除监视器1142之外,其它输出外围设备可包括诸 如扬声器(未示出)和打印机1146等组件,这些组件可通过输入/输出接口 1140连接至计算机1102。
计算机1102可使用至一台或多台远程计算机(如远程基于计算的设备 1148)的逻辑连接在网络化环境中操作。作为示例,远程基于计算的设备 1148可以是个人计算机、便携式计算机、服务器、路由器、网络计算机、 对等设备或者其它常见网络节点等。远程基于计算的设备1148被示为可以 包括在本文中相对于计算机1102描述的许多或全部元素和特征的便携式计 算机。
计算机1102和远程计算机1148之间的逻辑连接被描绘为局域网 (LAN) 1150和通用广域网(WAN) 1152。这样的联网环境常见于办公室、 企业范围计算机网络、内联网和因特网中。
当在LAN联网环境中实现时,计算机1102通过网络接口或适配器1154 连接到局域网1150。当在WAN联网环境中实现时,计算机1102通常包括 调制解调器1156或用于在广域网1152上建立通信的其它装置。调制解调 器1156可以是计算机1102内置或外置的,其可通过输入/输出接口 1140 或其它适当的机制连接到系统总线1108。可以理解,所示网络连接是示例 性的,也可采用在计算机1102和1148之间建立通信链接的其它手段。
在诸如对计算环境IIOO示出的网络化环境中,相对于计算机1102描 绘的程序模块或其部分可被存储在远程存储器存储设备中。作为示例,远 程应用程序1158驻留在远程计算机1148的存储器设备上。为说明起见, 应用程序和诸如操作系统的其他可执行程序组件在这里被示为离散的块, 但可以理解,这样的程序和组件在不同的时间驻留在基于计算的设备1102 的不同存储组件中,并由计算机的数据处理器来执行。
各种模块和技术在此可在诸如程序模块等由一个或多个计算机或其它 设备执行的计算机可执行指令的一般上下文中描述。 一般而言,程序模块 包括执行特定的任务或实现特定的抽象数据类型的例程、程序、对象、组 件、数据结构等。通常,程序模块的功能可以在各个实施例中按需进行组 合或分布。这些模块和技术的实现可以存储在某种形式的计算机可读介质上或通
过某种形式的计算机可读介质传输。计算机可读介质可以是可由计算机访 问的任何可用介质。作为示例而非限制,计算机可读介质可包括"计算机 存储介质"和"通信介质"。
"计算机存储介质"包括以存储如计算机可读指令、数据结构、程序 模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移
动和不可移动介质。计算机存储介质包括但不限于,RAM、ROM、EEPROM、 闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存 储、盒式磁带、磁带、磁盘存储或其它磁存储设备,或者任何其它可用于 存储所需信息并可由计算机访问的介质。
或者,框架的各部分可用硬件或硬件、软件和/或固件的组合来实现。 例如,可将一个或多个专用集成电路(ASIC)或可编程逻辑器件(PLD) 设计或编程为实现该框架的一个或多个部分。
结论
尽管已经用结构特征和/或方法专用的语言描述了系统管理和分析的 各实施例,但是应该理解所附权利要求的主题不必限于所述具体特征或方 法。相反,这些具体特征和方法是作为系统管理和分析的示例性实现而公 开的。
权利要求
1.一种方法,包括截取与在计算设备上运行的程序相关联的数据;将所截取的数据复制到存储器位置;以及压缩所复制的数据。
2. 如权利要求1所述的方法,其特征在于,所述对数据的截取是在所 述程序调用被进行插装的功能来执行所述截取时执行的。
3. 如权利要求1所述的方法,其特征在于,所述将所截取的数据复制到存储器位置是复制到收集服务器的存储器位置。
4. 如权利要求1所述的方法,其特征在于,所述复制所截取的数据包括与交互相关联的所选数据。
5. 如权利要求1所述的方法,其特征在于,所述压縮所复制的数据包 括将压縮数据存储到第二存储位置。
6. 如权利要求1所述的方法,其特征在于,还包括周期性地上传压縮、k,f i rn数据。
7. 如权利要求6所述的方法,其特征在于,所述上传是在所述压縮数 据超过预定阈值限制时执行的。
8. —种方法,包括枚举与基于计算的设备的程序相关联的安装文件和设置改变; 枚举与所述基于计算的设备的已卸载的文件相关联的文件和注册表设 置;以及比较所述文件和注册表设置以确定漏出文件。
9. 如权利要求8所述的方法,其特征在于,所述枚举与基于计算的设 备的程序相关联的安装文件和设置改变包括创建向所述基于计算的设备的 操作系统注册的程序的列表。
10. 如权利要求8所述的方法,其特征在于,所述枚举与基于计算的 设备的程序相关联的安装文件和设置改变包括扫描来检测所述相关联的程 序。
11. 如权利要求8所述的方法,其特征在于,所述枚举与所述基于计算的设备的已卸载的文件相关联的文件和注册表设置包括扫描所述基于计 算的设备的存储器。
12. 如权利要求8所述的方法,其特征在于,所述比较包括将与向所 述基于计算的设备的操作系统注册的程序相关联的文件和注册表设置的标识符同与安装在所述基于计算的设备上的程序相关联的文件和注册表设置 的标识符进行相关。
13. 如权利要求8所述的方法,其特征在于,还包括移除所述漏出文件。
14. 一种方法,包括对加载到基于计算的设备上的程序进行分类; 获得向所述基于计算的设备注册的程序的最近加载时间;以及 将与向所述基于计算的设备注册的程序相关联的文件的最近修改时间 同所述最近加载时间进行比较。
15. 如权利要求14所述的方法,其特征在于,所述分类包括创建向 所述基于计算的设备的操作系统注册的程序的列表。
16. 如权利要求14所述的方法,其特征在于,所述分类包括通过将 所述程序置于列表中来枚举所述程序。
17. 如权利要求14所述的方法,其特征在于,所述分类包括扫描以 检测在所述基于计算的设备上注册的所有程序。
18. 如权利要求14所述的方法,其特征在于,所述获得包括查询曰 志文件。
19. 如权利要求14所述的方法,其特征在于,所述比较包括査询曰 志文件。
20. 如权利要求14所述的方法,其特征在于,还包括记录在所述比 较期间找到的任何不一致性。
21. 如权利要求14所述的方法,其特征在于,还包括记录在所述比 较期间找到的任何不一致性。对计算设备的程序进行分类; 注册所述程序的最近加载时间;获得与所述程序相关联的文件的最近修改时间;以及 将所述文件的最近修改时间与所述程序的最近加载时间进行比较。
22. —种方法,包括接收关于在系统上运行的程序的信息;将所述程序的属性与经批准的和未经批准的程序的列表的属性进行比 较;以及确定所述属性对应于未经批准的还是经批准的程序。
全文摘要
用于实现系统管理的、基于对一个或多个程序与它们趋向于表示的持续状态之间的交互的审阅的系统和方法。该系统提供对发生在系统内的修改的检测,验证这些修改是否是经批准的并在检测到未知修改时生成通知。
文档编号G06F11/30GK101542446SQ200780044309
公开日2009年9月23日 申请日期2007年11月30日 优先权日2006年12月1日
发明者C·弗波瓦斯基, J·李, R·鲁斯夫, X·刘, Y-M·王 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1