磁盘还原保护方法

文档序号:6375430阅读:324来源:国知局
专利名称:磁盘还原保护方法
技术领域
本发明涉及数据还原保护技术领域,特别涉及一种磁盘还原保护方法,尤其涉及一种基于沙箱的磁盘还原保护方法。
背景技术
保护电脑的方法有很多,最常用的手段是杀毒、GHOST磁盘备份还原等。病毒和木马具有很高的技术含量,不光对电脑系统和文件具有破坏性,而且还具有自身复制和传播性。因此,一旦感染病毒或木马使用杀毒软件很难查杀干净。也许当时检查已经没有病毒存在,但是如果病毒源文件没有破坏,过一段时间病毒通过复制又会出现在系统当中。在查杀的过程中,也由于要删除病毒文件,所以有些系统文件感染病毒后也会被杀毒软件删除一部分文件内容,造成系统运行的不稳定。
现有的保护系统方案存在很多问题首先,杀毒软件存在查杀病毒不干净、查杀时间较长,病毒库需要时时升级,查杀过程中可能会误删操作系统文件等情况的发生;其次,现有的磁盘还原软件或者windows系统自带还原软件,需要手动保存镜像文件Image,如果用户想要还原扇区,还要手动选择目标磁盘和镜像文件Image,才可以进行还原操作。对用户的操作要求比较高。沙箱(SendBoxie)磁盘还原保护,越来越成为保护电脑不受病毒、木马入侵的另一种重要手段。“沙箱”是一种还原驱动软件。所谓的“沙箱”就好像在系统中安装了一个箱子里面装满了沙子。当对系统进行操作,例如安装软件,创建修改文件,创建修改注册表等操作都好像在这个沙箱中进行的操作,虽然当时留下了操作的痕迹,但是当重启电脑时,这些痕迹就会在沙子表面消失。整个系统就像最初开始安装过的一样。这样,就不仅仅保持系统的的干净、快捷、杜绝了系统长期运行垃圾数据占用系统的磁盘空间,而且还保证了一些恶意软件,例如病毒,木马,后门程序对系统的伤害。

发明内容
(一)要解决的技术问题本发明要解决的技术问题是,针对现有技术的不足,提供一种磁盘还原保护方法,采用磁盘级驱动程序,通过对磁盘驱动设备绑定磁盘过滤设备,达到拦截系统磁盘IRP请求的目的。(二)技术方案本发明提供一种磁盘还原保护方法,包括如下步骤SI :将沙箱设置为与所述Windows系统同步启动;S2 :所述沙箱捕捉磁盘加载即插即用请求和电源状态请求,并调用AddDevice函数;S3 :利用AddDevice函数得到磁盘设备对象;S4 :建立磁盘过滤设备绑定到S3中的磁盘设备对象;
S5 :得到S3中的磁盘设备对象的磁盘格式信息;S6 :根据S5中的磁盘格式信息创建临时Map文件并格式化,用于保存磁盘读写操作信息;S7 :开启S3中的磁盘设备对象的磁盘驱动程序的读写线程,用于处理对磁盘的I/O读写请求;S8 :当系统重启时,删除S6中创建的临时Map文件。更好地,在S5中所述的磁盘的格式信息包括格式类型、虚拟簇和逻辑簇的对应关系。·更好地,在S7中,当接到I/O请求的读写请求时,将I/O请求的读写请求插入队列,让该请求排队等待读写线程函数的处理。更好地,在读写线程函数的处理过程中,如果是写磁盘请求,就把请求的内容写到所述临时Map文件的对应的位置中。更好地,在读写线程函数的处理过程中,如果是读文件,从Map文件的对应位置读取内容返给操作系统。更好地,所述沙箱驱动软件采用WDM驱动模式。(三)有益效果本方案采用磁盘级驱动程序。通过对磁盘驱动设备绑定磁盘过滤设备,达到拦截系统磁盘IRP请求的目的。通过对IRP的处理,使得操作系统以为IRP请求写到了真实的磁盘设备上。当系统重启时,删除了上次创建的临时Map文件,达到了丢弃到上次开机全部操作的目的,使得操作系统真实磁盘保持了原始安装后的磁盘状态。


