使用固件确定恶意软件的制作方法

文档序号:17775325发布日期:2019-05-28 20:01阅读:222来源:国知局
使用固件确定恶意软件的制作方法

服务提供商和制造商被挑战来例如通过提供对计算能力的访问以向消费者传递质量和价值。数据中心是用于容纳计算机网络、计算机系统和相关组件(比如电信和存储系统)的设施。数据中心内的设备可以是安装在机柜中的服务器的形式。数据中心可能是恶意软件(比如勒索软件)攻击的目标。

附图说明

以下详细的描述参考附图,其中:

图1是根据示例的能够响应于确定存在计算设备上的恶意软件的指示而实施安全动作的计算设备的框图;

图2是根据示例的包括能够响应于确定存在计算设备上的恶意软件的指示而实施安全动作的计算设备的计算系统的框图;

图3是根据示例的响应于恶意软件的指示而实施安全动作的方法的流程图;

图4是根据示例的包括能够响应于恶意软件的指示而实施安全动作的基板管理控制器的计算设备的框图;

图5是根据示例的用于基于确认勒索软件存在于系统上的固件指示来启动恢复过程的方法的流程图;以及

图6是根据示例的能够基于勒索软件的固件指示在计算系统上启动恢复过程的中央管理系统的框图。

在整个附图中,相同的附图标记可以指定类似但不一定相同的元件。附加到一些附图标记的指数“n”可以理解为仅仅表示复数,并且对于具有这样的指数“n”的每个附图标记可以不一定表示相同的量。另外,本文没有指数的附图标记的使用(其中这样的附图标记在其他地方带指数引用)可以是(共同地或单独地)对相应的复数元件的一般引用。在另一个示例中,可以使用指数“i”、“m”等来代替指数n。

具体实施方式

实体可以通过识别其数据中心中的漏洞来设法避免安全攻击。漏洞可以包括可能被利用来侵犯网络的安全策略的在数据中心的网络的设计、实现、操作和/或管理方面的缺陷和/或弱点(例如,可能通过对实体的资产的未经授权的访问、销毁、公开和/或修改而对网络产生负面影响的情况和/或事件)。利用指令码可以包括利用漏洞引起不想要的和/或未预料的行为的计算机可读指令、数据和/或命令序列。安全攻击可以包括使用和/或尝试使用针对漏洞的利用指令码。为了避免后续的安全攻击,实体可以实施调查(例如,电子取证调查),以确定在安全攻击期间针对什么漏洞使用了什么利用指令码。

基于威胁情报和市场研究报告,明显的是,使用恶意软件针对操作系统、固件和硬件层的攻击的数量已经增加。例如,用于勒索目的和扰乱经济、国家安全和/或关键基础设施的恶意软件。随着易于从黑暗网络获取恶意软件和勒索软件漏洞利用工具包,攻击不断变化且变得更加复杂。

一些攻击针对将引导块(例如,主引导记录(mbr))连同数据一起加密,并且最近的攻击已经在许多中小型商业以及企业中造成了混乱。如本文使用的,引导块是与被计算设备的处理器读取的初始指令相关联的存储设备的区域。鉴于增加的恶意软件和勒索软件、对硬件和固件的高级的持续性威胁以及安全趋势,检测这些复杂的攻击并从这些攻击中安全地且自动地恢复是有利的。这样的自动检测和恢复解决方案可以用于计算系统用户以有助于快速恢复其操作系统(oses)和平台资产,并减少恢复时间。

如本文使用的,恶意软件是恶意性的软件或侵入软件。示例包括计算机病毒、蠕虫、特洛伊木马、勒索软件、间谍软件、广告软件、恐吓软件等。勒索软件是一类恶意软件,其威胁除非支付赎金,否则公布受害者的数据或阻止访问该数据。一些勒索软件可以锁定被攻击的系统。例如,勒索软件可以加密受害者的文件,使其无法访问。一些勒索软件可以使用伪装成诱使用户下载和打开的合法文件的木马进行。其他勒索软件可以在计算机之间传输,无需用户交互。在一些示例中,恶意软件(比如勒索软件)可以尝试使用与恶意软件所在的计算系统相关联的接口,通过扫描与计算系统相关联的驱动器和接口、写入或修改驱动器等,来传播其自身。

