一种实现终端无痕的方法及装置的制作方法

文档序号:6376372阅读:153来源:国知局
专利名称:一种实现终端无痕的方法及装置的制作方法
技术领域
本发明涉及计算机技术领域,更具体地说,涉及一种实现终端无痕的方法及装置。
背景技术
随着信息技术的发展,越来越多的企事业单位以电子文档形式办公。电子文档已成为企事业单位重要资源尤其是机密、秘密文件的保持形式。为了有效防止机密、秘密等重要文件泄密,不少企事业单位在管理上对机密、秘密等重要文件采取集中管控或存储的形式。然而,办公过程中经常需要用到机密、秘密等重要文件。因此,在文档集中管控或存储的系统中,需要在机密、秘密等重要文件使用过程中实现终端无痕功能。目前,与终端无痕有关联的技术有沙箱技术。在沙箱技术中实现终端无痕功能的主要实现方法是将与受保护的程序相关的生成和修改文件重定向到指定的区域中,该指定的区域可以是文件夹形式或文件形式,同时将写入到该指定的区域数据进行加密处理。 在沙箱技术中,对于重定向后的数据以文件夹或文件的形式存在本地磁盘中,用户可以看到,且可以通过复制的方式将文件夹或文件形式的数据带走,非法用户还可以通过暴力破解等手段获取文件或文件夹内的数据;此外,重定向数据的删除方式主要是通过程序主动去删除重定向的数据内容,一般是在沙箱工具退出或受保护的程序退出时才将重定向的数据删除,在重定向数据的删除时可能因为数据文件被占用或锁定而无法成功删除,而在本地磁盘中的文件删除不够彻底时,可以通过一些数据还原方法,将相关数据还原。可见,现有技术无法真正实现终端无痕。

发明内容
有鉴于此,本发明实施例提供一种实现终端无痕的方法及装置,通过内存映射磁盘实现对文件的访问,达到终端无痕的目的。本发明实施例提供一种实现终端无痕的方法,包括接收对服务器中存放的相应文件的访问请求;将所述文件下载至本地内存映射磁盘,并进行加密处理;在所述内存映射磁盘中对所述文件执行访问操作;其中,所述内存映射磁盘由本地内存空间中虚拟出的文件系统设备挂载获得。优选的,所述在所述内存映射磁盘中对所述文件执行访问操作,包括判断所述访问操作的进程是否为可信进程;如果是,则允许所述进程执行所述访问操作;否则,禁止所述进程执行所述访问操作。优选的,所述判断所述访问操作的进程是否为可信进程,包括获取所述访问操作的进程标识符;根据所述进程标识符获取所述进程的可执行文件;
判断所述可执行文件的文件特征值是否存在于预置的可信进程列表,如果是,则所述进程为可信进程;否则,所述进程为不可信进程。优选的,如果是可信进程执行所述访问操作,则还包括将所述可信进程访问操作过程中创建的文件以及产生的临时文件进行加密,并存储在所述内存映射磁盘中。优选的,所述访问包括读取所述文件、向所述文件或向所述内存映射磁盘写入数 据。一种实现终端无痕的装置,包括请求接收模块,用于接收对服务器中存放的相应文件的访问请求;下载模块,用于将所述文件下载至本地内存映射磁盘,并进行加密处理;访问模块,用于在所述内存映射磁盘中对所述文件执行访问操作;其中,所述内存映射磁盘由本地内存空间中虚拟出的文件系统设备挂载获得。优选的,所述访问控制模块包括判断子模块,用于判断所述访问操作的进程是否为可信进程;如果是,则触发第一结果子模块;否则,触发第二结果子模块;所述第一结果子模块,用于允许所述进程执行所述访问操作;所述第二结果子模块,用于禁止所述进程执行所述访问操作。优选的,所述判断子模块,包括第一获取单元,用于获取所述访问操作的进程标识符;第二获取单元,用于根据所述进程标识符获取所述进程的可执行文件;判断单元,用于判断所述可执行文件的文件特征值是否存在于预置的可信进程列表,如果是,则触发第一单元;否则,触发第二单元;所述第一单元,用于确定所述进程为可信进程;所述第二单元,用于所述进程为不可信进程。优选的,还包括存储模块,用于将所述可信进程访问操作过程中创建的文件以及产生的临时文件进行加密,并存储在所述内存映射磁盘中。优选的,所述访问包括读取所述文件、向所述文件或向所述内存映射磁盘写入数据。本发明实施例中,在本地内存中分配一定的空间作为内存映射磁盘的空间,当需要对服务器中存放的文件执行访问时,首先将相应文件下载至内存映射磁盘中,然后在内存映射磁盘中执行对该文件的访问操作,本地磁盘中不会产生任何中间数据文件,对于内存映射磁盘来说,操作系统关机或重启系统时,内存映射磁盘会随着内存空间的复位而消失,因此,内存映射磁盘中存放的文件数据也会随着内存映射磁盘的消失而消失,从而实现终端无痕。