图I为本发明磁盘还原保护方法步骤流程图。
具体实施例方式下面结合附图和实施例,对本发明的具体实施方式
作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。如图I所示,一种磁盘还原保护方法,包括如下步骤SI :将沙箱设直为与所述Windows系统问步启动;S2 :所述沙箱捕捉磁盘加载I即插即用请求和电源状态请求,并调用AddDevice函数;所述沙箱驱动软件采用WDM驱动模式。当U盘插入电脑时,由于windows中Usb总线支持PNP即插即用操作(PLUG AND PLAY),捕捉到了 Usb设备的插入请求。Usb总线驱动进行了硬件辨认,并查找对应驱动、安装,最终达到Usb设备可以工作的目的。接下来对应当前Usb设备的设备类型,VID, PID等信息进行了读取。在读取过程中根据Usb设备类型,进行下一步操作。把Irp请求发送到磁盘驱动,这样磁盘驱动就得到了 U盘插入的通知;S3 :利用 AddDevice 函数得到磁盘设备对象;NTSTATUS DiskPerfAddDevice (INPDRIVER_OBJECT DriverObject, IN PDEVICE OBJECT PhysicalDeviceObject)函数中的PhysicalDeviceObject就代表要插入的物理磁盘设备;S4 :建立磁盘过滤设备绑定到S3中的磁盘设备对象;磁盘过滤设备的作用是当对系统对磁盘进行读写IO等Irp请求时,磁盘过滤设备先于磁盘驱动得到这些请求,就可以对这些Irp请求进行操作,修改;S5 :得到S3中的磁盘设备对象的磁盘格式信息,磁盘的格式信息包括格式类型、虚拟簇和逻辑簇的对应关系得到磁盘格式信息就可以知道卷开始位置,卷大小,每个磁道多少扇区;S6 :根据S5中的磁盘格式信息创建临时Map文件并格式化,用于保存磁盘读写操作信息;S7 :开启S3中的磁盘设备对象的磁盘驱动程序的读写线程,用于处理对磁盘的I/O读写请求;S8 :当系统重启时,删除S6中创建的临时Map文件。在S7中,将I/O请求的读写请求插入队列,让该请求排队等待读写线程函数的处·理。在读写线程函数的处理过程中,如果是写磁盘请求,就把请求的内容写到所述临时Map文件的对应的位置中。在读写线程函数的处理过程中,如果是读文件,从Map文件的对应位置读取内容返给操作系统。以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
权利要求
1.ー种磁盘还原保护方法,其特征在于,包括如下步骤 51:将沙箱设置为与所述Windows系统同步启动;52:所述沙箱捕捉磁盘加载即插即用请求和电源状态请求,并调用AddDevice函数; 53:利用AddDevice函数得到磁盘设备对象; 54:建立磁盘过滤设备绑定到S3中的磁盘设备对象; 55:得到S3中的磁盘设备对象的磁盘格式信息;56:根据S5中的磁盘格式信息创建临时Map文件并格式化,用于保存磁盘读写操作信息; 57:开启S3中的磁盘设备对象的磁盘驱动程序的读写线程,用于处理对磁盘的I/O读写请求; 58:当系统重启时,删除S6中创建的临时Map文件。
2.如权利要求I所述的磁盘还原保护方法,其特征在于,在S5中所述的磁盘的格式信息包括格式类型、虚拟簇和逻辑簇的对应关系。
3.如权利要求I所述的磁盘还原保护方法,其特征在于,在S7中,当接到I/O请求的读写请求时,将I/O请求的读写请求插入队列,让该请求排队等待读写线程函数的处理。
4.如权利要求3所述的磁盘还原保护方法,其特征在干,在读写线程函数的处理过程中,如果是写磁盘请求,就把请求的内容写到所述临时Map文件的对应的位置中。
5.如权利要求3所述的磁盘还原保护方法,其特征在于,在读写线程函数的处理过程中,如果是读文件,从Map文件的对应位置读取内容返给操作系统。
6.如权利要求I所述的磁盘还原保护方法,其特征在于,所述沙箱驱动软件采用WDM驱动模式。
全文摘要
本发明提供一种磁盘还原保护方法,包括如下步骤S1将沙箱设置为与所述Windows系统同步启动;S2所述沙箱捕捉磁盘加载即插即用请求和电源状态请求,并调用AddDevice函数;S3利用AddDevice函数得到磁盘设备对象;S4建立磁盘过滤设备绑定到S3中的磁盘设备对象;S5得到磁盘格式信息;S6根据S5中的磁盘格式信息创建临时Map文件并格式化,用于保存磁盘读写操作信息;S7开启S3中的磁盘设备对象的磁盘驱动程序的读写线程,用于处理对磁盘的I/O读写请求;S8当系统重启时,删除S6中创建的临时Map文件。本发明采用磁盘级驱动程序,通过对磁盘驱动设备绑定磁盘过滤设备,达到拦截系统磁盘IRP请求的目的。
文档编号G06F21/00GK102819711SQ20121029915
公开日2012年12月12日 申请日期2012年8月21日 优先权日2012年8月21日
发明者于晓军, 万雪松, 赵辰清 申请人:北京思创银联科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1