因此,本文描述了一种os不可知途径,其有助于检测来自固件的os和平台攻击。在一个示例中,管理处理器(比如基板管理控制器(bmc))可以使用蜜罐技术来帮助检测恶意软件。可以向操作系统提供可以访问bmc的嵌入式存储器或仿真存储器。bmc可以基于蜜罐技术确定存在计算设备上存在恶意软件的指示。响应于该指示可以实施安全动作。

在该示例中,提供了无代理监控和警报途径,用于使用固件来检测计算设备(比如服务器平台)上恶意软件(比如勒索软件)类攻击。可以向os提供比如闪存(例如,nand分区、安全数字卡等)、硬盘驱动器等物理嵌入式存储器或者来自bmc的仿真盘存储器。而且,存储器可以被bmc访问。存储器可以被配置为看起来像具有引导块(例如,mbr)和附加数据的分区以模拟到os的生产驱动器。

bmc可以监控存储器的恶意软件或勒索软件活动或模式。如果发现此类活动,其向bmc指示存在潜在威胁。在一个示例中,在存储器的时间窗口内的任何写入活动或连续写入活动可被认为是活动或模式,因为驱动器不应该被操纵。在其他示例中,崩溃、加密或其他模式可以指示活动或模式。而且,在一些示例中,活动或模式可以基于因恶意软件攻击途径为人所知的一个或多个工具包使用的途径。例如,对引导块的访问和/或修改可以产生由bmc引起的异常事件。异常事件可以触发将该异常事件发送到中央管理系统(cms)的安全动作。异常事件可以包括附加信息,例如与活动相关联的日志、os日志、系统日志等。而且,异常事件通知可以包括由bmc完成的分析。

此外,在一些示例中,bmc的安全动作可以包括在验证系统状态之后自主行动的动作。这样的安全动作可以包括对系统进行隔离、关闭系统和/或系统的每个接口、备份审计日志等。向cms发送异常事件的过程可以允许验证事件的真实性和完整性。

在另一个示例中,可以使用利用固件的另一种途径来检测恶意软件。在此示例中,工具可以使用固件接口(比如统一的可扩展固件接口(uefi)应用或其他轻量级可引导映像)来实现安全诊断。可以根据需要或基于计算系统的观察状态(例如,重复的周期性故障或未能发动主os的故障)来执行安全诊断应用。在一个示例中,在连续引导失败事件的阈值之后,可以由固件接口使用由bmc设置的标志来调用工具。在另一个示例中,可以使用指示恶意软件的手动用户输入或控制台日志诊断来触发标志。该工具可以有能力检查存储驱动器,例如检测mbr加密、引导分区中的加密数据、查找驱动器中的特定签名或模式等,以检测存储驱动器上的恶意软件、勒索软件或其他高级攻击签名。

在一些示例中,引导分区是包含引导加载程序(旨在引导os的一个软件)的存储器中的分区。在一些示例中,引导分区可以包括mbr。该工具可以将诊断结果发送给bmc和/或cms(例如,经由bmc)。

在一些示例中,bmc可以在重复引导失败事件之后或基于其他配置规则或策略,使用模式匹配和/或异常检测来自动分析控制台日志的勒索软件或其他恶意软件消息。响应于检测到恶意软件,cms可以协调该系统和/或通信地耦合到计算系统的其他系统的恢复。

图1是根据示例的能够响应于确定存在计算设备上的恶意软件的指示而实施安全动作的计算设备的框图。计算设备100包括固件引擎110,固件引擎110可以包括可由处理器或处理元件执行的bmc112和固件、操作系统116、存储驱动器118、处理元件130和存储器132。

图2是根据示例的包括能够响应于确定存在计算设备上的恶意软件的指示而实施安全动作的计算设备的计算系统的框图。系统200可以包括计算设备100以及其他设备240a-240n,该设备240a-240n被连接在一起并且经由管理网络220连接到中央管理系统260。在一个示例中,cms可以包括恢复引擎262。计算设备100的输入/输出接口234可以用于例如经由网络250与其他设备通信。输入/输出接口234还可以用于实现其他输入/输出,例如存储功能(例如,访问一个或多个存储阵列)。

虽然没有细化以帮助简化说明,但是针对计算设备100描述的功能可以用于设备240a-240n。而且,设备240可以连接到管理网络220之外的一个或多个网络。

如上文所述,固件引擎110可以用来监控计算设备100的恶意软件。固件引擎110可以被实现为在至少一个处理器或物理处理元件上执行的固件指令。在一些示例中,处理器可以是计算设备100的主要处理元件130。在其他示例中,可以使用单独的处理器。固件引擎110可以用于确定计算设备100上存在恶意软件的指示。响应于确定恶意软件的指示存在,可以实施安全动作。