为了更清楚地说明本发明实施例的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图I为本发明实施例提供的一种实现终端无痕的方法流程示意图;图2为本发明实施例提供的挂载内存映射磁盘的示意图;图3为本发明实施例提供的在所述内存映射磁盘中对所述文件执行访问操作的实现流程示意图;图4为图3中步骤301的实现流程示意图;图5为本发明实施例提供的一种实现终端无痕的装置结构示意图; 图6为本发明实施例提供的另一种实现终端无痕的装置结构示意图。
具体实施例方式下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。本发明实施例中,终端无痕就是在客户端打开服务器上的文件过程中,在客户端上不能留下该文件的全部或部分文件内容。通常,为了达到终端无痕功能,需要满足以下两
占-
^ \\\ ·I、服务器文件下载到本地缓存时无痕;2、打开文件的进程产生的临时数据无痕。首先,对本发明提供的一种实现终端无痕的方法进行说明,如图I所示,所述方法包括步骤101、接收对服务器中存放的相应文件的访问请求;该步骤中,访问请求可以是通过IE (Internet Explorer,英特网浏览器)发起,访问请求指向文档集中存储系统所在的服务器;也可以是由连接文档集中存储系统所在服务器的客户端发起;步骤102、将所述文件下载至本地内存映射磁盘,并进行加密处理;该步骤中,当确定被访问的文件之后,并不直接对该文件执行具体的访问操作,而是将该文件下载至本地内存映射磁盘;步骤103、在所述内存映射磁盘中对所述文件执行访问操作;其中,所述内存映射磁盘由本地内存空间中虚拟出的文件系统设备挂载获得。本发明实施例中,利用内存断电或系统关闭状态下内存立刻自动复位的特性,实现打开网络文件终端无痕的功能。首先,内存在分页和无分页的状态下,在技术上是不能直接用于存储文件,并且不能被应用程序识别,因此,需要使用“内存虚拟磁盘技术”在内存中分配一定的空间虚拟成文件系统卷设备,并将虚拟的文件系统挂载为内存映射磁盘。如图2所示,为挂载内存映射磁盘的示意图。具体地,从内存中分配一定的空间作为内存映射磁盘的空间,将空间进行初始化并构建虚拟的文件系统,创建磁盘的符号连接,将虚拟的文件系统挂载为内存映射磁盘。具体实施时,可以在系统开机时由内存映射磁盘驱动程序根据注册表中的策略预先分配内存映射磁盘的空间大小,可选方式包括内存映射磁盘占内存空间的百分比或设置具体大小,并在客户端程序启动时,告知需要进行挂载的本地磁盘磁符。本发明实施例中,在本地内存中分配一定的空间作为内存映射磁盘的空间,当需要对服务器中存放的文件执行访问时,首先将相应文件下载至内存映射磁盘中,然后在内存映射磁盘中执行对该文件的访问操作,本地磁盘中不会产生任何中间数据文件,对于内存映射磁盘来说,操作系统关机或重启系统时,内存映射磁盘会随着内存空间的复位而消失,因此,内存映射磁盘中存放的文件数据也会随着内存映射磁盘的消失而全部消失,从而实现终端无痕。将网络文件存放在内存映射磁盘中,避免在本地磁盘中缓存文件,可以解决本地磁盘缓存网络数据文件产生的泄密情况。此外,从内存映射磁盘读写数据的效率等于从内存中读写数据,从内存读写数据的效率远远高于从本地磁盘中读写数据的效率,因此,通过内存映射磁盘方式来缓存文件能够大大提高文件的读写速度。为了便于对本发明技术方案的理解,下面通过具体的实例对整体方案进行详细的·介绍说明。本发明实施例中,如图3所示,在所述内存映射磁盘中对所述文件执行访问操作的实现方式可以包括以下步骤步骤301、判断所述访问操作的进程是否为可信进程;如果是,则继续步骤302 ;否贝丨J,继续步骤303 ;步骤302、允许所述进程执行所述访问操作;步骤303、禁止所述进程执行所述访问操作。该实施例中,由于内存映射磁盘在“我的电脑”下对用户是可见的,用户可以直接对内存映射磁盘内的数据文件进行访问。为了提高访问的安全性,上述实施例中,需要通过内核级文件访问控制方式实现对内存映射磁盘的访问控制,此处,内核指操作系统的驱动层。具体为对具体的访问进程进行授权,可信的进程可以读取数据,不可信的进程不能读取数据,以达到非法程序或黑客在系统开机或关机、甚至取得硬盘的情况下,都无法从内存映射磁盘中窃取数据的目的。上述实施例中,如图4所示,步骤301中所述判断所述访问操作的进程是否为可信进程,可以包括以下步骤步骤401、获取所述访问操作的进程标识符;步骤402、根据所述进程标识符获取所述进程的可执行文件;步骤403、判断所述可执行文件的文件特征值是否存在于预置的可信进程列表,如果是,则继续步骤404 ;否则,继续步骤405 ;步骤404、确定所述进程为可信进程;步骤405、确定所述进程为不可信进程。该实施例说明了如何进行是否可信进程的判断方式。具体地,在内存映射磁盘中的数据访问控制使用内核级控制,当进程触发读盘中数据请求时,即内核中文件操作FastI/O (Fast Input/Output,快速输入 / 输出)请求和 IRP (I/ORequest Package,输入输出请求包),根据该请求的进程的PID (进程标识符),获取进程的应用程序可执行文件,判断可执行文件的程序文件特征值,即可执行文件的HASH值,如果文件特征值是在可信进程列表中,表示该程序是可信的,处理方式是对该程序的读数据给予放行并且对读的数据进行解密;如果文件特征值不在可信进程列表中,表示该程序是不可信的,处理方式是禁止该程序读取内存映射磁盘中的数据。其中,可信进程列表可以预先设置在服务器中,由应用程序从服务器上获取并传给内存映射磁盘的驱动程序。在本发明的另一个优选实施例中,当可信进程对内存映射磁盘执行访问操作时,将所述可信进程访问操作过程中创建的文件以及产生的临时文件进行加密,并存储在所述内存映射磁盘中。该实施例中,对于可信进程打开内存映射磁盘中的文件后,需要对可信进程进行防泄密控制,防止通过可信进程另存文件到内存映射磁盘外,这里使用“进程重定向技术”达到该功能,将进程创建的文件或向已存在的文件写入追加数据产生的临时文件等转存至内存映射磁盘中,从而在本地磁盘中不产生任何中间数据文件。具体实施时,可以在内核中的文件系统卷设备上绑定文件过滤驱动设备,利用该文件过滤驱动设备对文件系统卷设备的数据访问进行判断和监控。需要说明的是,该文件 过滤驱动设备是内存映射磁盘相应开发的驱动程序中的一个驱动设备,其作用是对物理磁盘文件实施拦截和过滤。此外,在内核中进行文件过滤,如果进程的PID是可信进程的PID并且文件操作是创建文件和向文件写入数据,则将该文件操作转到内存映射磁盘中。在将文件操作转到内存映射磁盘时,判断原文件如果存在,需要先将原文件复制到内存映射磁盘中的对应位置。这是由于,为了实现无痕不能直接向本地磁盘中已存在的文件写入数据,而是需要把本地磁盘中的文件复制到内存映射磁盘中,再向内存映射磁盘中的该文件中写入数据。需要说明的是,上述实施例中,写入到内存映射磁盘中的文件自动成为加密文件,写入的文件包括从服务器下载至内存映射磁盘中的文件,以及向内存映射磁盘中文件写入的数据文件。具体加密方式可以为在内存映射磁盘驱动中处理文件操作分发函数时,在write分发函数处理中将相应内容进行加密。而用户通过某些方式打开内存映射磁盘中的文件,可以对文件进行查看、编辑以及保存等,对用户来说是透明的。这是由于,本实施例中,可信进程在读内存映射磁盘中的文件时,相应文件可以自动解密,而对文件执行写操作时生成的文件数据可以自动加密。可以理解的是,该加解密方式实质为一种透明加解密技术。可信进程在内存映射磁盘中读写文件时使用透明加解密技术对文件进行加解密,不会影响用户的使用习惯。相应上述实现终端无痕的方法实施例,本发明还提供了一种实现终端无痕的装置,如图5所示,所述装置具体可以包括请求接收模块501,用于接收对服务器中存放的相应文件的访问请求;下载模块502,用于将所述文件下载至本地内存映射磁盘,并进行加密处理;访问模块503,用于在所述内存映射磁盘中对所述文件执行访问操作;其中,所述内存映射磁盘由本地内存空间中虚拟出的文件系统设备挂载获得。所述访问包括读取所述文件、向所述文件或向所述内存映射磁盘写入数据。本发明实施例中,在本地内存中分配一定的空间作为内存映射磁盘的空间,当需要对服务器中存放的文件执行访问时,首先将相应文件下载至内存映射磁盘中,然后在内存映射磁盘中执行对该文件的访问操作,本地磁盘中不会产生任何中间数据文件,对于内存映射磁盘来说,操作系统关机或重启系统时,内存映射磁盘会随着内存空间的复位而消失,因此,内存映射磁盘中存放的文件数据也会随着内存映射磁盘的消失而全部消失,从而实现终端无痕。具体实施时,所述访问控制模块可以包括判断子模块,用于判断所述访问操作的进程是否为可信进程;如果是,则触发第一结果子模块;否则,触发第二结果子模块;所述第一结果子模块,用于允许所述进程执行所述访问操作;所述第二结果子模块,用于禁止所述进程执行所述访问操作。该实施例中,由于内存映射磁盘在“我的电脑”下对用户是可见的,用户可以直接对内存映射磁盘内的数据文件进行访问。为了提高访问的安全性,上述实施例访问控制模 块中,需要通过内核级文件访问控制方式实现对内存映射磁盘的访问控制,此处,内核指操作系统的驱动层。具体为对具体的访问进程进行授权,可信的进程可以读取数据,不可信的进程不能读取数据,以达到非法程序或黑客在系统开机或关机、甚至取得硬盘的情况下,都无法从内存映射磁盘中窃取数据的目的。进一步,所述判断子模块,可以包括第一获取单元,用于获取所述访问操作的进程标识符;第二获取单元,用于根据所述进程标识符获取所述进程的可执行文件;判断单元,用于判断所述可执行文件的文件特征值是否存在于预置的可信进程列表,如果是,则触发第一单元;否则,触发第二单元;所述第一单元,用于确定所述进程为可信进程;所述第二单元,用于所述进程为不可信进程。可见,该实施例中,在内存映射磁盘中的数据访问控制使用内核级控制,当进程触发读盘中数据请求时,所述判断子模块根据该请求的进程的PID,获取进程的应用程序可执行文件,判断可执行文件的程序文件特征值,即可执行文件的HASH值,如果文件特征值是在可信进程列表中,表示该程序是可信的,处理方式是对该程序的读数据给予放行并且对读的数据进行解密;如果文件特征值不在可信进程列表中,表示该程序是不可信的,处理方式是禁止该程序读取内存映射磁盘中的数据。其中,可信进程列表可以预先设置在服务器中,由应用程序从服务器上获取并传给内存映射磁盘的驱动程序。在本发明的另一个优选实施例中,如图6所示,上述实现终端无痕的装置还可以包括存储模块504,用于将所述可信进程访问操作过程中创建的文件以及产生的临时文件进行加密,并存储在所述内存映射磁盘中。该实施例中,对于可信进程打开内存映射磁盘中的文件后,需要对可信进程进行防泄密控制,防止通过可信进程另存文件到内存映射磁盘外,这里使用“进程重定向技术”达到该功能,通过该存储模块,将进程创建的文件或向已存在的文件写入追加数据产生的临时文件等转存至内存映射磁盘中,从而在本地磁盘中不产生任何中间数据文件。对于装置实施例而言,由于其基本相应于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory, ROM)或随机存储记忆体(Random AccessMemory, RAM)等。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明实施例的精神或范围的情况下,在其它实施例中实现。因此,本发明实施例将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。·
权利要求
1.一种实现终端无痕的方法,其特征在于,包括 接收对服务器中存放的相应文件的访问请求; 将所述文件下载至本地内存映射磁盘,并进行加密处理; 在所述内存映射磁盘中对所述文件执行访问操作; 其中,所述内存映射磁盘由本地内存空间中虚拟出的文件系统设备挂载获得。
2.根据权利要求I所述的实现终端无痕的方法,其特征在于,所述在所述内存映射磁盘中对所述文件执行访问操作,包括 判断所述访问操作的进程是否为可信进程; 如果是,则允许所述进程执行所述访问操作;否则,禁止所述进程执行所述访问操作。
3.根据权利要求2所述的实现终端无痕的方法,其特征在于,所述判断所述访问操作的进程是否为可信进程,包括 获取所述访问操作的进程标识符; 根据所述进程标识符获取所述进程的可执行文件; 判断所述可执行文件的文件特征值是否存在于预置的可信进程列表,如果是,则所述进程为可信进程;否则,所述进程为不可信进程。
4.根据权利要求2所述的实现终端无痕的方法,其特征在于,如果是可信进程执行所述访问操作,则还包括 将所述可信进程访问操作过程中创建的文件以及产生的临时文件进行加密,并存储在所述内存映射磁盘中。
5.根据权利要求I所述的实现终端无痕的方法,其特征在于,所述访问包括读取所述文件、向所述文件或向所述内存映射磁盘写入数据。
6.一种实现终端无痕的装置,其特征在于,包括 请求接收模块,用于接收对服务器中存放的相应文件的访问请求; 下载模块,用于将所述文件下载至本地内存映射磁盘,并进行加密处理; 访问模块,用于在所述内存映射磁盘中对所述文件执行访问操作; 其中,所述内存映射磁盘由本地内存空间中虚拟出的文件系统设备挂载获得。
7.根据权利要求6所述的实现终端无痕的装置,其特征在于,所述访问控制模块包括 判断子模块,用于判断所述访问操作的进程是否为可信进程;如果是,则触发第一结果子模块;否则,触发第二结果子模块; 所述第一结果子模块,用于允许所述进程执行所述访问操作; 所述第二结果子模块,用于禁止所述进程执行所述访问操作。
8.根据权利要求7所述的实现终端无痕的装置,其特征在于,所述判断子模块,包括 第一获取单元,用于获取所述访问操作的进程标识符; 第二获取单元,用于根据所述进程标识符获取所述进程的可执行文件; 判断单元,用于判断所述可执行文件的文件特征值是否存在于预置的可信进程列表,如果是,则触发第一单元;否则,触发第二单元; 所述第一单元,用于确定所述进程为可信进程; 所述第二单元,用于所述进程为不可信进程。
9.根据权利要求7所述的实现终端无痕的装置,其特征在于,还包括存储模块,用于将所述可信进程访问操作过程中创建的文件以及产生的临时文件进行加密,并存储在所述内存映射磁盘中。
10.根据权利要求6所述的实现终端无痕的装置,其特征在于,所述访问包括读取所述文件、向所述文件或向所述内存映射磁盘写入数据。
全文摘要
本发明公开了一种实现终端无痕的方法及装置。其中,所述方法包括接收对服务器中存放的相应文件的访问请求;将所述文件下载至本地内存映射磁盘,并进行加密处理;在所述内存映射磁盘中对所述文件执行访问操作;其中,所述内存映射磁盘由本地内存空间中虚拟出的文件系统设备挂载获得。本发明通过内存映射磁盘实现对文件的访问,达到终端无痕的目的。
文档编号G06F21/53GK102902914SQ201210324840
公开日2013年1月30日 申请日期2012年9月5日 优先权日2012年9月5日
发明者詹双全, 许元进, 郑则建, 朱磊 申请人:福建伊时代信息科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1