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

具有按需文件系统锁定和自动修复功能的自动勒索软件检测的制作方法

2022-03-23 10:12:50 来源:中国专利 TAG:


1.本公开涉及文件系统保护,更具体地涉及检测和响应对文件系统的恶意软件或勒索软件攻击。


背景技术:

2.勒索软件(ransomware)是一种来自密码病毒的恶意软件,它威胁公布受害者的数据或永久地阻止对数据的访问,除非支付了赎金。简单的勒索软件可以以对知识渊博的人不难逆转的方式锁定系统。然而,更高级的恶意软件使用一种被称为加密病毒敲诈的技术,其中它加密受害者的文件,使它们不可访问,然后要求支付赎金来解密它们。在适当实现的加密病毒敲诈攻击中,在没有解密密钥的情况下恢复文件是棘手的问题。
3.典型地,使用被伪装成合法文件的特洛伊(trojan)来执行勒索软件攻击,当该合法文件作为电子邮件附件到达时,用户被欺骗而下载或打开该合法文件。然而,一些版本可以在计算机之间流传而无需用户交互。
4.当前的解决方案仅在整个文件系统或至少文件系统的较大部分(多个目录)已经被加密之后才检测到勒索软件攻击。为了修复受影响文件免受勒索软件攻击,必须执行文件系统的完全恢复。通常,如果可用,完整的系统恢复来自备份。然而,这花费了大量时间并且停止受影响文件系统的操作。在最坏的情况下,用户没有备份或者加密文件已经被备份并且丢失了所有文件,或者被迫向勒索软件攻击者支付费用以取回他们的文件。


技术实现要素:

5.根据本公开的实施例,公开了一种翻译器检测和管理系统。该系统的实施例包括计算机节点、文件系统、多个盘存储组件、备份客户端和分级存储客户端。所述分层存储客户端被配置为收集文件系统中的文件统计信息,基于所收集的文件统计信息来识别受影响文件,响应于所识别的受影响文件来锁定对所述文件系统的访问,撤销协调处理,修复所述受影响文件;并解锁对文件系统的访问。在一些实施例中,所收集的文件统计信息包括所收集的文件访问统计信息;以及收集的文件重复删除和压缩率。在一些实施例中,分级存储客户端还包括观察和控制模块(ocm)、观察和控制模块表(ocmt)、增强迁移模块(emm)、增强文件系统协调模块(efrm)和增强召回模块(erm)。在实施例中,ocm被配置为向文件系统注册,当创建新文件或文件系统中的现有文件被改变时,从文件系统接收通知。向emm通知新文件或改变的文件;并启动新的或改变的文件的预迁移。在一些实施例中,emm被配置为在文件的预迁移期间计算文件的去重复和压缩率,向ocm通知去重复和压缩率,并将磁贴的去重复和压缩率输入到ocmt中的文件的条目中。在一些实施例中,emm被进一步配置为在文件被迁移时收集去重复率和压缩率。在一些实施例中,emm被进一步配置为,在第一预迁移时生成文件的块级哈希映射,在文件的第二预迁移时生成文件的第二块级哈希映射,将块级哈希映射与第二块级哈希映射进行比较,确定所比较的块级哈希映射的预先确定的部分不匹配,并且响应于超过预先确定的部分而将文件识别为受影响的。在一些实施例中,ocm还被
配置为将文件的块级哈希映射存储在ocmt中。在一些实施例中,ocm还被配置为确定是否已经发生了对文件系统的文件写访问的异常量。在一些实施例中,ocm还被配置为定义接受的对文件系统中的文件的写访问的水印。
6.根据本公开的实施例,公开了一种用于检测交易软件的方法。该方法包括:收集文件系统中的文件统计信息;基于收集的文件统计信息来识别受影响文件;响应于识别受影响文件而锁定对文件系统的访问;撤销协调处理;修复受影响文件;以及解锁对文件系统的访问。在一些实施例中,收集文件统计信息包括收集文件访问统计信息以及收集文件去重复和压缩率。在一些实施例中,收集文件访问统计信息包括向文件系统注册观察和控制模块(ocm),当创建新文件或文件系统中的现有文件改变时通知ocm,由ocm向增强迁移模块通知新文件或改变的文件,以及发起新的或改变的文件的预迁移。在一些实施例中,该方法包括当对新文件或现有文件发生写访问时,由ocm在新文件或现有文件处注册改变跟踪过程以用于通知。在一些实施例中,该方法包括接收写访问的通知,以及将与文件相关联的数据添加到观察和控制模块表(ocmt)。在一些实施例中,该方法包括接收对文件的第二或后续写访问的通知,以及将与文件相关联的数据添加到ocmt。在一些实施例中,收集文件去重复和压缩率包括在文件的预迁移期间由增强迁移模块(emm)计算文件的去重复和压缩率,由emm通知ocm文件的去重复和压缩率,以及在观察和控制模块表(ocmt)中的文件条目中输入文件的去重复和压缩率。
7.在一些实施例中,识别受影响文件包括在文件的第一预迁移时生成文件的块级哈希图,将文件的块级哈希图存储在观察和控制模块表(ocmt)中,在文件的第二预迁移时生成文件的第二块级哈希图,将块级哈希图与第二块级哈希图进行比较,确定所比较的块级哈希图的预先确定的部分不匹配,并且响应于确定将文件识别为受影响的。在一些实施例中,识别受影响文件包括确定是否已经发生了对文件系统的异常量的文件写访问。在一些实施例中,确定是否已经发生对文件系统的文件写访问的异常量包括遍历观察和控制模块表(ocmt),针对最近的观察周期建立对ocmt中的文件的写访问的总,在最近的观察周期之前的观察周期建立对ocmt中的文件的写访问的总和。在一些实施例中,确定文件系统是否发生了文件写访问的异常量包括遍历观察和控制模块表(ocmt),对于在前一观察周期中访问的表中的每个文件,从ocmt读取每个文件的相关联的去重复和压缩率条目作为最近的比率。对于每个文件,计算相关联的文件的当前去重复和压缩率作为当前比率,将每个文件的当前比率与来自先前观察周期的对应文件的最近比率进行比较,并且当当前比率低于最近比率时,确定相关联的文件具有异常文件访问。在一些实施例中,识别受影响文件包括定义接受对文件系统中的文件的写入访问的水印。
8.在一些实施例中,响应于识别受影响文件而锁定对文件系统的访问包括:遍历观测模块表(ocmt)以确定是否已经将阈值数量的文件标记为受影响文件;阻止对文件系统的写访问;由增强型迁移模块(emm)停止所有迁移处理;以及由增强型文件系统协调模块(efrm)停止所有协调处理。在一些实施例中,协调处理的撤销包括:由增强文件系统协调模块(efrm)写入要协调的改变的撤销日志,确定在efrm处的协调处理已经停止,以及应用撤销日志以撤销在存储服务器处的所有协调活动。在一些实施例中,修复受影响文件包括遍历观察和控制模块表(ocmt),以识别ocmt中被标记为受影响文件的每个文件,将受影响文件移动到隔离文件夹,并从存储服务器恢复受影响文件的最新版本,该最新版本具有在与
受影响文件的当前版本相关联的时间戳之前的迁移时间戳。在一些实施例中,修复受影响文件包括遍历观察和控制模块表(ocmt),以识别ocmt中被标记为受影响文件的每个文件,对受影响文件进行存根,并将受影响文件的清除版本链接到存储服务器中受影响文件的版本,该受影响文件的版本在与受影响文件的当前版本相关联的时间戳之前被迁移。
9.上述发明内容并非旨在描述本公开的每个所示实施例或每种实施方式。
附图说明
10.本技术中包括的附图并入说明书中并形成说明书的一部分。它们示出了本公开的实施例,并且与说明书一起用于解释本公开的原理。附图仅说明某些实施例,而不限制本公开。
11.图1是示出了根据说明性实施例的用于提供具有勒索软件检测和管理的备份架构的系统的框图。
12.图2是更详细地示出了根据示例性实施例的hsm客户端的组件的框图。
13.图3是示出了根据本公开的各种实施例的用于检测系统并保护系统免受勒索软件攻击的过程的流程图。
14.图4是示出了根据一个实施例的计算系统的框图。
15.图5是示出了说明性云计算环境的图形表示。
16.图6示出了根据一个说明性实施例的由云计算环境提供的一组功能性抽象层。
17.虽然本发明可以有各种修改和备选形式,但是其细节已经在附图中通过示例的方式示出并且将被详细描述。然而,应当理解,其目的不是将本发明限制于所描述的特定实施例。相反,本发明覆盖落入本发明的精神和范围内的所有修改、等效物和备选。
具体实施方式
18.本公开的各方面涉及文件系统的保护,尤其更具体地涉及使文件系统免受恶意软件或勒索攻击的保护。虽然本公开不一定限于这种应用,但是通过使用本上下文的各种示例的讨论可以理解本公开的各个方面。
19.勒索软件攻击是可能对文件系统中的文件发生的最具破坏性的问题之一。这对文件系统和文件所有者具有显著影响。无法足够快地检测到勒索软件攻击以防止对文件的访问的损失。通常,文件系统的所有者仅在文件被加密之后才意识到勒索软件攻击。
20.现代备份软件(例如,ibm spectrum protect)能够检测文件系统备份中的备份率或去重复率是否显示出与正常处理的差异。不幸的是,这种检测发生在文件系统被感染之后发生的下一次备份时。这意味着所有文件都已经被加密,并且太晚而不能停止攻击。为了修复受影响文件,必须执行文件系统的完全恢复。然而,这花费了大量时间并且停止了受影响文件系统上的生产。在最坏的情况下,用户没有备份并且丢失所有文件,或者被迫向勒索软件攻击者支付费用以取回他们的文件。
21.当前的解决方案不能防止影响整个文件系统的攻击。当前的解决方案仅在整个文件系统被加密之后才检测到勒索软件攻击。为了修复这个文件系统,如果可用,必须从备份中恢复完整的系统恢复。
22.本公开通过快速(接近实时)检测勒索软件攻击,并提供对检测到的勒索软件攻击
的接近实时的反应以防止文件和/或文件系统的进一步加密,来解决当前保护系统中的弱点。本公开还提供了在检测到勒索软件攻击之前对加密的文件的自动修复。此外,本公开可以与病毒扫描器互锁或协调以自动修复已经被病毒或其他损坏感染的文件。
23.图1是示出了根据说明性实施例的用于提供具有勒索软件检测和管理的备份架构的系统的框图。备份系统100采用分级存储管理解决方案(hsm)来管理文件。备份系统100包括计算机节点110、文件系统120、磁盘存储组件130-1、130-2、130-n(统称为磁盘存储组件130)、备份客户端140、后端服务器150、以及分级存储管理客户端160(hsm客户端160)。
24.简要地,在图1中,备份客户端140在计算节点110上运行。计算节点具有文件系统120的本地安装,并且具有经由网络对磁盘存储组件130的访问。备份客户机140组件140连接到后端服务器150。hsm客户端160通常被安装在一个(或多个)计算节点110上(或在多个集群环境中)。hsm客户端160从安装在(多个)计算节点110上的文件系统120读取数据,并经由迁移发送文件数据到后端服务器150。hsm客户端160在计算节点110上运行。计算节点具有文件系统120的本地安装,并且具有经由网络对磁盘存储组件130的访问。hsm客户端160组件160连接到后端服务器150。
25.分级存储管理解决方案通常是通过引入附加的分级存储层来虚拟扩展文件系统120的空间。引入存储层的原因是为了以比传统旋转磁盘更低的成本和更高的效率存储大量数据。在许多情况下,hsm分层环境由不同的闪存或固态驱动器(ssd)(层0)和硬盘驱动器(hdd)(层1—n-1)类以及作为分级结构中的最后一层(层n)的磁带组成。在层之间移动文件的过程被称为迁移和召回。迁移意味着将文件数据移动到下一较低层,并仅用标识较低层中文件数据的新位置所需的元数据来替换较高层上的数据以用于稍后召回。元数据通常被称为“存根文件”并且不消耗空间。召回意味着将数据移回存储分级结构中的较高层。文件数据的物理位置对于文件系统120的用户和所存储的数据是透明的。hsm解决方案不区分不同的文件版本。文件数据的改变需要从较低层到在线层的召回。这些功能由hsm客户端160组件160通过对应的迁移模块和召回模块(图2中所示)来实现。
26.在将文件从较高层迁移到较低层方面,unix hsm知道三种不同的文件迁移状态,驻留、预迁移和迁移。在驻留状态中,文件数据仅存在于活动文件系统120中(层0)。在备份服务器,诸如spectrum protect服务器(层1)中没有驻留文件的有效副本。这是新创建或改变的文件的迁移状态。在预迁移状态下,文件数据在文件系统120(层0)和备份服务器(层1)两者中都具有有效副本。预迁移状态还应用于从备份服务器召回的文件以用于读取。hsm文件预迁移状态也被称为双模式。在迁移状态,层0中的文件被存根文件被替换,并且只存在于备份服务器(层1)中。迁移状态持续,直到试图对文件数据进行数据访问。
27.当执行文件数据访问时,发起透明召回。数据进阶到层0,在同时数据访问系统召回被阻塞,等待其完成。用户从较低层到较高层的文件召回可以通过显式召回hsm命令来召回文件或文件列表,或者通过使用诸如spectrum scale mmapplypolicy命令等命令来驱动其属性与一组策略规则准则相匹配的文件的召回来执行。如果应用通过访问文件触发了重新召回,它必须等待直到完整的文件数据从备份服务器召回到文件系统120。访问的类型可以是读取、写入或截断。
28.协调方法确保文件系统120的内容和备份服务器的内容同步。协调功能由hsm客户端160组件160通过对应的协调模块(图2中所示)来实现。例如,在用于空间管理的范围保护
(spectrum protect)中,客户端使用范围比例(spectrum scale)策略引擎来生成文件系统120中的所有迁移文件的列表,并且在所列出的文件与存储在范围保护服务器中的文件之间执行快速比较。
29.典型的反勒索软件系统基于两种不同的架构类型来防止勒索软件执行。
30.第一种架构类型是反病毒架构的克隆。反勒索软件像观察者一样被安装在本地计算节点上。它监视文件系统数据和执行的程序以寻找已知勒索软件的特定签名。反勒索软件需要获得已知的勒索软件签名的输入,就像病毒扫描器需要新病毒的最新更新一样。在不知道勒索软件签名的情况下,它不能识别、检测和防止勒索软件攻击和加密本地文件系统。
31.第二种架构类型的反勒索软件是基于定义对文件、目录和文件系统的预先访问限制。该软件需要被安装在本地计算节点上,并且授权特定的受信应用对特定区域的写入访问。例如,目录可被标记为受保护的,并且仅允许注册的应用将数据写入这些目录中。该软件不执行任何对勒索软件的检测。它简单地保护数据不被任何未知或不可信的应用程序重写。这可以是勒索软件或仅仅是消费者想要使用的另一应用。这种反勒索软件通常声称在内部具有行为检测,但是简单地从消费者收集许多反馈,像典型的桌面防火墙询问它们的消费者是否允许该应用这样做。
32.通常,已知的勒索软件检测和防止应用(如bitdefender、zone alarm、panda或webroot)应用以下方法。目录可以被标记为受保护的,并且仅允许注册的应用将数据写入这些目录中。本地文件改变跟踪被用于标识对文件的勒索软件攻击。被检测为恶意的应用将被本地系统上的勒索软件检测应用停止。这种方法的局限性在于,勒索软件检测应用必须在受到攻击的本地系统上运行。此外,对目录的手动保护对系统引入了不灵活性。
33.与先前的系统不同,本公开的hsm客户端160不具有必须在本地系统上运行的限制。受保护的文件系统120可以是本地的,但也可以是远程的。不需要手动地标识受保护目录。不必停止应用,但是文件系统120的访问将被锁定以防止对文件的进一步改变。
34.图2是更详细地示出了hsm客户端160的组件的框图。hsm客户端160包括观察和控制模块220(ocm 220)、迁移模块240、召回模块260和协调模块280。
35.ocm 220模块220是hsm客户端160的模块,其被配置为收集和维护文件访问统计信息以及收集和维护文件去重复统计信息。ocm 220模块220在观察和控制模块表225(ocmt 225)中维护所收集的数据。ocm 220使用文件系统120控制接口,例如dmapi或windows过滤驱动器,来收集文件信息,并防止对文件系统120中的观察到的和受影响文件的写入访问。
36.迁移模块240是系统的组件,其被配置为将文件数据移动到下一较低层,并且仅利用标识较低层中的文件数据的新位置以用于稍后召回所需的元数据来替换较高层上的数据。迁移模块240包括增强迁移模块245(emm 245)。emm 245被配置为将文件去重复率和压缩率具体化到ocm 220模块220。此外,emm 245被配置为创建文件的块级哈希映射,同时将其迁移并将哈希映射具体化到ocm 220模块220。emm 245还被配置为将文件迁移到后端服务器150(例如,spectrum protect服务器)。后端服务器150配置有延迟删除直到可以排除勒索软件感染的模块。
37.召回模块是系统的被配置成将数据移回存储分级结构中的较高层的组件。召回模块260包括增强召回模块265(erm 265)。erm 265是被配置为停止对文件系统120的文件访
问的模块。
38.协调模块280是被配置成将文件系统120的内容与后端服务器150的内容同步的系统的组件。协调模块还包括增强文件系统协调模块285(efrm 285)。efrm 285被配置成根据需要立即停止协调处理。此外,efrm 285可以包括撤消日志功能。
39.图3是示出了根据本公开的各种实施例的用于检测系统并保护系统免受勒索软件攻击的过程的流程图。过程300开始于收集文件的统计信息。这在步骤310中示出。在该步骤,ocm 220收集文件访问统计信息以及文件去重复率和压缩率。
40.为了收集文件访问统计信息,ocm 220向文件系统120注册,以接收是否新文件被创建或者是否现有文件被改变的通知。当ocm 220接收到关于新创建或改变的文件的通知时,它在该文件处注册改变跟踪机制以在发生写入访问时接收通知。当注册已经完成时,ocm 220通知emm 245关于新的或改变的文件,并发起文件的预迁移。当发生第一次写入访问时,ocm 220将文件名添加到ocmt 225,并输入对给定文件的访问时间。在相同观察周期中对相同文件的后续写入访问将向表添加附加的时间戳。
41.为了在预迁移的时间收集文件去重复率和压缩率,emm 245去重复并压缩文件以便有效地将数据传送到ehs。emm 245计算文件的去重复率和压缩比率。在文件的预迁移已经完成后,emm 245通知ocm 220迁移已经完成,并向ocm 220提供去重复率和压缩率。ocm 220将给定文件的去重复率和压缩速率输入到ocmt 225。后续的迁移将导致针对相同文件附加的条目被添加。当驻留文件不是预先迁移而是被迁移时,发生相同的情况。如果预迁移文件被迁移,则不需要收集附加信息,因为这已经在最后一次将数据发送到ehs时(在预迁移的时间)收集。
42.[0043][0044]
表1
[0045]
表1示出了基于步骤310和320的过程的ocmt 225中的文件,(文件a)的条目的示例。应当注意,表1的注释列不存在于ocmt 225中,但是在该示例中提供该注释列以向读者提供附加信息(如在每个条目中什么已经改变)。在一些实施例中,文件访问统计信息不仅基于对文件的写入访问的频率,而且考虑到文件大小在写入访问方面不改变。然而,当对文件执行加密时,文件大小发生改变。在一些实施例中,该过程考虑到对文件的访问遵循模式。该模式可以是目录遍历、索引节点表遍历、用户特定文件系统120遍历或记录的访问拒绝比率。该信息可以被用以检测异常访问活动。在一些实施例中,文件访问统计信息基于文件的写入比率的召回。在该实施例中,ocm 220与erm 265交互以收集该信息,并将该信息输入ocmt表225中。这也可以用于标识异常访问模式。在一些实施例中,文件访问统计信息基于文件的协调到期率。在该方法中,ocm 220与efrm 285交互以收集该信息,并将该信息输入ocmt表225中。该信息同样可以用于标识系统中的异常模式。
[0046]
基于所收集的文件统计信息,该过程继续标识受影响文件。这在步骤320中示出。在该步骤,ocm 220标识文件在被发送到ehs时是否受到影响。当文件的预迁移首次发生时,emm 245创建文件的块级哈希映射并将该哈希发送到ocm 220。ocm 220将信息存储在ocmt 225中。当文件的预迁移在第二次以后的时间发生时,创建块级别哈希映射,并将其与来自先前运行的ocmt 225中存储的哈希映射信息进行比较。当哈希映射具有100%的差异时,emm 245假定文件受到加密的影响。emm 245通知ocm 220文件受到影响。ocm 220在ocmt 225中输入该信息。然而,在一些实施例中,对于emm 245而言,哈希映射中的差异百分比可以小于100%,以假定文件受到加密的影响。
[0047]
ocm 220进一步标识文件系统120中是否发生文件写入访问的异常量。ocm 220遍历ocmt 225,并为最近的观察周期针对表中的所有文件构建写入访问的总和sn。ocm 220进一步在最近的观察周期之前的观察周期内,针对表中的所有文件构建写入访问的第二总和sn-1。如果sn的结果显著高于sn-1的结果,则过程可以移动以阻止对文件系统120的访问。备选地,ocm 220可以遍历ocmt 225。对于在最后的观察周期中访问的表中的每个文件,读取用于去重复率和压缩率的条目。ocm 220访问文件并计算给定文件的当前去重复率和压缩率。如果当前去重复率和压缩率与最近去重复率相比显著较低,则ocm 220可以在表ocmt 225中标记针对异常文件访问的文件。
[0048]
ocm 220还可以定义接受的对文件系统120中的文件的写入访问的水印。
[0049]
ocm 220检查勒索软件攻击的间隔被定义。该间隔被称为观察间隔(oi)。它可以由
管理员定义,并确定ocm 220能够多快地检测到攻击。oi越小,检测到攻击的速度越快。然而,非常小的间隔具有错误检测的风险。oi应当比备份文件系统120的通常间隔(如24小时)小得多,以受益于ocm 220的能力。ocm 220运行最后x oi的文件访问统计信息,其中x oi表示几天或几周的时间跨度。计算文件系统120中的写入文件的平均量以及平均的分布。ocm 220然后运行当前oi的文件访问统计信息,并且计算文件系统120中的写入文件的量。将来自最后x oi的结果与来自当前oi的结果进行比较。应用标准统计方法(例如,3sigma方法)来确定当前oi中是否存在异常高的文件改变率。然而,可以应用任何统计方法。如果检测到不寻常的高改变率,则ocmt 225被遍历,并标识在最后oi中改变的所有文件。ocm 220然后可以通过比较经哈希化的块来检查整个(或其他阈值)文件是否被改变,检查去重复率和压缩率是否已经降低。如果对这两者的回答都是,则ocm 220可以继续锁定对文件系统120的访问。
[0050]
当确定攻击在进行中时,系统继续锁定对文件和/或文件系统120的访问。这在步骤330中示出。在该步骤,ocm 220在检测到异常写入访问的情况下锁定对文件系统120中的文件的写入访问。为了锁定文件访问,ocmt 225表被遍历。如果预定的数目的文件被标记为具有异常写入访问,则ocm 220继续锁定所有进一步的写入访问,以使用erm 265完成文件系统120。这是为了防止更多的文件被重写。ocm 220通知emm 245停止所有迁移处理。这是为了防止受影响文件被迁移到后端服务器150并使后端服务器150上的文件的未受影响的版本无效。ocm 220通知efrm 285停止所有的协调处理。这是为了防止在后端服务器150上删除迁移文件的未受影响的版本。在一些实施例中,ocm 220与病毒扫描器交互。如果被观察的文件系统120中的文件被病毒感染,则ocm 220从病毒扫描器接收通知。ocm 220将锁定对给定文件的写入访问,并开始如下所述的自动修复。在另一实施例中,ocm 220与病毒或恶意软件扫描工具交互,该病毒或恶意软件扫描工具在观察到攻击时由ocm 220自动启动,并用于从受影响的系统中移除恶意软件或病毒。
[0051]
在文件访问被锁定后,系统就继续撤销已经发生的协调处理。这在步骤340中示出。当检测到异常写入时,ocm 220继续撤消协调处理。当攻击之前开始协调处理时,efrm 285写入撤消日志,该撤消日志包含在后端服务器150处要协调的所有改变。后端服务器150被配置为从efrm 285收集协调活动,但不删除文件,直到efrm 285最终提交协调。实际的删除仅在文件已被检测为废弃之后的若干观察循环发生。当efrm 285由于对文件系统120的异常写入访问而停止于ocm 220时,撤消日志将被用以撤消后端服务器150处的所有协调活动。当efrm 285定期完成协调时,后端服务器150处的改变将被提交,并且撤消日志将被删除。
[0052]
在停止协调处理之后,系统继续修复被攻击损坏的文件。这在步骤350示出。
[0053]
ocm 220通过遍历ocmt 225以标识被标记为异常写入访问的文件来自动修复受影响文件。在一些实施例中,ocm 220然后将文件移动到隔离文件夹。然后,ocm 220从后端服务器150恢复文件的最新版本。它通过在后端服务器150处标识文件的版本来做到这一点,该版本具有从检测到异常写入访问之前到文件的原始名称的迁移时间戳。这对表中所有受影响文件继续。
[0054]
在一些实施例中,ocm 220通过清除受影响文件来恢复文件。存根文件然后被链接到后端服务器150处的文件的版本,该版本基于迁移时间戳在异常写入访问之前被迁移。
[0055]
在文件被恢复后,系统就继续解锁被锁定的文件。这在步骤360中示出。ocm 220可以在从攻击开始或从文件恢复的时间起的预定时间之后解锁文件。在一些实施例中,解锁过程由文件系统120管理员手动执行。在一些实施例中,ocm 220可以向用户生成通知,以向他们通知检测到的攻击。这样,用户可以警告系统加密是有意的或无意的。如果加密是有意的,则系统可以继续允许加密继续。在一些实施例中,用户在解锁文件之前被分配标识和移除勒索软件的任务。然后,用户可以使用移除工具从系统移除勒索软件。在从系统中移除勒索软件后,用户就可以向ocm 220返回指示:已经移除了勒索软件并且可以解锁文件系统。在一些实施例中,用户可能需要在恢复受影响文件之前移除勒索软件。
[0056]
现在参考图4,示出了根据本公开的实施例的可以用于实现本文描述的方法、工具和模块中的一个或多个以及任何相关功能(例如,使用计算机的一个或多个处理器电路或计算机处理器)的示例计算机系统401的高级别框图。在一些实施例中,计算机系统401的主要组件可以包括一个或多个cpu 402、存储器子系统404、终端接口412、存储装置接口416、i/o(输入/输出)设备接口414和网络接口418,所有这些组件可以直接或间接地通信耦合,以便经由存储器总线403、i/o总线408和i/o总线接口单元410进行组件间通信。
[0057]
计算机系统401可以包含一个或多个通用可编程中央处理单元(cpu)402-1、402-2、402-3和402-n,本文中被统称为cpu 402。在一些实施例中,计算机系统401可以包含相对大的系统的典型的多个处理器;然而,在其它实施例中,计算机系统401可以备选地是单cpu系统。每个cpu 402可以执行存储在存储器子系统404中的指令,并且可以包括一级或多级板载高速缓存。
[0058]
系统存储器404可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(ram)422或高速缓存存储器424。计算机系统401还可以包括其它可移除/不可移除、易失性/非易失性计算机系统存储介质。仅作为示例,存储系统426可以被提供用于从诸如”硬盘驱动器“等不可移除、非易失性磁介质中读取和向其写入。尽管未示出,但可提供用于从可移除、非易失性磁盘(例如,“软盘”)中读取和向其写入的磁盘驱动器,或可提供用于从诸如cd-rom、dvd-rom等可移除、非易失性光盘中读取或向其写入的光盘驱动器或其它光学介质。另外,存储器404可以包括闪存,例如,闪存棒驱动器或闪存驱动器。存储器设备可以通过一个或多个数据介质接口连接到存储器总线403。存储器404可以包括至少一个程序产品,该程序产品具有一组(例如,至少一个)程序模块,这些程序模块被配置成用于执行不同实施例的功能。
[0059]
尽管存储器总线403在图4中被示为在cpu 402、存储器子系统404和i/o总线接口410之间提供直接通信路径的单个总线结构,但是在一些实施例中,存储器总线403可以包括多个不同的总线或通信路径,其可以以各种形式中的任何形式来布置,诸如分层的点对点链路、星形或网状配置、多层总线、并行和冗余路径、或任何其他适当类型的配置。此外,虽然i/o总线接口410和i/o总线408被示为单个相应的单元,但是在一些实施例中,计算机系统401可以包含多个i/o总线接口单元410、多个i/o总线408或两者。此外,虽然示出了将i/o总线408与通向各种i/o设备的各种通信路径分开的多个i/o接口单元,但是在其他实施例中,一些或所有i/o设备可以直接连接到一个或多个系统i/o总线。
[0060]
在一些实施例中,计算机系统401可以是多用户大型计算机系统、单用户系统、或者服务器计算机或具有很少或没有直接用户接口但从其它计算机系统(客户端)接收请求
的类似设备。此外,在一些实施例中,计算机系统401可以被实现为台式计算机、便携式计算机、膝上型或笔记本计算机、平板计算机、袖珍计算机、电话、智能电话、网络交换机或路由器、或任何其他适当类型的电子设备。
[0061]
注意,图4旨在描绘示例性计算机系统401的代表性主要组件。然而,在一些实施例中,各个组件可以具有比图4中所表示的更大或更小的复杂度,可以存在不同于图4中所示的那些组件或除其之外的组件,并且这些组件的数目、类型和配置可以变化。
[0062]
一个或多个程序/实用程序428可以存储在存储器404中,每个程序/实用程序具有至少一组程序模块430。程序/实用程序428可以包括管理程序(也称为虚拟机监视器)、一个或多个操作系统、一个或多个应用程序、其他程序模块和程序数据。操作系统、一个或多个应用程序、其它程序模块和程序数据或其某种组合中的每个可以包括联网环境的实现。程序428和/或程序模块403通常执行各种实施例的功能或方法。
[0063]
应当理解,尽管本公开包括关于云计算的详细描述,但是本文所陈述的教导的实现不限于云计算环境。相反,本发明的实施例能够结合现在已知或以后开发的任何其它类型的计算环境来实现。
[0064]
云计算是一种服务递送模型,用于实现对可配置计算资源(例如,网络、网络带宽、服务器、处理、存储器、存储装置、应用、虚拟机和服务)的共享池的方便的按需网络访问,所述可配置计算资源可以以最小的管理努力或与服务的提供者的交互来快速供应和释放。该云模型可以包括至少五个特性、至少三个服务模型和至少四个部署模型。
[0065]
特征如下:
[0066]
按需自助:云消费者可以单方面地自动地根据需要提供计算能力,诸如服务器时间和网络存储,而不需要与服务的提供者进行人工交互。
[0067]
广域网接入:能力在网络上可用,并且通过促进由异构的薄或厚客户端平台(例如,移动电话、膝上型计算机和pda)使用的标准机制来访问。
[0068]
资源池化:供应商的计算资源被集中以使用多租户模型来服务多个消费者,其中不同的物理和虚拟资源根据需求被动态地分配和重新分配。存在位置无关的意义,因为消费者通常不控制或不知道所提供的资源的确切位置,但是能够在较高抽象级别(例如国家、州或数据中心)指定位置。
[0069]
快速弹性:在一些情况下,可以快速且弹性地提供快速向外扩展的能力和快速向内扩展的能力。对于消费者,可用于提供的能力通常看起来不受限制,并且可以在任何时间以任何数量购买。
[0070]
测量服务:云系统通过利用在适合于服务类型(例如,存储、处理、带宽和活动用户账户)的某一抽象级别的计量能力来自动地控制和优化资源使用。可以监视、控制和报告资源使用,从而为所利用服务的提供者和消费者两者提供透明性。
[0071]
服务模型如下:
[0072]
软件即服务(saas):提供给消费者的能力是使用在云基础设施上运行的提供者的应用。应用程序可通过诸如web浏览器(例如,基于web的电子邮件)等瘦客户机界面从各种客户机设备访问。消费者不管理或控制包括网络、服务器、操作系统、存储、或甚至个别应用能力的底层云基础结构,可能的例外是有限的用户专用应用配置设置。
[0073]
平台即服务(paas):提供给消费者的能力是将消费者创建或获取的应用部署到云
基础设施上,该消费者创建或获取的应用是使用由提供商支持的编程语言和工具创建的。消费者不管理或控制包括网络、服务器、操作系统或存储的底层云基础设施,但具有对部署的应用和可能的应用托管环境配置的控制。
[0074]
基础设施即服务(iaas):提供给消费者的能力是提供处理、存储、网络和消费者能够部署和运行任意软件的其它基本计算资源,所述软件可以包括操作系统和应用。消费者不管理或控制底层云基础设施,但具有对操作系统、存储、部署的应用的控制,以及可能对选择的联网组件(例如,主机防火墙)的有限控制。
[0075]
部署模型如下:
[0076]
私有云:云基础设施仅为组织操作。它可以由组织或第三方管理,并且可以存在于建筑物内或建筑物外。
[0077]
社区云:云基础设施由若干组织共享,并且支持具有共享关注(例如,任务、安全要求、策略和合规性考虑)的特定社区。它可以由组织或第三方管理,并且可以存在于场所内或场所外。
[0078]
公有云:云基础设施可用于一般公众或大型工业群体,并且由销售云服务的组织拥有。
[0079]
混合云:云基础设施是两个或更多云(私有、共同体或公共)的组合,所述云保持唯一实体,但是通过使数据和应用能够移植的标准化或私有技术(例如,用于云之间的负载平衡的云突发)绑定在一起。
[0080]
云计算环境是面向服务的,其焦点在于无状态、低耦合、模块性和语义互操作性。在云计算的核心是包括互连节点的网络的基础设施。
[0081]
系统600可以在云计算环境中采用。图5是根据一个实施例的说明性云计算环境550的图形表示。如图所示,云计算环境550包括云消费者使用的本地计算设备可以与其通信的一个或多个云计算节点510,所述本地计算设备例如是个人数字助理(pda)或蜂窝电话554a、台式计算机554b、膝上型计算机554c和/或汽车计算机系统554n。节点9y可以彼此通信。它们可以被物理地或虚拟地分组(未示出)在一个或多个网络中,诸如如上文描述的私有云、社区云、公共云或混合云或其组合。这允许云计算环境550提供基础设施、平台和/或软件作为服务,云消费者不需要为其维护本地计算设备上的资源。应当理解,图5中所示的计算设备554a-n的类型仅旨在说明,并且计算节点510和云计算环境550可以通过任何类型的网络和/或网络可寻址连接(例如,使用web浏览器)与任何类型的计算机化设备通信。
[0082]
现在参考图6,示出了由云计算环境550(图5)提供的一组功能性抽象层。应当预先理解,图6中所示的组件、层和功能仅旨在说明,并且本公开的实施例不限于此。如所描绘的,提供了以下层和相应的功能:
[0083]
硬件和软件层660包括硬件和软件组件。硬件组件的示例包括:大型机661;基于risc(精简指令集计算机)架构的服务器662;服务器663;刀片服务器664;存储设备665;以及网络和联网组件666。在一些实施例中,软件组件包括网络应用服务器软件667和数据库软件668。
[0084]
虚拟化层670提供抽象层,从该抽象层可以提供虚拟实体的以下示例:虚拟服务器671;虚拟存储装置672;虚拟网络673,包括虚拟专用网络;虚拟应用和操作系统674;以及虚拟客户端675。
[0085]
在一个示例中,管理层680可以提供以下描述的功能。资源供应681提供了对被用来在云计算环境中执行任务的计算资源和其他资源的动态采购。计量和定价682提供了在云计算环境中利用资源时的成本跟踪,以及用于消耗这些资源的计费或计价。在一个示例中,这些资源可以包括应用软件许可证。安全性为云消费者和任务提供身份验证,以及为数据和其他资源提供保护。用户门户683为消费者和系统管理员提供对云计算环境的访问。服务级别管理684提供云计算资源分配和管理,使得满足所需的服务级别。服务水平协议(sla)计划和履行685提供对云计算资源的预安排和采购,其中根据sla预期未来需求。
[0086]
工作负载层690提供了可以利用云计算环境的功能的示例。可以从该层提供的工作负载和功能的示例包括:映射和导航691;软件开发和生命周期管理692;布局检测693;数据分析处理694;事务处理695;以及数据库696。
[0087]
本发明可以是任何可能的技术细节集成水平的系统、方法和/或计算机程序产品。计算机程序产品可以包括其上具有计算机可读程序指令的计算机可读存储介质(或多个介质),所述计算机可读程序指令用于使处理器执行本发明的各方面。
[0088]
计算机可读存储介质可以是能够保留和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述的任何合适的组合。计算机可读存储介质的更具体示例的非穷举列表包括以下:便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式光盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、诸如上面记录有指令的打孔卡或凹槽中的凸起结构的机械编码装置,以及上述的任何适当组合。如本文所使用的计算机可读存储介质不应被解释为暂时性信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤线缆的光脉冲)、或通过导线传输的电信号。
[0089]
本文描述的计算机可读程序指令可以从计算机可读存储介质下载到相应的计算/处理设备,或者经由网络,例如互联网、局域网、广域网和/或无线网络,下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
[0090]
用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(isa)指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路的配置数据,或者以一种或多种编程语言(包括面向对象的编程语言,例如smalltalk、c 等)和过程编程语言(例如“c”编程语言或类似的编程语言)的任意组合编写的源代码或目标代码。计算机可读程序指令可以完全在用户的计算机上执行,部分在用户的计算机上执行,作为独立的软件包执行,部分在用户的计算机上并且部分在远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络连接到用户的计算机,包括局域网(lan)或广域网(wan),或者可以连接到外部计算机(例如,使用因特网服务提供商通过因特网)。在一些实施例中,为了执行本发明的各方面,包括例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla)的电子电路可以通过利用计算机可
读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化。
[0091]
本文参考根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的各方面。将理解,流程图和/或框图的每个框以及流程图和/或框图中的框的组合可以由计算机可读程序指令来实现。
[0092]
这些计算机可读程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现流程图和/或框图的一个或多个框中指定的功能/动作的装置。这些计算机可读程序指令还可以存储在计算机可读存储介质中,其可以引导计算机、可编程数据处理装置和/或其他设备以特定方式工作,使得其中存储有指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或框图的一个或多个框中指定的功能/动作的各方面的指令。
[0093]
计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上,以使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图的一个或多个框中指定的功能/动作。
[0094]
附图中的流程图和框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这点上,流程图或框图中的每个框可以表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些替代实施方案中,框中所注明的功能可不按图中所注明的次序发生。例如,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能。还将注意,框图和/或流程图图示的每个框以及框图和/或流程图图示中的框的组合可以由执行指定功能或动作或执行专用硬件和计算机指令的组合的专用的基于硬件的系统来实现。
[0095]
本发明可以是任何可能的技术细节集成水平的系统、方法和/或计算机程序产品。计算机程序产品可以包括其上具有计算机可读程序指令的计算机可读存储介质(或多个介质),所述计算机可读程序指令用于使处理器执行本发明的各方面。
[0096]
计算机可读存储介质可以是能够保留和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质可以是例如但不限于电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或前述的任何合适的组合。计算机可读存储介质的更具体示例的非穷举列表包括以下:便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式光盘只读存储器(cd-rom)、数字多功能盘(dvd)、记忆棒、软盘、诸如上面记录有指令的打孔卡或凹槽中的凸起结构的机械编码装置,以及上述的任何适当组合。如本文所使用的计算机可读存储介质不应被解释为瞬态信号本身,诸如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,通过光纤线缆的光脉冲)、或通过导线传输的电信号。
[0097]
本文描述的计算机可读程序指令可以从计算机可读存储介质下载到相应的计算/处理设备,或者经由网络,例如互联网、局域网、广域网和/或无线网络,下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输光纤、无线传输、路由器、防火墙、交换
机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或网络接口从网络接收计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
[0098]
用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(isa)指令、机器相关指令、微代码、固件指令、状态设置数据、集成电路的配置数据,或者以一种或多种编程语言(包括面向对象的编程语言,例如smalltalk、c 等)和过程编程语言(例如“c”编程语言或类似的编程语言)的任意组合编写的源代码或目标代码。计算机可读程序指令可以完全在用户的计算机上执行,部分在用户的计算机上执行,作为独立的软件包执行,部分在用户的计算机上并且部分在远程计算机上执行,或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可以通过任何类型的网络连接到用户的计算机,包括局域网(lan)或广域网(wan),或者可以连接到外部计算机(例如,使用互联网服务提供商通过互联网)。在一些实施例中,为了执行本发明的各方面,包括例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla)的电子电路可以通过利用计算机可读程序指令的状态信息来执行计算机可读程序指令以使电子电路个性化。
[0099]
本文参考根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的各方面。将理解,流程图和/或框图的每个框以及流程图和/或框图中的框的组合可以由计算机可读程序指令来实现。
[0100]
这些计算机可读程序指令可以被提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器以产生机器,使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现流程图和/或框图的一个或多个框中指定的功能/动作的装置。这些计算机可读程序指令还可以存储在计算机可读存储介质中,其可以引导计算机、可编程数据处理装置和/或其他设备以特定方式工作,使得其中存储有指令的计算机可读存储介质包括制品,该制品包括实现流程图和/或框图的一个或多个框中指定的功能/动作的各方面的指令。
[0101]
计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置或其他设备上,以使得在计算机、其他可编程装置或其他设备上执行一系列操作步骤,以产生计算机实现的过程,使得在计算机、其他可编程装置或其他设备上执行的指令实现流程图和/或框图的一个或多个框中指定的功能/动作。
[0102]
附图中的流程图和框图示出了根据本发明的各种实施例的系统、方法和计算机程序产品的可能实现的架构、功能和操作。在这点上,流程图或框图中的每个框可以表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些替代实施方案中,框中所注明的功能可不按图中所注明的次序发生。例如,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能。还将注意,框图和/或流程图图示的每个框以及框图和/或流程图图示中的框的组合可以由执行指定功能或动作或执行专用硬件和计算机指令的组合的专用的基于硬件的系统来实现。
[0103]
已经出于说明的目的呈现了对本公开的各种实施例的描述,但是其并非旨在是穷举的或限于所公开的实施例。在不背离所描述的实施例的范围和精神的情况下,许多修改和变化对于本领域的普通技术人员将是明显的。选择本文所使用的术语来解释实施例的原
理、实际应用或对市场上存在的技术改进,或使本领域的其他普通技术人员能够理解本文所公开的实施例。
再多了解一些

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

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

相关文献