在一个示例中,bmc112被用于确定存在计算设备100上的恶意软件的指示。可以使用与用于执行高级操作系统116的处理元件130分离的处理器来实现bmc112。bmc112为计算设备提供所谓的“熄灯”功能。熄灯功能可以允许用户(比如系统管理员)在计算设备100、240上实施管理操作,即使在计算设备上未安装或未运作操作系统。此外,在一个示例中,bmc112可以在辅助电源下运行,因此计算设备100、240不需要被通电到开启状态,在该开启状态下,计算设备100、240的控制在开机后被移交给操作系统116。作为示例,bmc112可以提供所谓的“带外”服务,比如远程控制台访问、远程重启和电源管理功能、监控系统的健康状况、访问系统日志等。如本文使用的,bmc112具有用于计算设备100、240的子系统的管理能力,并且与执行计算设备(例如,服务器或服务器集)的主操作系统的处理器或处理元件130分离。

如上文所述,在一些情况下,bmc112可以启用计算设备100的熄灯管理,其提供远程管理访问(例如,系统控制台访问),而不管计算设备100是否通电,主要网络子系统硬件是否正在运作,或者os116是否正在运行或者甚至已经安装。bmc112可以包括管理员可以用来与bmc112远程通信的接口(比如网络接口)和/或串行接口。如本文使用的,“带外”服务是经由专用管理信道(例如,网络接口或串行接口)由bmc112提供的服务,并且无论计算设备100是否处于通电状态都是可用的。

在一些示例中,bmc112可以作为外壳的部分被包括。在其他示例中,bmc112可以被包括在一个或多个服务器中(例如,作为服务器的管理子系统的部分)或者经由接口(例如,外围接口)连接。在一些示例中,与bmc112相关联的传感器可以测量内部物理变量,比如湿度、温度、电源电压、通信参数、风扇速度、操作系统功能等。bmc112也能够重启或循环启动设备。

操作系统116是管理计算机硬件和软件资源并为计算机程序提供公共服务的系统软件。os116可以在处理元件130上执行并加载到存储器132。os116是高级os116,比如linux、windows、unix、裸机管理程序或者其他类似的高级软件(计算设备100的引导固件将计算设备100的控制转给它)。

存储驱动器118可以是硬件存储设备或由bmc112仿真。os116被提供对存储驱动器118的访问。在一个示例中,总线可以将存储驱动器118连接到处理元件130,该处理元件130可以将存储驱动器118提供给os116。在一些示例中,存储驱动器118可以包括多个分区。例如,一个分区可以包括可以被执行的固件114,例如用于计算设备100的智能供应的固件。在其他示例中,存储驱动器118可以使用比如硬盘驱动器、固态驱动器、nand闪存、sd闪存等的各种技术中的一种来实现。硬件存储驱动器也可以例如经由一个或多个总线、控制器和接口对bmc112能访问。

在另一个示例中,bmc112可以向os116提供仿真的存储驱动器118。这样,在一个示例中,存储驱动器118可以提供为虚拟驱动器。可以使用各种当前的途径来提供这样的仿真的或虚拟驱动器。例如,bmc112可以经由一个或多个总线或接口仿真到处理元件130的存储设备接口。例如,可以使用输入输出(i/o)控制器作为接口、南桥、超级i/o芯片组等。在一个示例中,存储设备可以经由外围组件互连(pci)pci-x、pcie被仿真连接。在另一个示例中,可以使用另一个接口,例如,可以仿真并提供通用串行总线(usb)存储设备。在一个示例中,仿真的usb存储设备可以经由处理元件130和i/o控制器(例如,经由pci总线)被提供给os116。在一些示例中,仿真的存储设备是精简供应的,以看起来其具有比实际可用的容量更大的容量。在其他示例中,与仿真的存储设备一起提供的元数据可以使其以某种方式出现,即使实际信息可能不是真实的。在一些示例中,可以使用随机数据模式或实际文件。在一些示例中,可以为个体计算设备定制随机数据模式。例如,可以使用序列号或唯一密钥来生成一个或多个随机数据模式。

