恶意软件的减轻的制作方法

文档序号:14491507阅读:277来源:国知局
恶意软件的减轻的制作方法

相关申请的交叉引用

本申请要求于2015年6月27日提交的题为“mitigationofmalware”的印度专利申请号3247/che/2015的权益和优先权,其全部内容通过引用并入本文。

本公开大体上涉及信息安全的领域,并且更具体地涉及恶意软件的减轻。



背景技术:

网络安全的领域在当今的社会中变得越来越重要。互联网已经使得能够实现全世界不同的计算机网络的互联。特别地,互联网提供了用于经由各种类型的客户端设备在连接到不同计算机网络的不同用户之间交换数据的介质。虽然互联网的使用转变了企业和个人通信,但它也被用作用于使恶意操作者得到对计算机和计算机网络的未经授权访问以及用于敏感信息的有意或无意暴露的载具。

感染主计算机的恶意软件(“恶意软件”)可能能够执行任何数量的恶意动作,诸如从与主计算机相关联的企业或个人窃取敏感信息、向其他主计算机传播、和/或协助分布式拒绝服务攻击、从主计算机发出垃圾邮件或恶意电子邮件等。因此,针对保护计算机和计算机网络免受由恶意软件的恶意和无意利用仍然存在重大的管理挑战。

附图说明

为了提供对本公开及其特征和优点的更完整理解,参考结合附图进行的以下描述,其中相同的附图标记表示相同的部分,其中:

图1a是根据本公开的实施例的用于恶意软件的减轻的通信系统的简化框图;

图1b是根据本公开的实施例的用于恶意软件的减轻的通信系统的简化框图;

图1c是根据本公开的实施例的用于恶意软件的减轻的通信系统的简化框图;

图2是根据本公开的实施例的用于恶意软件的减轻的通信系统的一部分的简化框图;

图3是根据本公开的实施例的用于恶意软件的减轻的通信系统的示例细节的简化图;

图4是根据实施例的图示可以与通信系统相关联的潜在操作的简化流程图;

图5是根据实施例的图示可以与通信系统相关联的潜在操作的简化流程图;

图6是根据实施例的图示以点对点配置布置的示例计算系统的框图;

图7是与本公开的示例arm生态系统片上系统(soc)相关联的简化框图;和

图8是根据实施例的图示示例处理器核的框图。

附图的图不一定按比例绘制,因为它们的尺寸可以显著变化而不脱离本公开的范围。

具体实施方式

示例实施例

图1a是根据本公开的实施例的用于恶意软件的减轻的通信系统100a的简化框图。通信系统100a可以包括电子设备102a、云服务104和服务器106。电子设备102a可以包括处理器110、存储器112、操作系统114、沙箱116和安全模块118。安全模块118可以包括恶意软件检测模块120、恶意软件减轻模块122和恶意软件模式行为124。恶意软件检测模块120可以包括分析日志126。恶意软件减轻模块122可以包括逆转恶意软件行为动作128。云服务104和服务器106均可以包括网络安全模块130。网络安全模块130可以包括模式行为生成模块132和恶意软件模式行为124。电子设备102a、云服务104和服务器106均可以使用网络108进行通信。

转到图1b,图1b是根据本公开的实施例的用于恶意软件的减轻的通信系统100b的简化框图。通信系统100b可以包括电子设备102b、云服务104和服务器106。电子设备102b可以包括处理器110、存储器112、操作系统114、安全模块118和恢复环境136。电子设备102b、云服务104和服务器106均可以使用网络108进行通信。

转到图1c,图1c是根据本公开的实施例的用于恶意软件的减轻的通信系统100c的简化框图。通信系统100c可以包括电子设备102c、云服务104和服务器106。电子设备102c可以包括处理器110、存储器112、操作系统114、安全模块118和辅助操作系统138。电子设备102c、云服务104和服务器106均可以使用网络108进行通信。

在示例实施例中,通信系统100a-100c可以被配置为详细研究恶意应用的行为。然后可以使用恶意应用的行为的知识来标识受感染的电子设备,并且矫正或减轻恶意软件对电子设备的影响,而不需要重新镜像化(re-image)电子设备。例如,通信系统100a-100c可以被配置为使用恶意软件样本的动态分析来矫正已经被恶意软件样本感染的受感染的机器。矫正或减轻可以涉及使用迭代多级方法。在示例中,可以使用恢复环境来在减轻期间绕过由恶意软件使用的规避技术。在另一个示例中,可以使用关于恶意软件、恶意软件所属的恶意软件家族的行为知识以及样本和一般恶意软件行为来检测恶意软件并矫正被恶意软件感染的机器。使用对恶意软件样本的动态分析可以允许检测和矫正传统防病毒软件可能无法检测到的恶意软件的能力。此外,可以在不必重新镜像化受感染的电子设备并防止通常起因于重新镜像化的一些数据丢失的情况下矫正恶意软件。

图1a-1c的元件可以通过采用提供用于网络(例如,网络108)通信的可行路径的任何合适连接(有线或无线)的一个或多个接口而彼此耦合。此外,图1a-1c的这些元件中的任何一个或多个可以基于特定的配置需要被组合或从架构中移除。通信系统100a-100c均可以包括能够进行用于发送或接收网络中的分组的传输控制协议/网际协议(tcp/ip)通信的配置。通信系统100a-100c还可以在适当的情况下并且基于特定需要而与用户数据报协议/ip(udp/ip)或任何其他合适的协议结合操作。

