实时模块保护的制作方法_6

文档序号:8449222阅读:来源:国知局
适当行动。在一个实施例中,可以使用字节串的散列。
[0153]图8是用于实时模块保护的方法的示例实施例。所述保护可包括调节软件访问以用于保护存储器中的模块。
[0154]在805,对受保护的资源的尝试访问可被捕获。所述捕获可由操作系统下层捕获代理进行。对所捕获的尝试的后续处理可至少部分地由操作系统下层处理代理进行。所述资源可以包括以下中的一部分:受保护的系统存储器和模块、驱动程序、应用程序或驻留在其上的其它实体。这种存储器可根据物理或虚拟存储器来定义。驻留在存储器内的受保护的资源可根据给定实体的各个分段的位置而在存储器映射中进行映射。
[0155]在810,可确定所述尝试是否是由已知作为实体的被识别的分段的存储器位置做出的。这样的分段可包括,例如头、数据和代码分段。在一个实施例中,可基于存储器映射来分析所述实体的分段是否是已知的。在另一实施例中,可基于包括产生所述尝试的指令指针的字节串来分析所述实体的分段是否是已知的。如果实体的分段是已知的,则方法800可进行到815。如果不是,方法800可进行到845。
[0156]在815,可访问安全规则以确定如何处理来自实体的给定分段的尝试访问。可在820的范围内使用这一确定。在820,可确定受保护的资源哪个分段做出的尝试。对由特定分段做出的这种尝试的处理可根据做出所述尝试的特定实体的标识而变化。例如,来自操作系统内核、与被访问的模块相关的实体、或签名的驱动程序的代码分段可被允许访问,其中,来自未签名的驱动程序、未知的驱动程序,或与被访问的模块无关的实体可被拒绝。在一个实施例中,如果尝试是由头分段做出的,则方法800可进行到830。在各个其他实施例中,如果尝试是由头分段做出的,则方法800可进行到835或825。在另一个实施例中,如果尝试是由数据分段做出的,则方法800可进行到835。在各个其他实施例中,如果尝试是由数据分段做出,则方法800可进行到835或825。在又一实施例中,如果尝试是由代码分段做出的,则方法800可进行到825。在各个其他实施例中,如果尝试是由代码分段做出的,则方法800可进行到830或835。如果尝试不是由这些分段做出的,而是由另一个所标识的分段或由未标识的分段做出的,则方法800可默认进行到830。
[0157]在825,所述尝试可被允许。在一个实施例中,所述尝试可被允许,其等待(pending)直到可覆盖所述尝试的允许的其他其它反恶意软件规则的应用程序为止。例如,如果进行尝试的全部实体被另外确定为是恶意的,则所述尝试相反可被拒绝。在另一个实施例中,可由操作系统下层处理代理允许所述尝试而无需参考操作系统上层元素。方法800可进行到845。
[0158]在830,可做出对关于所述尝试的额外分析的查询。这种分析可以是同步或异步的。所述分析可包括例如扫描、签名匹配或启发式分析。所述分析可利用例如进行尝试的实体的内容或标识、受保护资源的内容或标识、或所尝试改变的内容。
[0159]在835,所述尝试可被拒绝。在一个实施例中,可由操作系统下层处理代理拒绝所述尝试而无需参考操作系统上层元素。方法800可进行到890。
[0160]在845,可确定所述尝试是否在受保护资源的所标识的分段上进行的。这种分段可包括例如头、数据和代码分段。在一个实施例中,可基于存储器映射而分析所述分段是否是已知的。如果分段是已知的,则方法800可进行到850。如果不是,则方法800可进行到890。
[0161]在850,可访问安全规则以确定如何处理对受保护资源的给定分段的尝试访问。该确定可在855的范围内使用。对模块的特定分段的尝试的处理可根据模块的标识而变化。例如,对操作系统内核、关键设备驱动程序,或其它关键组件的尝试访问可触发比由与驱动程序相关的实体做出的对该驱动程序的尝试访问更严格的访问要求。在855,可确定受保护的资源哪一分段被作为目标。在一个实施例中,如果尝试是针对头分段的,则方法800可进行到880。在各个其他实施例中,如果尝试是针对头分段的,则方法800可进行到860、865、870或875,以进行有条件的或绝对的允许或拒绝。在另一实施例中,如果尝试是针对数据分段的,则方法800可进行到860。在各个其他实施例中,如果尝试是针对数据分段的,则方法800可进行到860、865、870、875或880,以用于查询、有条件的或绝对的允许,或有条件的或绝对的拒绝。在又一实施例中,如果是尝试针对代码分段的,则方法800可进行到865。在其他各个实施例中,如果是尝试针对代码分段的,则方法800可进行到860、870、875或880,以用于查询、有条件的或绝对的允许,或有条件的或绝对的拒绝。如果尝试是针对这种分段、针对另一所标识的分段、或针对未标识的分段的,则方法800可默认进行到880。可根据被作为目标的模块的标识来处理这样的尝试,而无需考虑特定分段。
[0162]在860,可确定所述尝试是否来自另外已知是恶意的实体。该确定可不需要明确的确定所述实体是安全的还是恶意的。如果实体的恶意软件状态是未知的或已知是安全的,则可确定所述实体并非已知是恶意的。如果所述实体已知是恶意的,则方法800可进行到875。如果实体并非已知是恶意的,则方法800可进行到870。
[0163]在865,可确定所述尝试是尝试读取还是尝试写入。如果所述尝试是读取,则方法800可进行到870。如果所述尝试是写入,方法800可进行到875。
[0164]在870,所述尝试可被允许。在一个实施例中,所述尝试可被允许,其等待直到可覆盖所述尝试的允许的其他其它反恶意软件规则的应用程序为止。例如,如果进行尝试的实体被另外确定为是恶意的,则所述尝试相反可被拒绝。在另一个实施例中,可由操作系统下层处理代理允许所述尝试而无需参考操作系统上层元素。方法800可进行到890。
[0165]在875,所述尝试可被拒绝。在一个实施例中,可由操作系统下层处理代理拒绝所述尝试而无需参考操作系统上层元素。方法800可进行到890。
[0166]在880,可做出对关于所述尝试的额外分析的查询。这种分析可以是同步或异步的。所述分析可包括例如扫描、签名匹配或启发式分析。所述分析可利用例如进行尝试的实体的内容或标识、受保护资源的内容或标识、或尝试改变的内容。
[0167]在890,方法800可重复并返回到之前的元素,例如805,或者方法800可终止。
[0168]尽管图3、6和8关于方法300、600和800而公开了要采取的特定数量的步骤,但是可采取比图3、6和8中所示的更多或更少的步骤来执行方法300、600和800。此外,尽管图3、6和8关于方法300、600和800而公开了要采取的步骤的特定顺序,但是构成这些方法的步骤可以以任何合适的顺序完成。此外,方法300、600和800的一些或全部步骤可与来自方法300、600和800中的其他方法的步骤相结合。
[0169]可使用图1-2、4-5或7-8中的系统来实现方法300、600和800。在某些实施例中,方法300、600和800可部分地或完全在嵌入到计算机可读存储介质来中的软件来实现。
[0170]程序指令可以用于使得用指令编程的通用或专用处理系统来执行上述操作。所述操作可以由包含用于执行所述操作的硬接线的逻辑的特定硬件组件来执行,或由编程的计算机组件和定制硬件组件的任何组合来执行。本文所描述的方法可作为计算机程序产品,其可包括一个或多个机器可读介质,所述机器可读介质具有存储在其上、可用来编程处理系统或其它电子设备以执行这些方法的指令。本文所使用的术语“机器可读介质”或“计算机可读介质”应当包括能够存储或编码由机器执行并使得机器执行本文所描述的任何一种方法的指令序列的任何介质。术语“机器可读介质”应相应地包括,但不限于存储器,例如固态存储器、光盘和磁盘。此外,以一种或另一种形式(例如,程序、过程、进程、应用程序、模块、逻辑等)提及软件以作为“采取动作或导致结果”在本领域中是常见的。这种表达仅是“由处理系统进行的软件执行以使得处理器执行动作或产生结果”这一表达的简便方式。
[0171]系统100、200、400、500和700中的一个或多个可以与系统100、200、400、500和700中的其它部分组合。
[0172]以下示例涉及进一步的实施例。
[0173]一种用于保护电子设备的方法,可包括捕获对所述电子设备的受保护的系统资源的访问的尝试。所述方法可进一步包括确定与所述尝试相关联的模块。所述模块可包括多个不同的分段。此外,所述方法可包括确定与所述尝试相关联的所述模块的分段。所述分段可包括与所述尝试相关联的存储器位置。所述方法还可额外包括基于对所述模块的确定和对所述分段的确定来访问安全规则,以确定是否允许所尝试的访问。此外,所述方法还可包括基于所述安全规则处理所述尝试。所述捕获可在电子设备的所有操作系统以下的层级处进行。处理所述尝试可至少部分地在电子设备的所有操作系统以下的层级处进行。所述存储器位置可识别所述尝试的起源点。此外,所述存储器位置可识别所述尝试的目标点。所述分段可包括数据分段。另外,所述部分可包括头分段。此外,所述部分可包括代码分段。处理所述尝试可包括拒绝所尝试的写入所述代码分段、头分段或数据分段。此外,处理所述尝试可包括允许所尝试的写入所述代码分段、头分段或数据分段。此外,处理所述尝试可包括拒绝来自所述代码分段、头分段或数据分段的所尝试的写入。此外,处理所述尝试可包括允许所尝试的读取所述代码分段、头分段或数据分段。此外,处理所述尝试可包括进行额外查询以确定所述尝试的恶意软件状态。
[0174]至少一个机器可读存储介质,可包括在所述计算机可读介质上承载的计算机可执行指令。所述指令可以由处理器读取。当所述指令被读取并执行时,其可使得所述处理器捕获对所述电子设备受保护的系统资源的访问的尝试。可进一步使得所述处理器确定与所述尝试相关联的模块。所述模块可包括多个不同的部分。此外,可使得所述处理器确定与所述尝试相关联的所述模块的部分。此外,所述部分可包括与所述尝试相关联的存储器位置。此外,可使得所述处理器基于对所述模块的确定和对所述部分的确定来访问安全规则,以确定是否允许所尝试的访问。此外,可使得所述处理器基于所述安全规则而处理所述尝试。所述捕获可在电子设备的所有操作系统以下的层级处进行。处理所述尝试可至少部分地在电子设备的所有操作系统以下的层级处进行。所述存储器位置可识别所述尝试的起源点。此外,所述存储器位置可识别所述尝试的目标点。所述分段可包括数据分段。另外,所述分段可包括头分段。此外,所述分段可包括代码分段。处理所述尝试可包括拒绝所尝试的写入所述代码分段、头分段或数据分段。此外,处理所述尝试可包括允许所尝试的写入所述代码分段、头分段或数据分段。此外,处理所述尝试可包括拒绝来自所述代码分段、头分段或数据分段的所尝试的写入。此外,处理所述尝试可包括允许所尝试的读取所述代码分段、头分段或数据分段。此外,处理所述尝试可包括进行额外查询以确定所述尝试的恶意软件状态。
[0175]一种用于保护电子设备的系统,可包括存储器、处理器、受保护的系统资源、以及一个或多个安全代理。所述安全代理可包括驻留在存储器中并可操作以被所述处理器执行的指令。所述安全代理可被配置为捕获对所述电子设备的受保护的系统资源的访问的尝试。所述安全代理可进一步被配置为确定与所述尝试相关联的模块。所述模块可包括多个不同的分段。此外,所述安全代理可被配置为确定与所述尝试相关联的所述模块的分段。所述分段可包括与所述尝试相关联的存储器位置。此外,所述安全代理可被配置为基于对所述模块的确定和对所述分段的确定来访问安全规则,以确定是否允许所尝试的访问。此夕卜,所述安全代理可被配置为基于所述安全规则而处理所述尝试。所述捕获可在电子设备的所有操作系统以下的层级处进行。处理所述尝试可至少部分地在电子设备的所有操作系统以下的层级处进行。所述存储器位置可识别所述尝试的起源点。此外,所述存储器位置可识别所述尝试的目标点。所述分段可包括数据分段。另外,所述分段可包括头分段。此夕卜,所述分段可包括代码分段。处理所述尝试可包括拒绝所尝试的写入所述代码分段、头分段或数据分段的。此外,处理所述尝试可包括允许所尝试的写入所述代码分段、头分段或数据分段。此外,处理所述尝试可包括拒绝来自所述代码分段、头分段或数据分段的所尝试的写入。此外,处理所述尝试可包括允许所尝试的读取所述代码分段、头分段或数据分段。此夕卜,处理所述尝试可包括进行额外查询以确定所述尝试的恶意软件状态。
[0176]—种用于保护电子设备的系统,可包括用于保护所述电子设备的单元并可包括:捕获对所述电子设备的受保护的系统资源的访问的尝试。所述系统进一步包括用于确定与所述尝试相关联的模块的单元。所述模块可包括多个不同的分段。此外,所述系统可包括用于确定与所述尝试相关联的所述模块的分段的单元。所述分段可包括与所述尝试相关联的存储器位置。所述系统可额外地包括用于基于对所述模块的确定和对所述分段的确定来访问安全规则,以确定是否允许所尝试的访问的单元。此外,所述系统还可包括用于基于所述安全规则而处理所述尝试的单元。所述捕获可在电子设备的所有操作系统以下的层级处进行。处理所述尝试可至少部分地在电子设备的所有操作系统以下的层级处进行。所述存储器位置可识别所述尝试的起源点。此外,所述存储器位置可识别所述尝试的目标点。所述分段可包括数据分段。另外,所述分段可包括头分段。此外,所述分段可包括代码分段。处理所述尝试可包括拒绝所尝试的写入所述代码分段、头分段或数据分段的。此外,处理所述尝试可包括允许所尝试的写入所述代码分段、头分段或数据分段。此外,处理所述尝试可包括拒绝来自所述代码分段、头分段或数据分段的所尝试的写入。此外,处理所述尝试可包括允许所尝试的读取所述代码分段、头分段或数据分段。此外,处理所述尝试可包括进行额外查询以确定所述尝试的恶意软件状态。
[0177] 尽管已详细描述了本公开,但应当理解的是,可以对本公开进行各种改变、替换以及变更而不背离由所附权利要求所限定的本公开的精神的范围。
【主权项】
1.一种用于保护电子设备的方法,包括: 捕获对所述电子设备的受保护的系统资源的访问的尝试; 确定与所述尝试相关联的模块,所述模块包括多个不同的分段; 确定与所述尝试相关联的所述模块的分段,所述分段包括与所述尝试相关联的存储器位置; 基于对所述模块的确定和对所述分段的确定,访问安全规则以确定是否允许所尝试的访问;并且 基于所述安全规则而处理所述尝试。
2.根据权利要求1所述的方法,其中: 所述捕获是在所述电子设备的所有操作系统以下的层级处进行的;并且 处理所述尝试是至少部分地在所述电子设备的所有操作系统以下的层级处进行的。
3.根据权利要求1所述的方法,其中,所述存储器位置识别所述尝试的起源点。
4.根据权利要求1所述的方法,其中,所述存储器位置识别所述尝试的目标点。
5.根据权利要求1所述的方法,其中,所述分段是所述尝试的目标并且是数据分段。
6.根据权利要求1所述的方法,其中,所述分段是所述尝试的目标并且是头分段。
7.根据权利要求1所述的方法,其中,所述分段是所述尝试的目标并且是代码分段。
8.根据权利要求1所述的方法,其中,所述安全规则: 将所述尝试的目标识别为代码分段;并且 基于所述识别,指定处理所述尝试包括拒绝所尝试的写入所述代码分段。
9.根据权利要求1所述的方法,其中,所述安全规则: 将所述尝试的目标识别为头分段;并且 基于所述识别,指定处理所述尝试包括拒绝所尝试的写入所述头分段。
10.根据权利要求1所述的方法,其中,所述安全规则: 将所述尝试的目标识别为数据分段;并且 基于所述识别,指定处理所述尝试包括允许所尝试的写入所述数据分段。
11.至少一种机器可读存储介质,其包括在计算机可读介质上承载的计算机可执行指令,所述指令能够由处理器读取,当所述指令被读取并执行时,使得所述处理器: 捕获对电子设备的受保护的系统资源的访问的尝试; 确定与所述尝试相关联的模块,所述模块包括多个不同的分段; 确定与所述尝试相关联的所述模块的分段,所述分段包括与所述尝试相关联的存储器位置; 基于对所述模块的确定和对所述分段的确定,访问安全规则以确定是否允许所尝试的访问;并且 基于所述安全规则而处理所述尝试。
12.根据权利要求11所述的介质,其中: 所述捕获是在所述电子设备的所有操作系统以下的层级处进行的;并且 处理所述尝试是至少部分地在所述电子设备的所有操作系统以下的层级处进行的。
13.根据权利要求11所述的介质,其中,所述存储器位置识别所述尝试的起源点。
14.根据权利要求11所述的介质,其中,所述存储器位置识别所述尝试的目标点。
15.根据权利要求11所述的介质,其中,所述分段是所述尝试的目标并且是数据分段。
16.根据权利要求11所述的介质,其中,所述分段是所述尝试的目标并且是头分段。
17.根据权利要求11所述的介质,其中,所述分段是所述尝试的目标并且是代码分段。
18.根据权利要求11所述的介质,其中,所述安全规则: 将所述尝试的目标识别为代码分段;并且 基于所述识别,指定处理所述尝试包括拒绝所尝试的写入所述代码分段。
19.根据权利要求11所述的介质,其中,所述安全规则: 将所述尝试的目标识别为头分段;并且 基于所述识别,指定处理所述尝试包括拒绝所尝试的写入所述头分段。
20.根据权利要求11所述的介质,其中,所述安全规则: 将所述尝试的目标识别为数据分段;并且 基于所述识别,指定处理所述尝试包括允许所尝试的写入所述数据分段。
21.一种用于保护电子设备的系统,包括: 存储器; 处理器; 受保护的系统资源;以及 一个或多个安全代理,其包括驻留在所述存储器中并操作以被所述处理器执行的指令,其中,所述安全代理被配置为: 捕获对所述受保护的系统资源的访问的尝试; 确定与所述尝试相关联的模块,所述模块包括多个不同的分段; 确定与所述尝试相关联的所述模块的分段,所述分段包括与所述尝试相关联的存储器位置; 基于对所述模块的确定和对所述分段的确定,访问安全规则以确定是否允许所尝试的访问;并且 基于所述安全规则而处理所述尝试。
22.根据权利要求21所述的系统,其中,所述安全代理进一步被配置为: 在所述电子设备的所有操作系统以下的层级处进行所述捕获;并且 至少部分地在所述电子设备的所有操作系统以下的层级处进行所述处理。
23.根据权利要求21所述的系统,其中,所述存储器位置识别所述尝试的起源点。
24.根据权利要求21所述的系统,其中,所述存储器位置识别所述尝试的目标点。
25.根据权利要求21所述的系统,其中,所述分段是所述尝试的目标并且是数据分段。
26.根据权利要求21所述的系统,其中,所述分段是所述尝试的目标并且是头分段。
27.根据权利要求21所述的系统,其中,所述分段是所述尝试的目标并且是代码分段。
28.根据权利要求21所述的系统,其中,所述安全规则: 将所述尝试的目标识别为代码分段;并且 基于所述识别,指定处理所述尝试包括拒绝所尝试的写入所述代码分段。
29.根据权利要求21所述的系统,其中,所述安全规则: 将所述尝试的目标识别为头分段;并且 基于所述识别,指定处理所述尝试包括拒绝所尝试的写入所述头分段。
30.根据权利要求21所述的系统,其中,所述安全规则:将所述尝试的目标识别为数据分段;并且基于所述识别,指定处理所述尝试包括允许所尝试的写入所述数据分段。
【专利摘要】一种用于保护电子设备的技术,包括捕获对所述电子设备的受保护的系统资源的访问的尝试,确定与所述尝试相关联的模块,确定与所述尝试相关联的所述模块的分段,所述分段包括与所述尝试相关联的存储器位置,基于对所述模块的确定和对所述分段的确定,访问安全规则以确定是否允许所尝试的访问,并且基于所述安全规则而处理所述尝试。所述模块包括多个不同的分段。
【IPC分类】G06F21-50
【公开号】CN104769604
【申请号】CN201380048780
【发明人】A·卡普尔, J·L·爱德华兹, C·施穆加尔, V·科诺比弗, M·休斯
【申请人】迈克菲公司
【公开日】2015年7月8日
【申请日】2013年10月21日
【公告号】EP2909781A1, US20140115652, WO2014063133A1
当前第6页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1