在一个示例中,在将计算设备初始引导到工厂中的服务操作系统(os)或供应引擎中时,生成唯一的私钥和公钥并通过保存到bmc存储器中来将其“粘”到系统上。该存储可以是持久的,且不可替换的。bmc可以允许使用应用编程接口访问密钥。这些值可以写入与bmc相同的专用集成电路(asic)上的一次写入寄存器中。一次写入寄存器可以例如使用熔丝来实现。在一个示例中,私钥通过使用随机源执行算法来创建并且被编程。在另一个例子中,公钥是私钥的加密哈希。在一些示例中,一旦被编程,禁用改变寄存器的能力(例如,例如在写入线上切断可熔断链路)。可以基于与计算设备相关联的序列号或唯一密钥来使用用于随机生成数据的算法。因此,攻击者可能更难以识别存储驱动器118正充当蜜罐。

存储驱动器118可以被实现为蜜罐。蜜罐包括看起来是计算设备的合法部分的数据,但实际上被固件引擎110(例如,bmc112)隔离和监控。如所述,存储驱动器118可以被实现来模拟对攻击者有价值的信息或资源。在一个示例中,存储驱动器118可以包括表示引导块(比如mbr)的模拟信息。其他数据可以被模拟表示对攻击媒介(比如os、视频文件、数据库、图片文件)有价值的资源和/或信息。在一些示例中,模拟的数据可以基于特定恶意软件或工具包的特定攻击媒介(并且可以是抽象的)。此外,在各种示例中,可以类似地将多个存储驱动器提供给表示针对恶意软件的不同蜜罐的os116。

bmc112可以监控存储驱动器118。如上文所述,存储驱动器118可由操作系统116访问并且还能够由bmc112监控。bmc112可以确定在计算设备100上存在恶意软件的指示。监控可以包括跟踪存储驱动器118上的改变、修改或其他活动。监控可以是周期性的,或者可以使用中断系统来实现。例如,如果bmc112正在仿真存储驱动器118,则bmc112可以知道存储驱动器118何时被访问。因为存储驱动器118不旨在实施改变,所以来自bmc112的大量资源不需要专用于实现该途径。

如本文使用的,恶意软件的指示表示bmc112出于某种原因怀疑恶意软件可能存在于计算设备上。在一个示例中,这可以基于满足的规则或标准。可以使用各种技术,例如,使用安全信息和事件管理(siem)机制、模式匹配、恶意软件签名检测、正则表达式等。在一个示例中,如果对存储驱动器118的数据进行修改或者尝试进行修改,则存在恶意软件的指示。在另一个示例中,某些活动,比如存储驱动器118上的数据的扫描,可以触发恶意软件的指示。在一些示例中,该指示可以比实际确认恶意软件在计算设备上的范围更宽。

在一个示例中,恶意软件是勒索软件。勒索软件是一种恶意软件,其威胁除非支付赎金,否则公布受害者的数据或阻止访问该数据。勒索软件的消息可能是可以导致勒索软件的指示的签名的部分。而且,存储驱动器118上的数据的加密或企图加密可被认为是勒索软件的指示。

如所述,bmc112可以监控存储器的恶意软件或勒索软件活动、模式或签名。如果发现这样的活动,则向bmc112指示存在潜在威胁或恶意软件指示符。而且,在一些示例中,活动或模式可以基于因恶意软件攻击途径为人所知的一个或多个工具包使用的途径。这样,根据模式在存储驱动器118上检测到的活动可以导致在计算设备上存在恶意软件(比如勒索软件)的指示。在一个示例中,该模式可以包括对模拟的引导分区(比如mbr)的修改。

响应于计算设备100中的恶意软件的指示,bmc112可以实施安全动作。在一个示例中,安全动作包括将计算设备100与通信地耦合到计算设备100的其他设备隔离。这可以例如通过限制访问或关闭一个或多个输入/输出接口234来实现。在一个示例中,bmc112也可以被置于提高的安全模式下,例如在没有特定的(例如,增强或多因素)认证的情况下不响应或允许通信。提高的安全模式可以包括功能限制,并且可能需要特定的安全权限。在一些示例中,可以将计算设备100关闭到辅助状态(例如,其中os116未运行,但bmc112处于活动状态)或关闭状态。

在另外的示例中,安全动作可以包括检查计算设备100上的固件或将其还原到之前的状态。此外,在另一个示例中,安全动作可以包括发送与计算设备100相关联的cms260信息。该信息可以包括各种信息,例如,用于确定找到的活动或模式的日志信息、活动信息、os日志、系统日志、与指示符的识别相关联的分析等。在一些示例中,bmc112可以与cms260通信,由于与cms260认证凭证相关联的特定的安全权限,在提高的安全模式中该cms260具有访问bmc112的认证凭证。