为了说明通信系统100a-100c的某些示例技术的目的,理解可能贯穿网络环境的通信是重要的。以下基础信息可以被视为从其可以适当解释本公开的基础。

大多数企业通过重新格式化整个硬盘并重新镜像化电子设备来矫正被恶意软件感染的电子设备。这是不方便的过程,并且不仅致使电子设备为非生产性的,而且由于移除在重新镜像化之前未备份的数据而导致电子设备上的数据丢失。目前,由于恶意软件使用各种技术来规避检测和矫正,所以重新镜像化是非常少的可靠的恶意软件移除技术之一。使用目前流行的检测技术,不仅难以矫正恶意文件在受感染的电子设备上的存在,而且还非常难以标识主机究竟是否被感染。所需要的是可以减轻或矫正受感染的电子设备上的恶意软件而不必重新镜像化电子设备的系统和方法。

如图1a-1c中概述的用于恶意软件的减轻的通信系统可以解决这些问题(和其他问题)。通信系统100a-100c可以被配置为使用行为分析技术来分析恶意软件可疑样本。例如,模式行为生成模块132可以被配置为使用行为分析技术来分析恶意软件可疑样本。技术可以涉及使用模式匹配、全球声誉、程序模拟、静态分析、动态分析或一些其他行为分析技术中的一个或多个的组合。一旦已经分析了恶意软件可疑样本,则系统可以被配置为基于该分析来生成恶意软件的恶意软件模式行为(例如,恶意软件模式行为124)。恶意软件模式行为可以包括如由分析捕获的恶意软件所使用的各种规避和混淆技术。恶意软件模式行为可以是特定恶意软件样本行为的指示物。

基于样本行为,可以使用典型恶意软件家族的行为知识来标识与样本行为相关联的恶意软件家族。作为对已知和新的恶意软件家族的研究和分析的结果,特定于所标识的恶意软件家族的一组行为模式可以被创建为家族行为。大多数恶意软件从事不由善良或良性软件展现的行为模式。作为研究和分析的结果,由恶意软件示出的一组行为模式一般可以被准备为一般恶意软件行为。具体的恶意软件样本行为、家族行为和一般恶意软件行为可以被组合到恶意软件模式行为124中。

样本行为、家族行为和一般恶意软件行为的元素可以在恶意软件检测模块120内组合并且与分析日志126进行比较以标识恶意软件。分析日志126可以是怀疑被恶意软件感染的系统上的活动日志。此外,样本行为、家族行为和一般恶意软件行为的元素可以在恶意软件减轻模块122内组合以生成检测任务,所述检测任务可以被配置为执行以收集相关环境细节、文件系统和注册表信息、以及电子设备内的感染和规避的指示物。可以使用到恶意软件减轻模块122的反馈回路来分析检测任务的结果,以生成用于检测和修复受感染的电子设备上的感染的进一步特定任务。这些任务的结果可以再次被反馈到恶意软件减轻模块122,其可以生成进一步的任务以用于执行。动作的该序列可以迭代,直到恶意软件减轻模块122确定电子设备清除了如由样本行为和家族行为所指示的感染。

为了减轻恶意软件的规避检测的能力,可以在不同的平台之上执行任务。例如,任务可以在实时操作系统中执行,其可能被恶意软件感染,并且可能干扰检测或减轻任务的准确性。任务可以在不太可能被可能干扰检测或减轻任务的恶意软件感染的恢复环境136(例如,windows®恢复环境(re))中执行。任务可以使用电子设备上的辅助操作系统138来执行。辅助操作系统可以使用可以安装为启动盘的文件来被推送在电子设备上。恶意软件最不可能干扰在辅助操作系统上执行的减轻任务。

转到图1a-1c的基础结构,示出了根据示例实施例的通信系统100a-100c。一般,通信系统100a-100c可以采样任何类型或拓扑的网络来实现。网络108表示用于接收和发送通过通信系统100a-100c传播的信息分组的互连通信路径的一系列点或节点。网络108在节点之间提供通信接口,并且可以被配置为任何局域网(lan)、虚拟局域网(vlan)、广域网(wan)、无线局域网(wlan)、城域网(man)、内联网、外联网、虚拟专用网(vpn)以及促进网络环境中的通信的任何其他适当的架构或系统、或者其任何合适组合,包括有线和/或无线通信。

在通信系统100a-100c中,可以根据任何合适的通信消息传送协议来发送和接收包括分组、帧、信号、数据等的网络业务。合适的通信消息传送协议可以包括多层方案,诸如开放系统互连(osi)模型或其任何衍生物或变型(例如传输控制协议/网际协议(tcp/ip)、用户数据报协议/ip(udp/ip))。此外,也可以在通信系统100a-100c中提供通过蜂窝网络的无线电信号通信。可以提供合适的接口和基础结构以使得能够实现与蜂窝网络的通信。

