本发明大体上涉及数据存储装置,且更特定来说,本发明涉及数据存储装置的安全快照管理。
背景技术:
数据存储装置可实施于非易失性存储器(例如快闪驱动器、固态驱动器等等)、磁性存储媒体(例如硬盘驱动器、备份磁带)或数个其它数字存储媒体中的任一者中。为确保存储于可重写数据存储装置上的数据的完整性,若干各种备份技术可用于保持数据以防意外数据遗失(例如,经由意外盖写或删除)。一种数据备份的方法利用“快照”,其为其中通过将快照中的数据的任何更新或改变存储到存储装置中的不同物理位置(例如,经由“写入重定向”)来保持数据状态或快照以防进一步改变的方法。
尽管快照方法有效地保护数据免于意外数据遗失,但恶意数据修改或破坏带来额外挑战。举例来说,越来越多数字犯罪涉及“勒索软件”攻击,其中未授权用户或过程可依使得恢复在无解密密钥的情况下无法实行或甚至不可行的方式加密数据存储装置中的数据。接着,勒索软件攻击者可通过要求支付解密密钥来“勒索”经加密数据,如果未依攻击者选择的数量、格式及时间帧支付,那么攻击者会频繁地威胁经加密数据。
随着勒索软件攻击复杂性不断增大,常规快照管理方法所提供的保护降级。由于常规数据存储装置附接到的主机装置能够管理数据存储装置上的快照(例如,通过用经更新数据盖写快照或删除快照),所以针对用于加密的全部备份数据的复杂勒索软件(包含附接到勒索软件攻击所针对的主机的数据存储装置中的快照)可通过利用主机修改快照的能力来突破常规快照管理所提供的保护。
除勒索软件的越来越多的威胁之外,对常规快照管理技术无法应对的数据完整性的额外威胁还包含原本可利用主机装置盖写或删除所附接数据存储装置中的快照的能力的各种其它恶意数据删除威胁(例如,通过病毒、蠕虫或其类似者)及恶意数据修改威胁(例如,通过未授权用户破坏金融或法律纪录)。因此,需要改进技术来保护所存储数据的完整性。
附图说明
图1是说明包含根据本技术的实施例的数据存储装置的计算机系统的示意性框图。
图2是说明管理根据本技术的实施例的数据存储装置的方法的流程图。
具体实施方式
在以下描述中,论述若干具体细节以提供本技术的实施例的彻底且可行描述。然而,相关领域的技术人员将意识到可在无一或多个具体细节的情况下实践本发明。在其它例子中,未详细展示或描述通常与半导体装置相关联的众所周知结构或操作以避免混淆本技术的方面。一般来说,应了解,除本文中所揭示的此类特定实施例之外的各种其它装置、系统及方法可在本技术的范围内。
如上文所论述,数据存储装置管理的一些方法涉及将数据状态的快照保存于数据存储装置中以保持数据以防经由写入重定向(row)的后续变化。如果常规数据存储装置所附接(例如,通过通信路径直接或间接地)的主机被勒索软件攻击或其它恶意活动损坏,那么快照可经修改(例如加密)或删除。因此,根据本技术的数据存储装置及运算系统的若干实施例可提供安全快照管理以防止快照的未授权变化或删除。
本技术的若干实施例涉及包括存储媒体的数据存储装置,存储媒体包含经配置以存储用户数据的第一子集及经配置以存储快照数据的第二子集。装置可包含控制器,其经配置以(i)从可操作地耦合到数据存储装置的主机接收配置第二子集的命令,(ii)验证命令的真实性,及(iii)如果命令被验证为真实,那么执行命令。
图1示意性地说明包含根据本技术的实施例的数据存储装置100的运算系统101。数据存储装置100包含数据存储媒体110及控制器120。控制器120可为微控制器、专用逻辑电路系统(例如现场可编程门阵列(fpga)、专用集成电路(asic)等等)或其它合适处理器。控制器120可包含经配置以执行存储于存储器中的指令的处理器122。在所说明的实例中,控制器120的存储器包含经配置以存储快照数据存储装置100的操作(包含管理数据存储媒体110及处置经由系统总线130的数据存储装置100与主机装置140之间的通信)的各种过程、逻辑流及例程的嵌入式存储器124。在一些实施例中,嵌入式存储器124可包含存储(例如)存储器指针、所找取数据等等的存储器寄存器。嵌入式存储器124还可包含用于存储微码的只读存储器(rom)。
数据存储装置通过系统总线130与主机装置140通信。在一些实施例中,主机装置140与数据存储装置100的控制器120之间可通过串行接口(例如串行附接scsi(sas)、串行at附接(sata)接口、外围组件互连快速(pcie)或其它合适接口(例如并行接口))通信。主机装置140可向控制器120发送各种请求(以(例如)分组或分组流的形式)。请求可包含写入、擦除、传回信息及/或执行特定操作的命令。
数据存储媒体110可利用适合于可重写地存储数字数据(包含固态格式(例如例如sram、dram等的易失性存储器、例如“nand”快闪存储器的非易失性存储器、“nor”快闪存储器、相变存储器、铁阻存储器、磁阻存储器等等)及机械格式(例如磁性硬盘驱动器、磁带等等))的数个数据存储媒体中的任一者。数据存储媒体110包含经配置以存储用户数据的用户数据子集112及经配置以存储快照数据的快照数据子集114。用户数据子集112及快照数据子集114可为用于细分数据存储媒体110的数个子集中的任一者,包含分区、子分区、安装点、lba范围、扇区、单独存储器裸片等等。
根据本技术的实施例,控制器120经配置以实施写入重定向方案以将快照116(例如数据存储装置100的数据状态)及更新118存储到快照数据子集114内的快照116的数据。快照数据子集114可经过度布建以提供足够空间来跟踪对快照116的数据的更新118。过度布建的水平可为从0%(例如,快照116的变化无法存储于快照数据子集114中的水平)到100%(例如,提供足够空间以使得快照116的数据的每一位可被改变的水平)或甚至更高(例如,提供足够空间以使得额外数据可附加到快照116同时跟踪对快照116的更新118的水平)的任何位置。
举例来说,在本技术的实施例中,快照116需要(例如)500mb的存储空间。数据存储装置100可经配置以维持快照116的不变复本,使得对快照116的数据的更新118(例如添加、修改、删除等等)是存储于快照数据子集114内不同于用于存储快照116的位置处。控制器120可维持跟踪快照116及更新118的位置的表,使得快照数据上的主机读取可传回经更新数据,同时如果需要可保留“回滚(rollback)”到数据的早前版本的能力。
尽管过度布建的较大水平可提供空间以跟踪对快照116的数据的更多更新118,但其还减少用户数据子集112的相对大小。因此,快照数据子集114的过度布建因数可经选择以实现数据跟踪及成本/容量的平衡。当耗尽用于跟踪更新118的快照数据子集114的容量时,控制器120可用数据的较新版本来盖写快照116(例如,将更新118及快照116合并到新的快照中,释放更新118所消耗的快照数据子集114的空间)。由于此功能是可被恶意码或恶意参与者利用以修改或盖写(例如,使用加密版本)快照116的数据的功能,所以本发明的实施例提供用于防止此操作及寻求在无授权的情况下配置快照数据子集的其它操作的方式。
与常规数据存储装置(其中从主机装置接收的全部命令被视为值得信赖的)相比,本实施例的数据存储装置100可经配置以要求认证寻求配置快照数据子集114的主机命令(例如,寻求盖写或删除快照116、将更新118与快照116合并、复位快照数据子集114的大小等等的命令)。通过在采取会无法挽回地改变快照116的任何动作之前要求来自经连接主机装置140的认证(例如,与仅记录呈快照数据子集114的更新118的形式的快照116的变化的命令相比),可防止快照116免于意外及恶意变化及/或删除。
控制器120可经配置以按数个方式中的任一者验证用于配置快照数据子集114的命令的真实性。举例来说,在本技术的实施例中,控制器120可在数据存储装置100的初始设置期间与所连接主机装置140交换密码编译密钥(例如,在数据存储装置100最先连接到主机装置140时,或在重新格式化数据存储装置100之后等等)。在交换密码编译密钥之后,控制器120可通过确定是否已用预定密码编译密钥加签名来验证配置快照数据子集114的命令的真实性且在真实性的确定之后仅执行命令。以此方式,所连接主机装置140可通过将密码编译密钥固定于安全密钥存储库中及通过仅产生且密码编译信号命令配置来自安全码执行飞地(例如
在另一实施例中,控制器120可经配置以使用基于密码的认证来验证配置快照数据子集114的命令的真实性。举例来说,在本技术的一个实施例中,控制器120可在数据存储装置100的初始设置期间将认证密码提供到所连接主机装置140或由所连接主机装置140指派(例如,在数据存储装置100最先连接到主机装置时,或在重新格式化数据存储装置100之后等等)。控制器120随后可通过征求密码或通过确定密码是否与命令一起提供来验证配置快照数据子集114的命令的真实性,且在真实性的确定之后仅执行命令。此外,所属领域的技术人员将容易了解,可采用若干不同认证方法中的任一者以允许数据存储装置100验证配置快照数据子集114的命令的真实性超过基于密钥或基于密码的认证。
根据本技术的方面,控制器120可经配置以在快照数据子集114中的可用空间下降到低于预定阈值时向主机装置140提供通知。就此来说,通知可为无需来自主机装置140的响应的异步通知。通知可警告主机装置140或其用户应产生用于配置快照数据子集114的经认证命令(例如,以增大快照数据子集的大小,以将更新118与快照116合并等等)。在另一实施例中,控制器120可经配置以在快照数据子集114中的可用空间下降到低于预定阈值时“停顿”(例如,无法写入数据)。在另一实施例中,当快照数据子集114中的可用空间下降到低于预定阈值时,控制器120可经配置以调节与主机装置140的通信(例如,减慢i/o)。调节可结合到主机装置140的通知来完成,借此调节可保留在适当位置中直到主机装置140采取动作来增大快照数据子集114中的可用空间(例如,通过增大快照数据子集114的大小,通过使更新118传送到快照数据116,或通过清理部分或全部更新118)。
尽管在上述实施例中将数据存储装置100说明为包含单个快照数据子集114,但在本技术的其它实施例中,多个快照数据子集可提供于单个数据存储装置中(例如,以确保具有相同或不同水平的过度提供的不同快照)。此外,尽管将上述实施例的快照数据子集114说明为包含单个快照116,但在本技术的实施例中,多个快照可存储于单个快照数据子集中(例如,以在不同时间跟踪多个数据状态,其中任何者可由所连接主机装置恢复)。此外,尽管已参考通过写入重导向实施方案保护以防变化的快照数据来描述上述实施例,但本技术可应用于确保数据免于意外变化的其它数据备份方法(例如,只读分区、只读文件等等),使得用于修改经确保数据的来自所连接主机装置的命令在执行之前由数据存储装置用于验证真实性。
图2是说明管理根据本技术的实施例的数据存储装置的方法的流程图。方法包含:提供用于主机装置与数据存储装置之间的认证通信的认证机构(框202);及初始化数据存储装置中的安全快照数据子集(框204)。方法进一步包含:接收配置快照数据子集的命令(框206)及验证命令的真实性(框208)。如果命令仅确定为真实的(确定210),那么执行命令(框214);如果不真实,那么忽略命令(框212)。
根据上文,应了解,已为了说明而在本文中描述本发明的特定实施例,但可在不背离本发明的范围的情况下作出各种修改。因此,除了受所附权利要求书限制外,本发明不受限制。
技术特征:
1.一种数据存储装置,其包括:
存储媒体,其包含经配置以存储用户数据的第一子集及经配置以存储快照数据的第二子集;
控制器,其经配置以:
从可操作地耦合到所述数据存储装置的主机接收配置所述第二子集的命令;
验证所述命令的真实性;及
响应于所述命令的所述真实性的所述验证而执行所述命令。
2.根据权利要求1所述的数据存储装置,其中所述控制器经配置以通过验证所述命令已使用预定密码编译密钥加签名来验证所述命令的所述真实性。
3.根据权利要求2所述的数据存储装置,其中所述预定密码编译密钥是由所述数据存储装置在所述数据存储装置的初始配置期间产生且提供到所述主机装置。
4.根据权利要求3所述的数据存储装置,其中所述预定密码编译密钥是通过加密通信信道提供到所述主机装置。
5.根据权利要求1所述的数据存储装置,其中所述控制器经配置以在所述命令未被验证为真实时忽略所述命令。
6.根据权利要求1所述的数据存储装置,其中所述控制器经进一步配置以:
从所述主机接收用经修改数据更新所述第二子集中的快照数据的指令,及
在不盖写所述快照数据的情况下将所述经修改数据存储于所述第二子集中。
7.根据权利要求1所述的数据存储装置,其中配置所述第二子集的所述命令是盖写存储于所述第二子集中的快照数据的命令。
8.根据权利要求1所述的数据存储装置,其中配置所述第二子集的所述命令是修改所述第二子集的容量的命令。
9.根据权利要求1所述的数据存储装置,其中配置所述第二子集的所述命令是删除存储于所述第二子集中的快照数据的命令。
10.根据权利要求1所述的数据存储装置,其中所述控制器经进一步配置以在所述快照数据已消耗所述第二子集的容量的预定部分时对所述主机产生通知。
11.根据权利要求1所述的数据存储装置,其中所述第二子集是所述存储媒体的分区、安装点或地址范围中的一者。
12.根据权利要求1所述的数据存储装置,其中所述存储媒体是快闪存储器。
13.一种计算系统,其包括:
主机装置,
存储媒体,其可操作地耦合到所述主机装置,其中所述存储媒体包含经配置以存储用户数据的第一子集及经配置以存储快照数据的第二子集;及
存储控制器,其经配置以:
接收配置所述第二子集的命令;
验证所述命令的真实性;及
响应于所述命令的所述真实性的所述验证而执行所述命令。
14.根据权利要求13所述的计算系统,其中所述控制器经配置以通过验证所述命令已使用预定密码编译密钥加签名来验证所述命令的所述真实性。
15.根据权利要求14所述的计算系统,其中所述预定密码编译密钥是由所述数据存储控制器产生且通过加密通信信道提供到所述主机装置。
16.根据权利要求15所述的计算系统,其中所述主机经配置以使用所述预定密码编译密钥来对所述命令加签名。
17.根据权利要求13所述的计算系统,其中所述存储控制器经配置以在所述命令未被验证为真实时忽略所述命令。
18.根据权利要求13所述的计算系统,其中所述存储控制器经进一步配置以:
接收用经修改数据更新所述第二子集中的快照数据的指令,及
在不盖写所述快照数据的情况下将所述经修改数据存储于所述第二子集中。
19.根据权利要求13所述的计算系统,其中配置所述第二子集的所述命令是盖写存储于所述第二子集中的快照数据的命令。
20.根据权利要求13所述的计算系统,其中配置所述第二子集的所述命令是修改所述第二子集的容量的命令。
21.根据权利要求13所述的计算系统,其中配置所述第二子集的所述命令是删除存储于所述第二子集中的快照数据的命令。
22.根据权利要求13所述的计算系统,其中所述存储控制器经进一步配置以在所述快照数据已消耗所述第二子集的容量的预定部分时对所述主机产生通知。
23.根据权利要求13所述的计算系统,其中所述第二子集是所述存储媒体的分区、安装点或地址范围中的一者。
24.根据权利要求13所述的计算系统,其中所述存储媒体是快闪存储器。
25.一种管理包含存储媒体的数据存储装置的方法,所述存储媒体具有经配置以存储用户数据的第一子集及经配置以存储快照数据的第二子集,所述方法包括:
从可操作地耦合到所述数据存储装置的主机接收配置所述第二子集的命令;
验证所述命令的真实性;及
响应于所述命令的所述真实性的所述验证而执行所述命令。
26.根据权利要求25所述的方法,其进一步包括:
从所述主机接收用经修改数据更新所述第二子集中的快照数据的指令,及
在不盖写所述快照数据的情况下将所述经修改数据存储于所述第二子集中。
技术总结
本发明揭示一种数据存储装置。所述数据存储装置包含具有经配置以存储用户数据的第一子集及经配置以存储快照数据的第二子集的存储媒体。所述数据存储装置进一步包含控制器,其经配置以(i)从可操作地耦合到所述数据存储装置的主机接收配置所述第二子集的命令,(ii)验证所述命令的真实性,及(iii)响应于所述命令的所述真实性的所述验证而执行所述命令。
技术研发人员:R·W·斯特朗;M·B·丹尼尔森
受保护的技术使用者:美光科技公司
技术研发日:.06.21
技术公布日:.02.21
如果觉得《数据存储装置的安全快照管理的制作方法》对你有帮助,请点赞、收藏,并留下你的观点哦!