在另一个示例中,另一个固件引擎110可以检测恶意软件的指示。例如,比如恶意软件诊断固件214的工具可以被实现为固件接口,比如统一的可扩展固件接口(uefi)应用或其他轻量级可引导映像以实现安全诊断。可以根据需要或基于计算设备100的观察状态(例如,重复的周期性故障或未能发动主os116的故障)来执行安全诊断应用。在一个示例中,在连续引导失败事件的阈值之后,可以由固件接口使用由bmc112设置的标志来调用工具。在另一个示例中,可以使用指示恶意软件的手动用户输入或控制台日志诊断来触发标志。

恶意软件诊断固件214可以有能力检查存储驱动器,例如,检测mbr加密、引导分区中的加密数据、查找驱动器中的特定签名或模式等,以检测存储驱动器上的恶意软件、勒索软件或其他高级攻击签名。该工具可以将比如诊断结果和/或日志信息的信息发送给bmc112和/或cms260(例如,经由bmc)。在一些示例中,bmc112可以在重复引导失败事件之后或基于其他配置规则或策略,使用模式匹配和/或异常检测来自动分析控制台日志的勒索软件或其他恶意软件消息。

响应于检测到恶意软件,cms260可以验证恶意软件的存在以及协调系统和/或通信地耦合到计算系统的其他系统的恢复。在一个示例中,cms260可以从bmc112接收关于潜在恶意软件的信息。该信息可以由cms260处理以验证计算设备100上存在恶意软件或者确定不存在恶意软件。该信息可以包括比如日志信息的原始数据以及来自固件引擎110中的一个的恶意软件诊断结果。

如果恶意软件不存在,则计算设备100可以继续处理数据,或者如果处理或通信已经被禁用、隔离或扼制,则恢复计算设备100的正常运作。如果确定存在恶意软件,则可以实施恢复引擎262来启动恢复过程。恢复过程可以包括恢复计算设备100的配置设置以及在计算设备100上安装新的os。在一些示例中,恢复过程还可以包括确认固件没有潜在地暴露于恶意软件和/或重新刷新和恢复一个或多个固件。

在一个示例中,可以实施安全恢复协议,其允许使用嵌入式bmc和cms260自动恢复服务器os和其他平台资产。cms260可以具有将恢复策略给予bmc112的功能,该bmc112包括在检测到固件或操作系统攻击时应采取的动作。作为恢复管理的部分,cms260的身份可以被存储在计算设备内的安全分区中,以当检测到违规时允许与cms260的通信。这可以是用于允许bmc112和cms260之间的认证通信的认证凭证的部分。

包括固件、io卡设置等中的每个的计算设备100的配置的备份可以被安全地存储以供与cms260连同计算设备100的身份/证书一起使用,以验证签名的违规警报并且还在恢复阶段使用相互认证安全地通信。在一个示例中,当bmc112配置有来自cms260的恢复策略时,bmc112在检测到违规时将自动进入安全的内部模式,该内部模式仅允许使用相互认证(其使用存储在安全分区中的凭证/身份)的最高权限用户(安全恢复权限)进行通信。

在各种示例中,cms260还支持以下策略:如服务器隔离、平台取证分析以及使用安全地存储在cms260中的基线或外部安全映像库自动恢复配置、固件和os。隔离动作可以涉及将bmc112配置为仅允许具有安全恢复权限的用户登录、禁用所有不安全的服务、采取os转储(在具有有效os的固件攻击的情况下)关闭网络和io端口等。恢复引擎262在基于来自管理的计算设备100的签名警报而检测到违规时,使用配置的策略(其使用恢复基线中的os映像的快照)协调恢复过程。在一些示例中,可以使用包含使用bmc虚拟介质接口安装的高级修复和重新成像软件的映像来启动恢复过程。该修复和重新成像的映像可以包含软件,以查看上次引导的清单数据,并使用内部或外部安全数据库,识别和还原一个或多个磁盘驱动器上的映像以及应用程序特定数据。

在一些示例中,为了恢复,可以将一个或多个非易失性存储器返回到“工厂”条件(例如,擦除、写入特定值等)以便消除崩溃问题并消除不正确的行为。固件操作可以用于擦除或重新编程非易失性存储器(例如,串行外设接口(spi)部件,电可擦除可编程只读存储器(eeprom)等)。