如本文使用的术语“分组”是指可以在分组交换网络上的源节点和目的地节点之间路由的数据的单元。分组包括源网络地址和目的地网络地址。这些网络地址可以是tcp/ip消息传送协议中的网际协议(ip)地址。如本文使用的术语“数据”是指任何类型的二进制文件、数字、语音、视频、文本或脚本数据、或者任何类型的源或目标代码、或者可以在电子设备和/或网络中从一个点传送到另一个点的采用任何适当格式的任何其他合适的信息。此外,消息、请求、响应和查询是网络业务的形式,并且因此可以包括分组、帧、信号、数据等。

在示例实现中,电子设备102a-102c、云服务104和服务器106并且是网络元件,其意在包括网络器具、服务器、路由器、交换机、网关、网桥、负载平衡器、处理器、模块、或可操作以在网络环境中交换信息的任何其他合适的设备、组件、元件或对象。网络元件可以包括促进其操作的任何合适的硬件、软件、组件、模块或对象、以及用于在网络环境中接收、发送和/或以其他方式传送数据或信息的合适的接口。这可以包括允许数据或信息的有效交换的适当算法和通信协议。

关于与通信系统100a-100c相关联的内部结构,电子设备102a-102c、云服务104和服务器106中的每个可以包括用于存储要在本文中概述的操作中使用的信息的存储器元件。电子设备102a-102c、云服务104和服务器106中的每个可以在适当的情况下并且基于特定需要而将信息保持在任何合适的存储器元件(例如,随机存取存储器(ram)、只读存储器(rom)、可擦除可编程rom(eprom)、电可擦除可编程rom(eeprom)、专用集成电路(asic)等)、软件、硬件、固件中、或任何其他合适的组件、设备、元件或对象中。本文讨论的存储器项目中的任何一个应当被解释为包含在广义术语“存储器元件”内。此外,在通信系统100a-100c中被使用、追踪、发送或接收的信息可以被提供在任何数据库、寄存器、队列、表、高速缓存、控制列表或其他存储结构中,所有这些都可以在任何合适的时间帧处被引用。任何这样的存储选项也可以被包括在如本文使用的广义术语“存储器元件”内。

在某些示例实现中,本文概述的功能可以通过在可以包括非暂时性计算机可读介质的一个或多个有形介质中编码的逻辑(例如,要由处理器或其他类似的机器执行的在asic中提供的嵌入式逻辑、数字信号处理器(dsp)指令、软件(潜在地包括目标代码和源代码)等)来实现。在这些实例中的一些中,存储器元件可以存储用于本文描述的操作的数据。这包括能够存储被执行以执行本文描述的活动的软件、逻辑、代码或处理器指令的存储器元件。

在示例实现中,通信系统100a-100c的网络元件(诸如电子设备102a-102c、云服务104和服务器106)可以包括软件模块(例如安全模块118、恶意软件检测模块120、恶意软件减轻模块122、网络安全模块130和模式行为生成模块模块132)来实现或促进如本文概述的操作。这些模块可以以任何适当的方式合适地组合,其可以基于特定的配置和/或预置需要。在示例实施例中,这样的操作可以由硬件执行、在这些元件外部实现、或者被包括在某个其他网络设备中以实现所意图的功能。此外,模块可以被实现为软件、硬件、固件、或其任何合适的组合。这些元件还可以包括可以与其他网络元件协调以便实现操作的软件(或往复式软件),如本文概述的。

此外,电子设备102a-102c、云服务104和服务器106中的每个可以包括可以执行软件或算法以执行如本文所讨论的活动的处理器。处理器可以执行与数据相关联的任何类型的指令以实现本文详述的操作。在一个示例中,处理器可以将元素或文章(例如数据)从一个状态或事物转变为另一个状态或事物。在另一个示例中,可以利用固定逻辑或可编程逻辑(例如,由处理器执行的软件/计算机指令)来实现本文概述的活动,并且本文中所标识的元件可以是某种类型的可编程处理器、可编程数字逻辑(例如,现场可编程门阵列(fpga)、eprom、eeprom)或包括数字逻辑、软件、代码、电子指令或其任何合适组合的asic。本文描述的潜在处理元件、模块和机器中的任何一个应当被解释为包含在广义术语“处理器”内。

电子设备102a-102c可以是网络元件,并且包括例如台式计算机、膝上型计算机、移动设备、个人数字助理、智能电话、平板电脑或其他类似设备。云服务104被配置为向电子设备102a-102c提供云服务。云服务一般可以被定义为使用通过网络(诸如互联网)作为服务递送的计算资源。通常,在云基础结构中提供计算、存储和网络资源,从而有效地将工作负载从本地网络转移到云网络。服务器106可以是诸如服务器或虚拟服务器之类的网络元件,并且可以与希望经由某个网络(例如,网络108)在通信系统100a-100c中发起通信的客户端、客户、端点或终端用户相关联。术语“服务器”包括用于服务客户端的请求和/或代表通信系统100a-100c内的客户端执行某个计算任务的设备。虽然安全模块118在图1a-1c中分别表示为位于电子设备102a-102c中,但是这仅用于说明性的目的。安全模块118可以以任何合适的配置组合或分离。此外,安全模块118可以与可由电子设备102a-102c访问的另一个网络(诸如云服务104或服务器106)集成或分布在其中。

