文件还原方法及装置与流程

文档序号:32307516发布日期:2022-11-23 10:29阅读:68来源:国知局
文件还原方法及装置与流程

1.本发明涉及网络安全技术领域,尤其涉及一种文件还原方法及装置。


背景技术:

2.勒索病毒是一种新型病毒,主要以邮件、程序木马、网页挂马的形式进行传播。勒索病毒性质恶劣、危害极大,一旦感染将给用户带来无法估量的损失。勒索病毒利用各种加密算法对文件进行加密,被感染者一般无法解密,必须拿到解密的私钥才有可能破解。因此,检测勒索行为尤为重要。
3.现有技术中,通常采用文件诱捕的方式来防护勒索病毒,即用伪装的重要文件去引诱勒索病毒对其进行加密,以此来检测勒索行为。
4.但在上述现有技术中,在引诱勒索病毒的过程中,难免会有正常的文件先被勒索病毒加密,从而导致正常文件无法还原,造成严重的损失。


技术实现要素:

5.针对现有技术中的问题,本发明实施例提供一种文件还原方法及装置。
6.具体地,本发明实施例提供了以下技术方案:
7.第一方面,本发明实施例提供了一种文件还原方法,包括:
8.在所述目标文件被修改时,获取目标文件的还原指令;
9.响应于所述还原指令,在备份数据库中查找所述目标文件对应的目标备份信息;所述备份数据库中预先存储有每个文件对应的至少一个备份信息;每个所述备份信息包括对应文件的历史数据;
10.基于所述目标备份信息包括的历史数据对所述目标文件进行还原。
11.进一步地,所述备份信息包括快照信息;所述目标备份信息包括目标快照信息。
12.进一步地,每个所述快照信息包括对应文件的历史数据中每个加密后的分块信息;
13.所述基于所述目标备份信息包括的历史数据对所述目标文件进行还原,包括:
14.对所述目标快照信息包括的每个加密后的分块信息进行解密,得到解密后的每个分块信息;
15.基于解密后的每个分块信息对所述目标文件进行还原。
16.进一步地,每个所述快照信息还包括每个加密后的分块信息对应的存储位置;
17.所述基于解密后的每个分块信息对所述目标文件进行还原,包括:
18.将解密后的每个分块信息写入对应的存储位置。
19.进一步地,所述快照信息还包括操作时间;
20.所述在备份数据库中查找所述目标文件对应的目标备份信息,包括:
21.在所述还原指令中包括快照还原时间时,在所述备份数据库中查找与所述快照还原时间匹配的目标操作时间,并将所述目标操作时间对应的快照信息确定为所述目标快照
信息;
22.在所述还原指令中包括还原整个目标文件时,将在所述备份数据库中查找到的与所述目标文件对应的每个快照信息均确定为所述目标快照信息。
23.进一步地,所述在备份数据库中查找所述目标文件对应的目标备份信息,包括:
24.调用文件还原程序;所述文件还原程序用于执行文件还原操作;
25.在确定所述文件还原程序合法时,通过所述文件还原程序在所述备份数据库中查找所述目标文件对应的目标快照信息。
26.进一步地,在所述获取目标文件的还原指令之前,所述方法还包括:
27.针对每个文件,在检测到文件的写入操作时,获取文件的写入位置;
28.读取所述写入位置中的历史数据,并将待写数据写入所述写入位置;所述待写数据为对所述历史数据进行更改后数据;
29.基于所述历史数据创建所述文件对应的快照信息;
30.基于每个文件对应的快照信息创建所述备份数据库。
31.进一步地,所述基于所述历史数据创建所述文件对应的快照信息,包括:
32.将所述历史数据进行分块后加密,得到每个加密后的分块信息;
33.基于每个加密后的分块信息创建所述文件对应的快照信息。
34.进一步地,在所述获取目标文件的还原指令之前,所述方法还包括:
35.针对每个文件,在检测到文件的删除操作时,基于所述文件的全部内容创建所述文件对应的快照信息;
36.基于每个所述文件对应的快照信息创建所述备份数据库。
37.进一步地,所述基于所述文件的全部内容创建所述文件对应的快照信息,包括:
38.将所述文件的全部内容进行分块后加密,得到每个加密后的分块信息;
39.基于每个加密后的分块信息创建所述文件对应的快照信息。
40.进一步地,所述基于每个加密后的分块信息创建所述文件对应的快照信息,包括:
41.对每个加密后的分块信息进行签名;
42.基于签名后的每个分块信息创建所述文件对应的所述快照信息。
43.进一步地,所述基于签名后的每个分块信息创建所述文件对应的所述快照信息,包括:
44.基于文件的操作时间、签名后的每个分块信息、以及每个分块信息对应的存储位置三者之间的对应关系创建所述文件对应的快照信息。
45.进一步地,在所述基于文件的操作时间、签名后的每个分块信息、以及每个分块信息对应的存储位置三者之间的对应关系创建所述文件对应的快照信息之后,所述方法还包括:
46.通过过滤驱动框架监控所述备份数据库中的每个快照信息。
47.进一步地,所述基于每个所述文件对应的快照信息创建所述备份数据库,包括:
48.针对每个文件,基于文件的操作时间将所述文件对应的每个快照信息组合为文件操作时间链;
49.基于每个文件对应的文件操作时间链创建所述备份数据库。
50.进一步地,在所述基于操作时间将所述文件对应的每个快照信息组合为文件操作
时间链之后,所述方法还包括:
51.获取云端服务器发送的快照维护策略;所述快照维护策略为所述云端服务器基于电子设备占用的当前资源确定的策略;
52.基于所述快照维护策略对所述文件操作时间链的长度进行调整。
53.进一步地,在所述针对每个文件,在检测到文件的写入操作时,获取文件的写入位置之前,或者在针对每个文件,在检测到文件的删除操作时,基于所述文件的全部内容创建所述文件对应的快照信息之前,所述方法还包括:
54.在接收到云端服务器发送的第一备份指令时,将所有文件进行备份;所述第一备份指令为所述云端服务器在确定电子设备占用的当前资源小于预设阈值时确定的指令;
55.在接收到所述云端服务器发送的第二备份指令时,确定每个文件的备份优先级,将优先级最高的文件进行备份;所述第二备份指令为所述云端服务器在确定电子设备占用的当前资源大于或等于预设阈值时确定的指令。
56.第二方面,本发明实施例还提供了一种文件还原装置,包括:
57.第一获取单元,用于在目标文件被修改时,获取目标文件的还原指令;
58.查找单元,用于响应于所述还原指令,在备份数据库中查找所述目标文件对应的目标备份信息;所述备份数据库中预先存储有每个文件对应的至少一个备份信息;每个所述备份信息包括对应文件的历史数据;
59.还原单元,用于基于所述目标备份信息包括的历史数据对所述目标文件进行还原。
60.第三方面,本发明实施例还提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如第一方面所述文件还原方法。
61.第四方面,本发明实施例还提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如第一方面所述文件还原方法。
62.第五方面,本发明实施例还提供了一种计算机程序产品,其上存储有可执行指令,该指令被处理器执行时使处理器实现第一方面所述文件还原方法。
63.本发明实施例提供的文件还原方法及装置,在目标文件被修改时,获取到目标文件的还原指令,在预先建立的备份数据库中查找目标文件对应的目标备份信息,基于目标备份信息中包括的历史数据对目标文件进行还原,实现了目标文件在被修改时,例如,被勒索病毒加密、被损坏、被病毒感染或者被删除时,通过备份信息对目标文件进行还原,避免造成损失。
附图说明
64.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
65.图1是本发明提供的文件还原方法的流程示意图之一;
66.图2是本发明提供的文件还原方法的流程示意图之二;
67.图3是本发明提供的文件还原方法的流程示意图之三;
68.图4是本发明提供的文件还原方法的流程示意图之四;
69.图5是本发明提供的文件还原装置的结构示意图;
70.图6是本发明提供的电子设备的实体结构示意图。
具体实施方式
71.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
72.图1是本发明实施例提供的文件还原方法的流程示意图之一,如图1所示,该文件还原方法包括以下步骤:
73.步骤101、在目标文件被修改时,获取目标文件的还原指令。
74.示例地,电子设备与云端服务器连接,云端服务器在检测到目标文件被修改时,其中,被修改包括被勒索加密、或者目标文件被损坏、或者目标文件被病毒感染、或者目标文件被删除等,有需求对目标文件进行还原时,可以向电子设备发送目标文件的还原指令,使得电子设备获取到目标文件的还原指令。
75.步骤102、响应于所述还原指令,在备份数据库中查找所述目标文件对应的目标备份信息;所述备份数据库中预先存储有每个文件对应的至少一个备份信息;每个所述备份信息包括对应文件的历史数据。
76.其中,文件在每次修改时对应一个备份信息,若文件修改多次,则对应多个备份信息。
77.示例地,在接收到云端服务器下发的目标文件的还原指令时,响应于还原指令,在预先建立的备份数据库中查找与目标文件对应的所有备份信息,然后基于目标文件对应的所有备份信息确定目标备份信息,目标备份信息中包括目标文件之前版本的历史数据。
78.步骤103、基于所述目标备份信息包括的历史数据对所述目标文件进行还原。
79.示例地,在获取到目标文件对应的目标备份信息时,获取目标备份信息中的历史数据,将历史数据作为目标文件的文件内容,从而实现对目标文件的还原。
80.本发明实施例提供的文件还原方法,在目标文件被修改时,获取到目标文件的还原指令,在预先建立的备份数据库中查找目标文件对应的目标备份信息,基于目标备份信息中包括的历史数据对目标文件进行还原,实现了目标文件在被修改时,例如,被勒索病毒加密、损坏、被病毒感染或者被删除时,通过备份信息对目标文件进行还原,避免造成损失。
81.可选地,所述备份信息包括快照信息;所述目标备份信息包括目标快照信息;快照可以分为两种类型,一种类型为写时复制(copy-on-write,cow)快照,通常也称为指针型快照,卷影拷贝服务(volume shadow copy service,vss)即属于这一种,另一种叫做分割镜像快照,也称为镜像型快照。
82.本发明实施例提供的文件还原方法,备份信息可以为快照信息,便于通过快照信息实现文件的在线还原。
83.可选地,图2是本发明实施例提供的文件还原方法的流程示意图之二,如图2所示,
每个所述快照信息包括对应文件的历史数据中每个加密后的分块信息;上述步骤103具体可通过以下步骤实现:
84.步骤1031、对所述目标快照信息包括的每个加密后的分块信息进行解密,得到解密后的每个分块信息。
85.示例地,每个快照信息中包括多个加密后的分块信息,在确定目标文件对应的目标快照信息时,基于与加密算法对应的解密算法将目标快照信息中每个加密后的分块信息进行解密,得到目标快照信息对应的解密后的每个分块信息。
86.步骤1032、基于解密后的每个分块信息对所述目标文件进行还原。
87.其中,每个所述快照信息还包括每个加密后的分块信息对应的存储位置。
88.基于解密后的每个分块信息对目标文件进行还原具体可通过以下方式实现:
89.将解密后的每个分块信息写入对应的存储位置。
90.示例地,在得到目标快照信息对应的解密后的每个分块信息时,获取每个分块信息对应的存储位置,然后将解密后的分块信息写入对应的存储位置,每个解密后的分块信息组合起来即为目标快照信息对应的整个历史数据,从而实现了目标文件的还原。
91.本发明实施例提供的文件还原方法,在快照信息中包括的分块信息为加密后的分块信息,能够防止分块信息被恶意修改。
92.可选地,所述快照信息还包括操作时间;所述操作时间包括写入时间或者删除时间;上述步骤102具体可通过以下方式实现:
93.在所述还原指令中包括快照还原时间时,在所述备份数据库中查找与所述快照还原时间匹配的目标操作时间,并将所述目标操作时间对应的快照信息确定为所述目标快照信息;
94.在所述还原指令中包括还原整个目标文件时,将在所述备份数据库中查找到的与所述目标文件对应的每个快照信息均确定为所述目标快照信息。
95.示例地,在还原指令中包括快照还原时间时,在备份数据库中查找目标文件对应的所有快照信息,然后获取目标文件对应的所有快照信息中的操作时间,在所有操作时间中确定出与快照还原时间匹配的目标操作时间,将包含目标操作时间的快照信息确定为目标快照信息;例如,快照还原时间为还原2小时之前的快照信息,目标文件对应的所有快照信息有快照信息1、快照信息2和快照信息3,其中,快照信息1包括的操作时间为1天前,快照信息2包括的操作时间为10小时前,快照信息3包括的操作时间为40分钟前,则将快照信息3确定为目标快照信息。
96.示例地,在还原指令中包括还原整个目标文件时,此时在备份数据库中查找目标文件对应的所有快照信息,然后将目标文件对应的所有快照信息均确定为目标快照信息。例如,目标文件对应的所有快照信息有快照信息1、快照信息2和快照信息3,则将快照信息1、快照信息2和快照信息3均确定为目标快照信息。
97.本发明实施例提供的文件还原方法,基于还原指令中携带的内容确定对应的目标快照信息,在还原指令中包括还原目标文件时,将目标文件对应的所有快照信息中加密后的每个分块信息进行还原,实现了目标文件的全量无损还原。
98.可选地,上述步骤102具体还可通过以下方式实现:
99.调用文件还原程序;所述文件还原程序用于执行文件还原操作;
100.在确定所述文件还原程序合法时,通过所述文件还原程序在所述备份数据库中查找所述目标文件对应的目标快照信息。
101.示例地,在获取到目标文件的还原指令时,调用文件还原程序,对文件还原程序通过签名算法进行校验,确定文件还原程序的签名是否为预设签名,在确定文件还原程序的签名为预设签名时,说明文件还原程序合法,此时通过文件还原程序执行后续的目标文件的还原步骤;在确定文件还原程序的签名不为预设签名时,说明文件还原程序不合法,此时禁止文件还原程序执行后续的目标文件的还原步骤。
102.本发明实施例提供的文件还原方法,在获取到目标文件的还原指令时,对文件还原程序的合法性进行验证,只有合法的文件还原程序才能够执行对目标文件的还原操作,防止恶意的文件还原程序对目标文件进行还原,提高了文件还原的安全性。
103.可选地,图3是本发明实施例提供的文件还原方法的流程示意图之三,如图3所示,在上述步骤101之前,该文件还原方法还包括以下步骤:
104.步骤104、针对每个文件,在检测到文件的写入操作时,获取文件的写入位置。
105.其中,写入操作包括对文件的修改操作或者对整个文件的更新操作。
106.示例地,电子设备在启动运行文件还原方法的客户端时,加载内核驱动程序,并按照预设要求设置过滤驱动框架minifilter,在过滤驱动框架minifilter中加载与文件写入和/或文件删除相关的监控规则,使得过滤驱动框架minifilter基于加载的监控规则对每个文件进行监控,从而监控每个文件的写入操作和/或删除操作,在检测到文件的写入操作时,通过回调上下文获取文件的写入位置。
107.需要说明的是,文件的写入操作可以是对文件中一部分数据的写入,也可以是对整个文件的写入,本发明对此不作限定。
108.步骤105、读取所述写入位置中的历史数据,并将待写数据写入所述写入位置;所述待写数据为对所述历史数据进行更改后数据。
109.示例地,在获取到文件的写入位置时,通过写时复制技术先读取写入位置中的历史数据,也就是写入位置中当前存储的数据,然后将待写数据写入该写入位置中,相当于通过待写数据对历史数据进行更改。
110.需要说明的是,在文件的写入操作是对文件中一部分数据的写入时,历史数据也是该部分数据对应的历史数据;在文件的写入操作是对整个文件的写入时,历史数据也是整个文件对应的历史数据。
111.步骤106、基于所述历史数据创建所述文件对应的快照信息。
112.具体地,将所述历史数据进行分块后加密,得到每个加密后的分块信息;基于每个加密后的分块信息创建所述文件对应的快照信息。
113.示例地,在获取到历史数据时,将历史数据以预设大小进行分段,即提取分块信息chunk,对每个chunk进行加密,并基于加密后的每个chunk创建对应的快照信息;基于同样的方法,对该文件的每次操作均创建对应的快照信息,最终得到每个文件对应的至少一个快照信息。
114.需要说明的是,本发明对每个chunk的加密方法不做限定,例如,可以为采用rsa加密算法等进行加密。
115.步骤107、基于每个文件对应的快照信息创建所述备份数据库。
116.示例地,在得到每个文件对应的至少一个快照信息时,将每个文件对应的至少一个快照信息存储在一个列表中,得到备份数据库。
117.本发明实施例提供的文件还原方法,通过写时复制技术实现了在对文件对应的历史数据进行更改的同时,对历史数据进行备份,从而降低了电子设备的输入输出接口和内存资源的占用;另外,对历史数据进行分块备份能够降低所有分块信息被恶意修改的概率,且分块信息的长度小于历史数据的长度,能够降低电子设备对历史数据进行加密的复杂度。
118.可选地,图4是本发明实施例提供的文件还原方法的流程示意图之四,如图4所示,在上述步骤101之前,该文件还原方法还包括以下步骤:
119.步骤108、针对每个文件,在检测到文件的删除操作时,基于所述文件的全部内容创建所述文件对应的快照信息。
120.具体地,将所述文件的全部内容进行分块后加密,得到每个加密后的分块信息;基于每个加密后的分块信息创建所述文件对应的快照信息。
121.示例地,过滤驱动框架minifilter基于加载的监控规则对每个文件进行监控,在检测到文件的删除操作时,获取需要删除的文件的全部内容,将文件的全部内容进行分段,即提取分块信息chunk,对每个chunk进行加密,并基于加密后的每个chunk创建对应的快照信息;基于同样的方法,对每个文件的删除操作均创建对应的快照信息,最终得到每个文件对应的快照信息。
122.步骤109、基于每个所述文件对应的快照信息创建所述备份数据库。
123.示例地,在得到每个文件对应的快照信息时,将每个文件对应的快照信息存储在一个列表中,得到备份数据库。
124.本发明实施例提供的文件还原方法,对检测到的需要删除的文件进行备份,便于后续对删除的文件进行还原;另外,对文件的全部内容进行分块备份能够降低所有分块信息被恶意修改的概率,且分块信息的长度小于文件的全部内容的长度,能够降低电子设备对文件的全部内容进行加密的复杂度。
125.需要说明的是,在执行上述步骤104或者步骤108之前,该文件还原方法还包括以下步骤:
126.在接收到云端服务器发送的第一备份指令时,对所有文件进行备份;所述第一备份指令为所述云端服务器在确定电子设备占用的当前资源小于预设阈值时确定的指令;
127.在接收到所述云端服务器发送的第二备份指令时,获取每个文件的备份优先级,对备份优先级最高的文件进行备份;所述第二备份指令为所述云端服务器在确定电子设备占用的当前资源大于或等于预设阈值时确定的指令。
128.示例地,本发明支持自动化云快照管理,电子设备在启动运行文件还原方法的客户端时,向云端服务器上报电子设备占用的当前资源,云端服务器对电子设备占用的当前资源进行评估,在确定电子设备占用的当前资源大于预设阈值时,说明电子设备当前可用的资源较少,此时向电子设备发送第二备份指令,使得电子设备在接收到第二备份指令时,获取预先配置的每个文件的备份优先级,将备份优先级最高的每个文件进行备份,也就是基于上述写时复制技术对写入位置中的历史数据进行备份存储,或者在检测到文件删除操作时,对需要删除的文件进行备份存储,实现了电子设备在当前可用的资源较少时,只对备
份优先级较高的重要文档或者数据库文件进行备份,以确保电子设备的性能不受影响;在确定电子设备占用的当前资源小于预设阈值时,说明电子设备当前可用的资源较多,此时向电子设备发送第一备份指令,使得电子设备在接收到第一备份指令时,将存储的所有文件进行备份,也就是全量备份。
129.本发明实施例提供的文件还原方法,在接收到云端服务器发送的第一备份指令时,进行全量备份;在接收到云端服务器发送的第二备份指令时,只对备份优先级较高的重要文档或者数据库文件进行备份,以确保电子设备的性能不受影响。
130.可选地,上述基于每个加密后的分块信息创建所述文件对应的快照信息,具体可通过以下方式实现:
131.对每个加密后的分块信息进行签名;基于签名后的每个分块信息创建所述文件对应的所述快照信息。
132.示例地,在对每个分块信息进行加密后,还需要对每个加密后的分块信息进行签名,具体可以采用sha-256等算法进行签名,签名用于对加密后的分块信息进行二次加密,进一步提高每个加密后的分块信息的安全性,最后基于签名后的每个分块信息创建文件对应的快照信息。
133.本发明实施例提供的文件还原方法,对每个加密后的分块信息进行签名,进一步防止分块信息被恶意修改,提高文件的安全性。
134.进一步地,基于文件的操作时间、签名后的每个分块信息、以及每个分块信息对应的存储位置三者之间的对应关系创建所述文件对应的快照信息。
135.示例地,在每个快照信息中均包括文件的操作时间、签名后的每个分块信息的具体内容、每个分块信息对应的存储位置这三者之间的对应关系,便于电子设备在还原目标文件时,基于快照信息中的操作时间确定需要还原的目标快照信息,并基于每个分块信息对应的存储位置实现对应分块信息的还原,也就实现了目标文件的还原。
136.进一步地,通过过滤驱动框架监控所述备份数据库中的每个快照信息。
137.示例地,在创建好备份数据库时,可以通过minifilter机制对备份数据库中存储的每个快照信息进行读写监视,阻止未经授权的程序(例如勒索病毒)对其进行修改、删除、或者添加操作等,以防止快照信息被恶意篡改,进一步提高快照信息的安全性,并以此发现潜在的勒索病毒。
138.进一步地,上述基于每个所述文件对应的快照信息创建所述备份数据库,具体可通过以下方式实现:
139.针对每个文件,基于文件的操作时间将所述文件对应的每个快照信息组合为文件操作时间链;
140.基于每个文件对应的文件操作时间链创建所述备份数据库。
141.示例地,针对每个文件,在创建好每个文件对应的所有快照信息时,可以基于每个快照信息包含的文件的操作时间将该文件对应的每个快照信息进行组合,得到文件操作时间链,然后将每个文件对应的文件操作时间链存储在对应位置,得到备份数据库。
142.本发明实施例提供的文件还原方法,可以基于每个快照信息包含的文件的操作时间将该文件对应的每个快照信息进行组合,得到文件操作时间链,便于对每个文件的快照信息进行管理。
143.进一步地,获取云端服务器发送的快照维护策略;所述快照维护策略为所述云端服务器基于电子设备占用的当前资源确定的策略;
144.基于所述快照维护策略对所述文件操作时间链的长度进行调整。
145.示例地,文件操作时间链的长度可以由云端服务器进行控制,在创建好备份数据库时,基于保密和隐私要求,备份数据库中的每个快照信息不上传至云端服务器,云端服务器可以基于电子设备占用的当前资源确定快照维护策略,并将快照维护策略发送至电子设备,便于电子设备基于快照维护策略对每个文件的文件操作时间链的长度进行调整;例如,云端服务器在确定电子设备占用的当前资源大于第一预设值时,确定快照维护策略为删除第一预设时间前对应的快照信息;在确定电子设备占用的当前资源大于第二预设值时,确定快照维护策略为删除第二预设时间前对应的快照信息;其中,第一预设值小于第二预设值,第一预设时间小于第二预设时间。
146.需要说明的是,可以是备份数据库中每个文件对应一个快照维护策略,也可以是备份数据库中所有文件对应一个快照维护策略,本发明对此不作限定。
147.本发明实施例提供的文件还原方法,可以基于云端服务器下发的快照维护策略对备份数据库中每个文件的文件操作时间链的长度进行调整,以确保电子设备在能够还原文件的同时确保性能不受影响。
148.图5是本发明提供的文件还原装置的结构示意图,如图5所示,该文件还原装置包括第一获取单元501、查找单元502和还原单元503;其中:
149.第一获取单元501,用于在目标文件被修改时,获取目标文件的还原指令;
150.查找单元502,用于响应于所述还原指令,在备份数据库中查找所述目标文件对应的目标备份信息;所述备份数据库中预先存储有每个文件对应的至少一个备份信息;每个所述备份信息包括对应文件的历史数据;
151.还原单元503,用于基于所述目标备份信息包括的历史数据对所述目标文件进行还原。
152.本发明实施例提供的文件还原装置,在目标文件被修改时,获取到目标文件的还原指令,在预先建立的备份数据库中查找目标文件对应的目标备份信息,基于目标备份信息中包括的历史数据对目标文件进行还原,实现了目标文件在被修改时,例如被勒索病毒加密、被损坏、被病毒感染或者被删除时,通过备份信息对目标文件进行还原,避免造成损失。
153.基于上述任一实施例,所述备份信息包括快照信息;所述目标备份信息包括目标快照信息。
154.基于上述任一实施例,每个所述快照信息包括对应文件的历史数据中每个加密后的分块信息;所述还原单元503具体用于:
155.对所述目标快照信息包括的每个加密后的分块信息进行解密,得到解密后的每个分块信息;
156.基于解密后的每个分块信息对所述目标文件进行还原。
157.基于上述任一实施例,每个所述快照信息还包括每个加密后的分块信息对应的存储位置;所述还原单元503具体用于:
158.将解密后的每个分块信息写入对应的存储位置。
159.基于上述任一实施例,所述快照信息还包括操作时间;所述操作时间包括写入时间或者删除时间;所述查找单元502具体用于:
160.在所述还原指令中包括快照还原时间时,在所述备份数据库中查找与所述快照还原时间匹配的目标操作时间,并将所述目标操作时间对应的快照信息确定为所述目标快照信息;
161.在所述还原指令中包括还原整个目标文件时,将在所述备份数据库中查找到的与所述目标文件对应的每个快照信息均确定为所述目标快照信息。
162.基于上述任一实施例,所述查找单元502具体用于:
163.调用文件还原程序;所述文件还原程序用于执行文件还原操作;
164.在确定所述文件还原程序合法时,通过所述文件还原程序在所述备份数据库中查找所述目标文件对应的目标快照信息。
165.基于上述任一实施例,所述装置还包括:
166.第二获取单元,用于针对每个文件,在检测到文件的写入操作时,获取文件的写入位置;
167.写入单元,用于读取所述写入位置中的历史数据,并将待写数据写入所述写入位置;所述待写数据为对所述历史数据进行更改后数据;
168.第一创建单元,用于基于所述历史数据创建所述文件对应的快照信息;
169.第二创建单元,用于基于每个文件对应的快照信息创建所述备份数据库。
170.基于上述任一实施例,所述第一创建单元具体用于:
171.将所述历史数据进行分块后加密,得到每个加密后的分块信息;
172.基于每个加密后的分块信息创建所述文件对应的快照信息。
173.基于上述任一实施例,所述装置还包括:
174.第三创建单元,用于针对每个文件,在检测到文件的删除操作时,基于所述文件的全部内容创建所述文件对应的快照信息;
175.第四创建单元,用于基于每个所述文件对应的快照信息创建所述备份数据库。
176.基于上述任一实施例,所述第三创建单元具体用于:
177.将所述文件的全部内容进行分块后加密,得到每个加密后的分块信息;
178.基于每个加密后的分块信息创建所述文件对应的快照信息。
179.基于上述任一实施例,所述第二创建单元或者所述第四创建单元具体用于:
180.对每个加密后的分块信息进行签名;
181.基于签名后的每个分块信息创建所述文件对应的所述快照信息。
182.基于上述任一实施例,所述第二创建单元或者所述第四创建单元具体用于:
183.基于文件的操作时间、签名后的每个分块信息、以及每个分块信息对应的存储位置三者之间的对应关系创建所述文件对应的快照信息。
184.基于上述任一实施例,所述装置还包括:
185.监控单元,用于通过过滤驱动框架监控所述备份数据库中的每个快照信息。
186.基于上述任一实施例,所述第二创建单元或者所述第四创建单元具体用于:
187.针对每个文件,基于文件的操作时间将所述文件对应的每个快照信息组合为文件操作时间链;
188.基于每个文件对应的文件操作时间链创建所述备份数据库。
189.基于上述任一实施例,所述装置还包括:
190.第三获取单元,用于获取云端服务器发送的快照维护策略;所述快照维护策略为所述云端服务器基于电子设备占用的当前资源确定的策略;
191.调整单元,用于基于所述快照维护策略对所述文件操作时间链的长度进行调整。
192.基于上述任一实施例,所述装置还包括:
193.第一备份单元,用于在接收到云端服务器发送的第一备份指令时,对所有文件进行备份;所述第一备份指令为所述云端服务器在确定电子设备占用的当前资源小于预设阈值时确定的指令;
194.第二备份单元,用于在接收到所述云端服务器发送的第二备份指令时,获取每个文件的备份优先级,对备份优先级最高的文件进行备份;所述第二备份指令为所述云端服务器在确定电子设备占用的当前资源大于或等于预设阈值时确定的指令。
195.图6是本发明提供的电子设备的实体结构示意图,如图6所示,该电子设备可以包括:处理器(processor)610、通信接口(communications interface)620、存储器(memory)630和通信总线640,其中,处理器610,通信接口620,存储器630通过通信总线640完成相互间的通信。处理器610可以调用存储器630中的逻辑指令,以执行如下方法:
196.在所述目标文件被修改时,获取目标文件的还原指令;
197.响应于所述还原指令,在备份数据库中查找所述目标文件对应的目标备份信息;所述备份数据库中预先存储有每个文件对应的至少一个备份信息;每个所述备份信息包括对应文件的历史数据;
198.基于所述目标备份信息包括的历史数据对所述目标文件进行还原。
199.此外,上述的存储器630中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
200.另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的文件还原方法,该方法包括:在所述目标文件被修改时,获取目标文件的还原指令;
201.响应于所述还原指令,在备份数据库中查找所述目标文件对应的目标备份信息;所述备份数据库中预先存储有每个文件对应的至少一个备份信息;每个所述备份信息包括对应文件的历史数据;
202.基于所述目标备份信息包括的历史数据对所述目标文件进行还原。
203.又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的文件还原方法,该方法包
括:在所述目标文件被修改时,获取目标文件的还原指令;
204.响应于所述还原指令,在备份数据库中查找所述目标文件对应的目标备份信息;所述备份数据库中预先存储有每个文件对应的至少一个备份信息;每个所述备份信息包括对应文件的历史数据;
205.基于所述目标备份信息包括的历史数据对所述目标文件进行还原。
206.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
207.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
208.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1