在一个示例中,响应于该信号,bmc112将例如通过对能够擦除/编程的多个组件实施低级的简单擦除来将计算系统设置为恢复状态。可以智能地设置固件,使得固件可以从恢复状态恢复,如本文进一步描述的。将固件设置为基本状态提供了这样的复位方案,该复位方案可以比其中组件中仍然存在崩溃值的复位方案更容易地从其恢复。然后可以从基线映像(例如,存储在计算设备上或者与恢复引擎262相关联的存储器中的基线)恢复配置设置。

可以被恢复的固件引擎110的示例包括基板管理控制器(bmc)、输入输出控制器(i/o控制器)、南桥、超级i/o、平台固件控制器等。

在一些示例中,在没有来自cms的管理的情况下bmc112可以自主地实施一个或多个恢复动作。在其他示例中,bmc112如所述向cms260发送通信,并且cms260可以协调恢复。在一些示例中,bmc112可以自主地实施一些安全/恢复动作,而其他经由cms260协调。

如所述的,每个设备100、240a-240n可以包括比如bmc112的bmc,设备通过该bmc112经由管理网络220与cms260通信。在一些示例中,管理网络220可以是外界(例如,对于生产网络可用的或经由互联网)不能访问的专用网络。在其他示例中,可以提供连接(例如,经由防火墙)到另一个网络环境。cms260(其自身可以包括计算机)提供用于设备的管理目的的控制点。在一些示例中,cms260可以被实现为在比如计算设备100、设备240、服务器、工作站等的设备上执行的虚拟机。在一个示例中,cms260可以被人使用来手动地(或经由脚本)将操作系统加载到设备中,启用和禁用各种服务器特征等。

设备100、240和cms260之间的数据连接形成局域网(lan),该局域网根据各种示例主要或专有地用于系统管理目的,也就是不用于按照设备的原理功能处理数据。因此,管理网络220一般地不用于处理数据交易。cms260的功能之一是使用恢复引擎262协调一个或多个系统的恢复。

在某些示例中,计算设备100和设备240可以被实现为计算机,比如服务器。在其他示例中,设备可以包括专用机器。计算设备100、设备240和/或cms260可以经由处理元件、存储器和/或其他组件来实现。

通信网络220、250可以使用有线通信、无线通信或其组合。而且,通信网络220、250可以包括多个子通信网络,比如数据网络、无线网络、电话网络等的。这样的网络可以包括例如,公共数据网络,比如因特网、局域网(lan)、广域网(wan)、城域网(man)、有线网络、光纤网络、它们的组合等。在某些示例中,无线网络可以包括蜂窝网络、卫星通信、无线lan等。而且,通信网络220、250可以是设备之间的直接网络链路的形式。可以利用各种通信结构和基础设施来实现通信网络。

举例来说,设备经由通信协议或多个协议与彼此以及与有权访问通信网络的其他组件通信。协议可以是定义相应通信网络的节点如何与其他节点交互的一组规则。而且,网络节点之间的通信可以通过交换离散的数据包或发送消息来实现。包可以包括与协议相关联的标头信息(例如,关于要联系的网络节点的位置的信息)以及净负荷信息。

处理元件130可以是一个或多个中央处理元件(cpu)、一个或多个基于半导体的微处理器、一个或多个图形处理单元(gpu)、适于检索和执行存储在机器可读存储介质中的指令的其他硬件设备或其组合。处理元件130可以是物理设备。此外,在一个示例中,处理元件130可以包括芯片上的多个核心,包括跨越多个芯片的多个核心、跨越多个设备的多个核心(例如,如果计算设备100包括多个节点设备)或其组合。处理元件130可以提取、解码和执行指令。作为替代或除了检索和执行指令之外,处理元件130可以包括至少一个集成电路(ic)、其他控制逻辑、其他电子电路或其组合,其包括用于实施指令的功能的若干电子组件。

比如固件引擎110和恢复引擎262的引擎包括硬件和/或硬件和编程的组合以实施本文提供的功能。属于特定引擎的功能也可以使用另一个引擎来实现。在一些示例中,引擎可以使用处理元件和指令和/或使用专用集成电路(asic)来实现。

如所述,输入/输出接口234可以另外由计算设备100提供。例如,可以利用比如键盘、传感器、触摸接口、鼠标、麦克风等的输入设备来接收来自计算设备100周围的环境的输入。而且,在一些示例中,可以利用比如显示器的输出设备向用户提供信息。输出设备的示例包括扬声器、显示设备、放大器等。此外,在某些示例中,可以利用一些组件来实现本文所述的其他组件的功能。比如通信设备(如网络通信设备或无线设备)的输入/输出设备也可以被认为是能够使用输入/输出接口234的设备。类似地,存储设备(例如阵列)可以使用经由输入/输出接口234的通信。例如,可以将存储区域网络连接到计算设备100,或者可以经由输入/输出接口234来连接一个或多个存储驱动器。