转到图2,图2是根据本公开的实施例的用于恶意软件的减轻的通信系统100a-100c的一部分的简化框图。模式行为生成模块132可以被配置为使用模式匹配、全球声誉、静态分析、动态分析、程序模拟或一些其他行为分析技术中的一个或多个的组合来分析样本或应用。被分析的样本可以被概括并用于创建恶意软件模式行为124。恶意软件模式行为124可以包括样本行为140和家族行为142。样本行为140可以包括特定的恶意软件样本行为。家族行为142可以从与被分析的样本相关联或包括被分析的样本的恶意软件家族创建。

因为恶意软件可以使用各种技术来规避检测,所以使用各种技术的组合来分析样本并检测它是否确实是恶意的。例如,可以使用模式匹配来标识公知的样本,并且相同的知识可以用于标识样本对系统做出什么改变以及恶意软件使用什么规避技术。类似地,样本的全球声誉可以用于基于来自全球数据库的输入来标识恶意软件的行为。

可以使用程序模拟来让恶意软件样本在模拟的环境中执行并针对由恶意软件样本所做出的改变研究该环境,并且标识由恶意软件所使用的规避技术。例如,如果恶意软件使用windows®api挂钩机制来隐藏正在运行的进程的列表,则相同的行为信息被记录并使得作为规避技术可用。

静态分析是模式行为生成模块132可以标识恶意软件行为的另一种方式。该技术使用预先知道的汇编指令模式来标识恶意软件可执行镜像内的特定行为。有时恶意软件可执行文件被加密或混淆,并且只有当恶意软件样本实际在机器上执行时才被解密。在这种情况下,允许恶意软件在机器上执行,并对所提取的内容进行静态分析。由规避技术所使用的代码的模式可以被标识并且构成模式行为生成模块132的一部分。

可以由模式行为生成模块132使用动态分析来研究在已经执行恶意软件样本之后对实时虚拟机所做出的改变。不同的技术(比如api挂钩)可以用于检测由恶意软件对系统所做出的改变。可以通过使用恶意软件实际在机器上执行的知识并从那个角度分析各种系统产物(比如正在运行的进程或加载的模块)来标识各种规避技术。例如,如果恶意软件启动了称为malwaresample.exe的进程,并且该进程在系统上的正在运行的进程的列表中不可见,则使得该进程作为恶意软件隐藏它在其中执行的进程的规避技术可用。

在已经分析样本之后,可以生成关于在不同阶段处的恶意软件的分析的报告/产物。分析报告并可以生成一组行为日志。日志分析来自分析的不同阶段的恶意软件行为的指示,并将其组合成完整的行为分析日志。分析日志是可以由恶意软件减轻模块122使用的样本行为产物(例如,样本行为140)。

“样本行为”的元素的示例可以包括由恶意软件所创建的文件的名称、注册表条目和内核对象(比如互斥体)。规避技术也可以在样本行为产物中指示。也可以查明恶意软件是否创建隐藏文件、恶意软件是否描绘类似隐匿技术(rootkit)的行为、或者是否可以列举恶意软件的进程。

样本行为日志可以针对已知恶意软件家族的行为进行分析和匹配,以标识特定恶意软件样本的家族。为此目的可以维护恶意软件家族行为的数据库150。一旦标识了家族,则可以从恶意软件家族行为的数据库150收集该特定恶意软件家族的所有成员的共同行为指示物,并且可以生成用于恶意软件样本的家族行为142。

家族行为的一个示例可以包括关于多态恶意软件行为的信息。某个恶意软件可以在用户的appdata文件夹中创建文件。当在不同的实例处执行时,相同的样本创建具有不同名称的文件,从而使文件名随机化,使得恶意软件不能被其创建的文件标识。在这种情况下,恶意软件可以通过随机化行为中的共同性的模式来标识。例如,某个恶意软件可以在appdata文件夹中的同一个子文件夹内创建具有不同名称但使用相同md5散列的文件。如果创建不同名称但相同md5校验和的文件的特性可以归因于恶意软件家族的所有样本,则该特性可以用作标识该家族的所有样本的感染的指示物。包括家族特定行为的这样的信息被馈送到恶意软件检测模块120和恶意软件减轻模块122,其可以使用该信息来生成检测/减轻任务。例如,针对改变文件的名称但使文件夹名称和md5校验和保持相同的家族的样本,可以生成在电子设备内查找特定文件夹中的特定md5的标识任务。

对一般或共同的类似恶意软件的行为的标识可以涉及建立已知恶意软件所共同的并且几乎从不由良性软件所展现的行为参数。这涉及标识共同模式,比如特定注册表条目的创建、在启动文件夹中安装未经签名或未经验证的二进制文件等。例如,已知启动文件夹中存在的未经签名程序通常是恶意的,尤其是如果它们没有伴随在安装程序的列表中的对应条目或者这样的组成部分的二进制文件没有从经验证的发布者签名的话。恶意软件检测模块120和恶意软件减轻模块122可以生成检测任务(例如分析日志126)和减轻任务(例如,逆转恶意软件行为动作128),以在系统中查找这样的二进制文件并且将它们的校验和与已知的恶意软件或家族行为进行比较以标识可能的感染并相应地矫正。