在各种示例中,cms260可以提供附加的功能。例如,在设备中cms260可以提供大规模盘点和更新固件、操作系统、驱动器、软件的能力和/或其他能力。cms260还可以能够管理数据中心中的设备的许可证。此外,cms260可以发现并盘点管理网络220上的设备。cms260还可以能够支持线上和线下固件和驱动器更新两者。在一些示例中,可以按顺序进行批量更新。

在一个示例中,cms260可以盘点关于设备的配置设置、固件级别、软件信息等。盘点清单可以被存储在耦合到cms260的存储器中。此外,存储器可以包括可以用于恢复相应设备的工具的固件/软件映像。

图3是根据示例的用于响应于恶意软件的指示而实施安全动作的方法的流程图。图4是根据示例的包括能够响应于恶意软件的指示而实施安全动作的基板管理控制器的计算设备的框图。

虽然以下参照计算设备400描述了方法300的执行,但是可以利用用于执行方法300的其他合适的组件(例如,使用bmc112的计算设备100)。方法300可以以存储在有形机器可读存储介质(比如存储介质420)上的可执行指令的形式和/或以电子电路的形式来实现。

计算设备400可以运行比如操作系统的高级软件作为机器可读存储介质和处理元件(未示出)上的指令。bmc410可以使用与执行os的处理元件分离的处理元件来实现。如此,bmc410使用单独的控制器来实现。如上所述,bmc410还可以为计算设备400提供带外服务。在一个示例中,可以通过执行服务指令422来提供带外服务。

在302处,计算设备可以向os提供能够由bmc410监控的存储驱动器。中央处理元件(例如,中央处理单元(cpu))可以被提供对存储驱动器的访问权。而且,bmc410可以被提供对存储驱动器的访问权。如上所述,在一个示例中,存储驱动器可以包括比如闪存的物理介质,而在另一示例中,存储驱动器可以由bmc410实现为bmc410提供的带外服务之一的部分。如此,在一个示例中,bmc410可以执行服务指令422以将存储驱动器作为虚拟或仿真的驱动器提供给os。此外,如上所述,存储驱动器可以包括模拟的引导扇区(例如,包括mbr数据)以及被模拟以看起来像是对一个或多个恶意软件或勒索软件攻击媒介有价值的数据的其他数据。在一些示例中,因为bmc410有权访问存储驱动器,所以当新的攻击媒介出现时,bmc410可以更新存储驱动器以对新的攻击媒介看起来有价值。

在304处,bmc410可以执行监控指令424以监控充当针对恶意软件指示的蜜罐的存储驱动器。基于在存储驱动器处检测到的活动,bmc410可以在监控的同时确定存在恶意软件的指示存在。恶意软件可以指示勒索软件或其他持续威胁。检测到的活动可以是由bmc410在存储驱动器上检测到的模式或签名的部分。在一个示例中,该指示可以是表示潜在恶意软件存在的规则、标准、模式或签名被击中的指示。如上所述,该指示可以包括对存储驱动器的一部分(例如,模拟的mbr数据)的修改或尝试修改。

响应于该指示,在306处,bmc410可以执行安全指令426以响应于恶意软件指示来实施安全性动作。如上所述,安全动作可以包括例如通过关闭计算设备400的多个接口来隔离计算设备400。而且,安全动作可以包括经由管理网络向cms通知该指示。此外,在一些示例中,安全动作可以包括检查与哈希相比的计算设备的固件状态,以及如果固件已经被损害,则恢复固件(例如,重新刷新)。在一些示例中,一个或多个部件的恢复或隔离可以响应于从cms接收到通信而发生。指示以及与潜在恶意软件相关联的信息可以发送给cms。该信息可以包括bmc410或其他固件的分析、关于检测到引起指示的活动或模式的信息等。如上所述,bmc410可以进入需要特定级别的权限(例如,经由认证到权限级别)的安全模式。与cms的通信可以被认证到该权限级别。

bmc410可以是适合于检索和执行存储在机器可读存储介质420中的指令的一个或多个处理器、微控制器或其他硬件设备或其组合。bmc410可以是物理设备。此外,在一个示例中,bmc410可以提取、解码并执行指令422、424、426以实现方法300。作为替代或除了检索和执行指令之外,bmc410可以包括至少一个集成电路(ic)、其他控制逻辑、其他电子电路或其组合,其包括用于实施指令422、424、426的功能的若干电子组件。