转到图3,图3是根据本公开的实施例的用于恶意软件的减轻的通信系统100a-100c的一部分的简化图。安全模块118可以被配置为将恶意软件模式行为124传送到恶意软件检测模块120。恶意软件检测模块120可以被配置为编译恶意软件行为的各种指示物(例如样本行为140、家族行为142、一般恶意软件行为144等),以标识电子设备102a-102c是否被感染并且如果被感染,则可以使用恶意软件减轻模块122来矫正感染的电子设备102a-102c。在示例中,恶意软件减轻模块122可以分析所有指示物并且生成标识电子设备102a-102c中的感染的指示物的任务。基于具体的样本、家族和一般行为(例如,样本行为140、家族行为142和一般恶意软件行为144),任务可以在其中之前可能发生恶意软件感染并且机器重启可能没有发生的执行环境中执行。恶意软件可能已经感染了机器的存储器、注册表和文件系统。比如由恶意软件所做出的文件系统和注册表改变的感染的一些指示物可能难以在该环境中找到,因为恶意软件可能已经破坏了操作系统以隐藏其存在的指示物。一些其他指示物只能在该环境中找到,因为它们在操作系统实时存储器中可用并且在计算机重启时将丢失。这些包括安装在电子设备102a-102c上的互斥体、事件、api挂钩等。

在另一个示例中,任务可以在从操作系统中存在的写保护磁盘镜像文件执行的环境中执行。这在os文件的损坏的感染的情况下对于恢复操作系统文件可能是有用的。相同的环境可以用于绕过规避检测的恶意软件能力,并消除恶意软件样本的启动持久性,以去掉感染的机器。

对于规避windows®re中的检测的恶意软件,标识和矫正或减轻恶意软件的仅有方式可能是在辅助os中启动机器,并使用ntfs驱动程序来迭代通过机器的文件并查找基于文件系统的感染指示物。支持迭代通过ntfs文件系统的辅助os的选择可以帮助规避文件系统产物的检测和移除。可以根据来自特定的样本、家族和一般恶意软件行为的行为指示物生成任务。例如,如果发现样本创建注册表条目,诸如启动可执行程序作为windows启动过程的一部分,则可以生成查找该特定注册表条目的检测任务。

检测和减轻任务的执行的结果可以经由反馈回路146反馈回到恶意软件减轻模块122。恶意软件减轻模块122可以基于分析来自任务的结果来确定接下来的动作。在另一个示例中,恶意软件检测模块120可以分析任务的结果。如果结果指示电子设备被感染,则恶意软件减轻模块122可以生成要在上述三个环境(例如,沙箱116、恢复环境136或辅助操作系统138)之一中执行的减轻任务。如果结果指示没有感染,则恶意软件减轻模块122可以决定再次在另一环境中检查并相应地生成任务。类似地,如果恶意软件减轻模块122可以确认不存在任何已知的感染指示物,则恶意软件减轻模块122可以声明电子设备为干净的或良性的。

反馈回路146可以被反复迭代地执行以完全地解除感染电子设备。例如,如果恶意软件检测模块120确定发现恶意软件样本感染文件系统和注册表,但家族行为指示文件名和md5从一个实例到另一个实例是随机化的,则恶意软件减轻模块122可以生成在实时环境中查找恶意软件样本的任务。如果未找到恶意软件样本,则恶意软件减轻模块122可以再次生成在恢复环境中查找恶意软件样本的任务。如果未找到恶意软件样本的证据,则可以生成查找特定文件夹的任务。在找到特定文件夹时,可以生成计算文件夹中所有文件的md5的任务。如果从特定家族的已知差md5校验和未找到md5匹配,则可以生成查找被修改为在机器启动时执行程序的注册表条目的任务。如果可疑程序被发现注册为启动程序,则可以生成查找与该程序相关联的可执行文件的任务,并且可以发现恶意软件样本的md5在已知差md5校验和中。可以生成删除该恶意软件样本和注册表条目并在实时windowsos中重新启动机器并且查找比如互斥体和事件的存储器内指示物的任务。最后,在若干次迭代的结果之后,恶意软件减轻模块122可以推断机器是否完全去掉了特定恶意软件样本。

转到图4,图4是图示根据实施例的可以与恶意软件的减轻相关联的流程400的可能操作的示例流程图。在实施例中,可以由安全模块118、恶意软件检测模块120、恶意软件减轻模块122、网络安全模块130和模式行为生成模块132执行流程400的一个或多个操作。在402处,恶意软件被允许运行。在404处,观察由恶意软件执行的动作并记录对系统的改变。例如,模式行为生成模块132可以观察由恶意软件执行的动作并创建恶意软件模式行为124。在406处,创建逆转由恶意软件引起的对系统的改变的撤销动作。

转到图5,图5是图示根据实施例的可以与恶意软件的减轻相关联的流程500的可能操作的示例流程图。在实施例中,流程500的一个或多个操作可以由安全模块118、恶意软件检测模块120、恶意软件减轻模块122、网络安全模块130和模式行为生成模块132执行。在502处,恶意软件改变了系统。例如,恶意软件检测模块120可能已经确定恶意软件改变或变更了电子设备102a。在504处,标识恶意软件。例如,使用分析日志126,可以标识恶意软件。分析日志126可以由恶意软件检测模块120通过记录对电子设备102a的改变来创建。在506处,确定恶意软件模式行为。在508处,确定逆转恶意软件行为动作。例如,确定逆转恶意软件行为动作128。在510处,执行逆转恶意软件行为动作以撤销恶意软件对系统所做出的改变。例如,恶意软件减轻模块122可以执行逆转恶意软件行为动作128以撤销恶意软件对电子设备102a所做出的改变。

图6图示根据实施例的以点对点(ptp)配置布置的计算系统600。特别地,图6示出了其中处理器、存储器和输入/输出设备通过多个点对点接口互连的系统。一般,通信系统10的一个或多个网络元件可以以与计算系统600相同或类似的方式来配置。

如图6中所图示,系统600可以包括若干个处理器,为了清楚起见仅示出了其中两个处理器670和680。虽然示出了两个处理器670和680,但是要理解的是,系统600的实施例也可以仅包括一个这样的处理器。处理器670和680均可以包括执行程序的多个线程的一组核(即,处理器核674a和674b以及处理器核684a和684b)。核可以被配置为以类似于以上参考图1-5所讨论的方式来执行指令代码。每个处理器670、680可以包括至少一个共享高速缓存671、681。共享高速缓存671、681可以存储由处理器670、680的一个或多个组件(诸如处理器核674和684)利用的数据(例如,指令)。

处理器670和680还可以均包括与存储器元件632和634通信的集成存储器控制器逻辑(mc)672和682。存储器元件632和/或634可以存储由处理器670和680使用的各种数据。在替代实施例中,存储器控制器逻辑672和682可以是与处理器670和680分离的离散逻辑。

处理器670和680可以是任何类型的处理器,并且可以分别使用点对点接口电路678和688经由点对点(ptp)接口650交换数据。处理器670和680均可以使用点对点接口电路676、686、694和698经由单独的点对点接口652和654与芯片组690交换数据。芯片组690还可以使用可以是ptp接口电路的接口电路692经由高性能图形接口639与高性能图形电路638交换数据。在替代实施例中,图6中图示的任何或全部ptp链路可以被实现为多分支(multi-drop)总线而不是ptp链路。

芯片组690可以经由接口电路696与总线620进行通信。总线620可以具有通过其进行通信的一个或多个设备,诸如总线桥618和i/o设备616。经由总线610,总线桥618可以与其他设备进行通信,诸如键盘/鼠标612(或诸如触摸屏、追踪球等之类的其他输入设备)、通信设备626(诸如调制解调器、网络接口设备、或可以通过计算机网络660通信的其他类型的通信设备)、音频i/o设备614、和/或数据存储设备628。数据存储设备628可以存储可以由处理器670和/或680执行的代码630。在替代实施例中,总线架构的任何部分可以利用一个或多个ptp链路来实现。

图6中所描绘的计算机系统是可以用于实现本文所讨论的各种实施例的计算系统的实施例的示意图示。将理解的是,图6中描绘的系统的各种组件可以以片上系统(soc)架构或以任何其他合适的配置来组合。例如,本文所公开的实施例可以被并入到包括诸如智能蜂窝电话、平板计算机、个人数字助理、便携式游戏设备等之类的移动设备的系统中。将理解的是,在至少一些实施例中,这些移动设备可以被提供有soc架构。

转到图7,图7是与本公开的示例arm生态系统soc700相关联的简化框图。本公开的至少一个示例实现可以包括减轻本文讨论的恶意软件特征和arm组件。例如,图7的示例可以与任何arm核(例如,a-7、a-15等)相关联。此外,架构可以是任何类型的平板电脑、智能电话(包括androidtm电话、iphonetm)、ipadtm、googlenexustm、microsoftsurfacetm、个人计算机、服务器、视频处理组件、膝上型计算机(包括任何类型的笔记本电脑)、ultrabooktm系统、任何类型的触摸启用的输入设备等。

在图7的该示例中,arm生态系统soc700可以包括多个核706-907、l2高速缓存控制708、总线接口单元709、l2高速缓存710、图形处理单元(gpu)715、互连702、视频编解码器720和液晶显示器(lcd)i/f725,其可以与耦合到lcd的移动行业处理器接口(mipi)/高清晰度多媒体接口(hdmi)链路相关联。

arm生态系统soc700还可以包括订户身份模块(sim)i/f730、启动只读存储器(rom)735、同步动态随机存取存储器(sdram)控制器740、闪存控制器745、串行外围接口(spi)主控750、合适的功率控制755、动态ram(dram)760和闪存765。此外,一个或多个示例实施例包括一个或多个通信能力、接口和特征,诸如bluetoothtm770、3g调制解调器775、全球定位系统(gps)780和802.11wi-fi785的实例。

在操作中,图7的示例可以提供处理能力以及相对低的功耗以使得能够实现各种类型的计算(例如,移动计算、高端数字家庭、服务器、无线基础结构等)。此外,这样的架构可以使得能够实现任何数量的软件应用(例如,androidtm、adobe®flash®player、java平台标准版(javase)、javafx、linux、microsoftwindowsembedded、symbian和ubuntu等)。在至少一个示例实施例中,核处理器可以实现具有耦合的低延时级别2高速缓存的无序超标量流水线。