机器可读存储介质420可以是包含或存储可执行指令的任何电子、磁性、光学或其他物理存储设备。因此,机器可读存储介质可以是,例如,随机存取存储器(ram)、电可擦除可编程只读存储器(eeprom)、存储驱动器、光盘只读存储器(cd-rom)等。如此,机器可读存储介质可以是非暂时性的。如本文详细描述的,在一个示例中,机器可读存储介质420可以用用于实现方法300的一系列可执行指令编码。

图5是根据示例的基于确认勒索软件存在于系统上的固件指示来启动恢复过程的方法的流程图。图6是根据示例的能够基于勒索软件的固件指示在计算系统上启动恢复过程的中央管理系统的框图。

方法500可以在502处开始,其中cms600从bmc650接收关于恶意软件的指示的信息。该信息可以包括日志信息,例如,关于在bmc650正在监控的存储设备处的活动或尝试的活动所收集的信息。与bmc650的通信可以被认证。通信指令622可以由处理元件610执行以实现经认证的通信。而且,cms600可以具有与处于提升的安全级别的bmc650通信的权限级别,该提升的安全级别需要例如经由交换令牌或凭证的认证的通信满足的特定认证级别。

在504处,处理元件610可以执行分析指令624以根据所接收的信息确定是否存在恶意软件(例如,勒索软件)。分析可以包括使用siem的验证或其他安全分析途径,比如模式检测、签名检测等。在一个示例中,日志可以显示该指示是由计算设备的碎片整理算法而不是恶意软件引起的活动所引起的。在另一个示例中,日志可以显示该指示是由恶意活动所引起的。

响应于验证,在506处,可以执行恢复指令626以在与bmc650相关联的计算设备上启动恢复过程。cms600可以协调计算设备的恢复。恢复可以包括恢复计算设备的配置设置以及在计算设备上安装新的操作系统。新的操作系统可以通过经由bmc650提供给计算设备的虚拟介质接口来安装。在一些示例中,该恢复可以包括验证计算设备上的固件或者将固件重新刷新到受控的基线水平。基线恢复的配置设置可以针对计算设备所处的环境而不是计算设备的基础固件来定制。此外,在基线固件之上安装新的操作系统可以提供安全可靠的操作环境。这在数据中心中特别有用,在数据中心可以容易地替换和供应集群机器且用户数据被单独存储在存储器上(例如使用存储阵列)。

如上所述,cms600可以被实现为计算设备上的虚拟机。在其他示例中,cms600可以被实现为单独的计算设备或者多个机器的部分。

处理元件610可以是一个或多个中央处理单元(cpu)、一个或多个基于半导体的微处理器、一个或多个图形处理单元(gpu)、适用于检索和执行存储在机器可读存储介质620中的指令的其它硬件设备,或其组合。处理元件610可以是物理设备。此外,在一个示例中,处理元件610可以包括芯片上的多个核心,包括跨越多个芯片的多个核心、跨越多个设备的多个核心(例如,如果cms600包括多个节点设备)或其组合。处理元件610可以提取、解码并执行指令622、624、626以实现方法500。作为替代或者除了检索和执行指令之外,处理元件610可以包括至少一个集成电路(ic)、其他控制逻辑、其他电子电路或其组合,其包括用于执行指令622、624、626的功能的若干电子组件。

机器可读存储介质620可以是包含或存储可执行指令的任何电子、磁性、光学或其他物理存储设备。因此,机器可读存储介质可以是,例如,随机存取存储器(ram)、电可擦除可编程只读存储器(eeprom)、存储驱动器、光盘只读存储器(cd-rom)等。如此,机器可读存储介质可以是非暂时性的。如本文详细描述的,机器可读存储介质620可以用用于实现方法500的一系列可执行指令编码。

尽管上文已经示出和描述了某些实施方式,但是可以进行形式和细节上的各种改变。例如,已经关于一个实施方式和/或过程描述的一些特征可以与其他实施方式相关联。换句话说,关于一个实施方式描述的过程、特征、组件和/或性质可以用于其他实施方式。此外,应该理解,本文描述的系统和方法可以包括所描述的不同实施方式的组件和/或特征的各种组合和/或子组合。因此,参照一个或多个实施方式描述的特征可以与本文描述的其他实施方式组合。

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