图8图示根据实施例的处理器核800。处理器核800可以是用于任何类型的处理器的核,诸如微处理器、嵌入式处理器、数字信号处理器(dsp)、网络处理器或执行代码的其他设备。虽然在图8中仅图示了一个处理器核800,但是处理器可以替代地包括多于一个图8中图示的处理器核800。例如,处理器核800表示参考图6的处理器670和680示出和描述的处理器核674a、674b、684a和684b的一个示例实施例。处理器核800可以是单线程核,或者对于至少一个实施例,处理器核800可以是多线程的,因为它可以包括多于一个硬件线程上下文(或“逻辑处理器”)每个核。

图8还图示了根据实施例的耦合到处理器核800的存储器802。存储器802可以是如对于本领域技术人员已知或以其他方式可用的各种各样的存储器(包括存储器层次的各种层)中的任何一种。存储器802可以包括要由处理器核800执行的代码804,其可以是一个或多个指令。处理器核800可以遵循由代码804指示的指令的程序序列。每个指令进入前端逻辑806并且被一个或多个解码器808处理。解码器可以以预定义的格式生成微操作(诸如固定宽度微操作)作为其输出,或者可以生成反映原始代码指令的其他指令、微指令或控制信号。前端逻辑806还包括寄存器重命名逻辑810和调度逻辑812,其通常分配资源并排队与指令对应的操作以用于执行。

处理器核800还可以包括具有一组执行单元816-1至816-n的执行逻辑814。一些实施例可以包括专用于特定功能或功能集合的多个执行单元。其他实施例可以包括仅一个执行单元或者可以执行特定功能的一个执行单元。执行逻辑814执行由代码指令指定的操作。

在完成由代码指令指定的操作的执行之后,后端逻辑818可以收回(retire)代码804的指令。在一个实施例中,处理器核800允许无序执行,但是要求指令的有序收回。收回逻辑820可以采取各种已知的形式(例如,重新排序缓冲器等)。以这种方式,处理器核800在代码804的执行期间被转变,至少在由解码器生成的输出、由寄存器重命名逻辑810利用的硬件寄存器和表、以及由执行逻辑814修改的任何寄存器(未示出)方面。

虽然在图8中未图示,但是处理器可以包括具有处理器核800的芯片上的其他元件,其中至少一些在本文中参考图6被示出和描述。例如,如图6所示,处理器可以包括存储器控制逻辑以及处理器核800。处理器可以包括i/o控制逻辑和/或可以包括与存储器控制逻辑集成的i/o控制逻辑。

注意,利用本文提供的示例,可以在两个、三个或更多个网络元件方面描述交互。然而,这仅仅是为了清楚和示例的目的而进行的。在某些情况下,通过仅引用有限数量的网络元件来描述给定一组流程的一个或多个功能可能更容易。应当理解的是,通信系统100a-100c及其教导可容易扩展,并且可以容纳大量的组件以及更复杂/高级的布置和配置。因此,所提供的示例不应当限制通信系统100a-100c的范围或者禁止其广泛的教导,因为潜在地应用于无数的其他架构。

注意前面的流程图(即,图4和5)中的操作图示可以由通信系统100a-100c执行或在通信系统100a-100c内执行的仅一些可能的相关场景和模式也是重要的。在适当的情况下,这些操作中的一些可以被删除或移除,或者这些操作可以在不脱离本公开的范围的情况下显著地修改或改变。此外,已经将这些操作中的多个描述为与一个或多个附加操作同时或并行地执行。然而,这些操作的定时可以显著地变更。为了示例和讨论的目的,提供了前面的操作流程。由通信系统100a-100c提供实质的灵活性,因为可以在不脱离本公开的教导的情况下提供任何合适的布置、年表、配置和定时机制。

虽然已经参考特定布置和配置详细地描述了本公开,但是这些示例配置和布置可以在不脱离本公开的范围的情况下被显著地改变。此外,基于特定需要和实现,某些组件可以被组合、分离、消除或添加。此外,虽然通信系统100a-100c已经参考促进通信过程的特定元件和操作来说明,但是这些元件和操作可以被替换为实现通信系统100a-100c的所意图功能的任何合适的架构、协议和/或过程。

本领域技术人员可以查明许多其他改变、代替、变化、变更和修改,并且意图的是本公开包含落入所附权利要求的范围内的所有这样的改变、代替、变化、变更和修改。为了协助美国专利商标局(uspto)并且此外协助本申请上发布的任何专利的任何读者解释本文所附的权利要求,申请人希望注意到,申请人:(a)不意图任何所附权利要求援引35u.s.c.部分112的段落六(6),因为它在本申请的提交日期时存在,除非在特定权利要求中具体使用词语“用于……的部件”或“用于……的步骤”;和(b)不意图通过说明书中的任何陈述以未以其他方式在所附权利要求中反映的任何方式来限制本公开。

其他注释和示例

示例c1是具有一个或多个指令的至少一个机器可读存储介质,所述指令在由至少一个处理器执行时使得所述至少一个处理器:允许恶意软件在系统中执行;记录由所述恶意软件的执行所引起的对所述系统的改变;和创建用于电子设备中的恶意软件的检测的检测任务,其中所述检测任务至少部分地基于由所述恶意软件的执行所引起的对所述系统的改变。

在示例c2中,示例c1的主题可以可选地包括其中所述检测任务使用恶意软件的模式匹配、全球声誉分析、程序模拟、静态分析和动态分析中的一个或多个来创建。

在示例c3中,示例c1-c2中的任何一个的主题可以可选地包括其中所述指令在由所述至少一个处理器执行时使得所述至少一个处理器:标识与恶意软件相关联的恶意软件家族,其中恶意软件家族包括家族行为,并且所述检测任务部分地基于家族行为。

在示例c4中,示例c1-c3中的任何一个的主题可以可选地包括其中所述检测任务部分地基于一般恶意软件行为。

在示例c5中,示例c1-c4中的任何一个的主题可以可选地包括其中所述指令在由所述至少一个处理器执行时使得所述至少一个处理器:使用所创建的检测任务来标识受感染的电子设备;和创建减轻由所述恶意软件所引起的对受感染的电子设备的改变的减轻任务。

在示例c6中,示例c1-c5中的任何一个的主题可以可选地包括其中所述减轻任务在恢复环境中执行。

在示例c7中,示例c1-c6中的任何一个的主题可以可选地包括其中所述减轻任务使用受感染的电子设备上的辅助操作系统来执行。

在示例c8中,示例c1-c7中的任何一个的主题可以可选地包括其中所述辅助操作系统被推送在受感染的电子设备上作为启动盘。

在示例a1中,装置可以包括模式行为生成模块,其中所述模式行为生成模块被配置为:允许恶意软件在系统中执行;记录由所述恶意软件的执行所引起的对所述系统的改变;和创建用于电子设备中的恶意软件的检测的检测任务,其中所述检测任务至少部分地基于由所述恶意软件的执行所引起的对所述系统的改变。

在示例a2中,示例a1的主题可以可选地包括其中所述检测任务使用恶意软件的模式匹配、全球声誉分析、程序模拟、静态分析和动态分析中的一个或多个来创建。

在示例a3中,示例a1-a2中的任何一个的主题可以可选地包括其中监视模块还被配置为:标识与恶意软件相关联的恶意软件家族,其中恶意软件家族包括家族行为,并且所述检测任务部分地基于家族行为。

在示例a4中,示例a1-a3中的任何一个的主题可以可选地包括其中所述检测任务部分地基于一般恶意软件行为。

在示例a5中,示例a1-a4中的任何一个的主题可以可选地包括监视模块还被配置为:将所述检测任务传送给安全模块,其中所述安全模块被配置为:使用所创建的检测任务来标识受感染的电子设备;和创建减轻由所述恶意软件所引起的对受感染的电子设备的改变的减轻任务。

在示例a6中,示例a1-a5中的任何一个的主题可以可选地包括其中所述减轻任务在恢复环境中执行。

在示例a7中,示例a1-a6中的任何一个的主题可以可选地包括其中所述减轻任务使用受感染的电子设备上的辅助操作系统来执行。

在示例a8中,示例a1-a7中的任何一个的主题可以可选地包括其中所述辅助操作系统被推送在受感染的电子设备上作为启动盘。

示例m1是一种方法,包括:允许恶意软件在系统中执行;记录由所述恶意软件的执行所引起的对所述系统的改变;和创建用于电子设备中的恶意软件的检测的检测任务,其中所述检测任务至少部分地基于由所述恶意软件的执行所引起的对所述系统的改变。

在示例m2中,示例m1的主题可以可选地包括其中所述检测任务使用恶意软件的模式匹配、全球声誉分析、程序模拟、静态分析和动态分析中的一个或多个来创建。

在示例m3中,示例m1-m2中的任何一个的主题可以可选地包括标识与恶意软件相关联的恶意软件家族,其中恶意软件家族包括家族行为,并且所述检测任务部分地基于家族行为。

在示例m4中,示例m1-m3中的任何一个的主题可以可选地包括所述检测任务部分地基于一般恶意软件行为。

在示例m5中,示例m1-m4中的任何一个的主题可以可选地包括使用所创建的检测任务来标识受感染的电子设备;和创建减轻由所述恶意软件所引起的对受感染的电子设备的改变的减轻任务。

在示例m6中,示例m1-m5中的任何一个的主题可以可选地包括其中所述减轻任务在恢复环境中执行。

在示例m7中,示例m1-m6中的任何一个的主题可以可选地包括其中所述减轻任务使用受感染的电子设备上的辅助操作系统来执行。

示例s1是用于恶意软件的矫正的系统,所述系统包括:模式行为生成模块,其被配置为:允许恶意软件在系统中执行;记录由所述恶意软件的执行所引起的对所述系统的改变;创建用于电子设备中的恶意软件的检测的检测任务,其中所述检测任务至少部分地基于由所述恶意软件的执行所引起的对所述系统的改变;和安全模块,其被配置为:使用所创建的检测任务来标识受感染的电子设备;和创建减轻由所述恶意软件所引起的对受感染的电子设备的改变的减轻任务。

在示例s2中,示例s1的主题可以可选地包括其中所述检测任务使用恶意软件的模式匹配、全球声誉分析、程序模拟、静态分析和动态分析中的一个或多个来创建。

示例x1是机器可读存储介质,其包括机器可读指令以实现方法或者实现装置,如在示例a1-a8或者m1-m7中的任何一个中的方法或装置。示例y1是包括用于执行示例方法m1-m7中的任何一个的部件的装置。在示例y2中,示例y1的主题可以可选地包括用于执行方法的包括处理器和存储器的部件。在示例y3中,示例y2的主题可以可选地包括包含机器可读指令的存储器。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1