基于文件集中存储及隔离技术的数据防泄漏系统及其方法

文档序号:6547450阅读:410来源:国知局
基于文件集中存储及隔离技术的数据防泄漏系统及其方法
【专利摘要】本发明公开了一种基于文件集中存储及隔离技术的数据防泄漏系统及其方法,包括客户端和服务器端;通过操作系统桌面登录安全桌面,向用户提供操作第二应用程序的入口;安全桌面还包括文件传输模块,用以通过文件传输协议向服务器端的集中存储模块进行文件传输,并通过所述集中存储模块对文件进行集中存储和管理;系统接口解释层,用于截获并识别第二应用程序发起的进程;操作系统层包含进程监控模块,用以监控第二应用程序发起的进程,并对所述的进程进行操作监控,以监视或拦截可能造成文件内容外泄的操作。采用本发明,能够使应用程序对文件的访问在安全的环境中进行,防止应用程序泄露文件内容,从而保障了文件的存储和应用的安全。
【专利说明】基于文件集中存储及隔离技术的数据防泄漏系统及其方法
【技术领域】
[0001]本发明涉及信息安全和数据防护技术,尤其涉及一种基于文件集中存储及隔离技术的数据防泄漏系统及其方法。
【背景技术】
[0002]信息化建设在带来一系列工作便利的同时,也带来了前所未有的安全隐患,依靠传统的网络防护、主机访问和应用层安全防护以及服务器层安全防护的理念已难以应对日益增长的电子数据的安全防护要求,因此数据的防泄漏已经成为信息安全领域中的重要热点问题。
[0003]概括地讲,数据的泄露威胁主要来自三个方面:数据存储、数据传输和数据使用过程中的泄露。目前主流的防泄漏技术主要分为“身份认证”、“访问控制”、“加密”和“审计”四类,这些技术单独或组合的解决了一些典型的数据泄露问题,但却无法在数据的整个生命周期中进行有效的保护。
[0004]随着虚拟化技术的出现和不断发展,借助虚拟化原理建立隔离环境来保护数据,成为了数据防泄漏的一种有效方式。一般解决方案的做法是:建立虚拟桌面,将需保护的文件加密存储于虚拟桌面下的虚拟磁盘映射的原始磁盘中。但这种方式可能造成如下问题:其一,文件依然存储于本地磁盘,存在分散存储难于共享的问题;其二,缺乏全程的进程监控机制,存在通过虚拟桌面中的应用拷贝粘贴文件内容至外部应用的漏洞;其三,对文件的读写操作于本地保留有痕迹,存在较大的泄漏风险。

【发明内容】

[0005]有鉴于此,本发明的主要目的在于提供一种基于文件集中存储及隔离技术的数据防泄漏系统及其方法,利用文件集中存储、应用隔离、进程监控等方式,在服务器端进行文件集中存储管理和在客户端建立安全桌面环境,使得应用程序对文件的访问在完全隔离和安全的环境中进行,防止了安全桌面环境以外的应用程序访问文件,从而保障电子文件的存储和应用的安全。
[0006]为达到上述目的,本发明的技术方案是这样实现的:
一种基于文件集中存储及隔离技术的数据防泄漏系统,包括客户端和服务器端;所述客户端包括安全桌面、系统接口解释层和操作系统层;所述服务器端包括集中存储模块;其中,
所述安全桌面通过操作系统桌面登录,用以向用户提供操作第二应用程序的入口 ;所述安全桌面还包括文件传输模块,用以通过文件传输协议向服务器端的集中存储模块进行文件传输,并通过所述集中存储模块对文件进行集中存储和管理;
所述系统接口解释层,用于截获并识别第二应用程序发起的进程;
所述操作系统层包含进程监控模块,用以监控第二应用程序发起的进程,并对所述的进程进行操作监控,以监视或拦截可能造成文件内容外泄的操作。[0007]其中,该系统还包括硬件层,所述硬件层进一步包括本地加密存储模块和文件同步模块;其中,
本地加密存储模块,用以无网络连接时,通过安全桌面环境调用第二应用程序所需要存储的文件进行加密后保存;
文件同步模块,用于恢复网络连接时,通过文件同步协议将所述加密后的文件从本地加密存储模块传送到服务器端的集中存储模块。
[0008]通过所述操作系统桌面能够对多个第一应用程序进行操作。
[0009]所述多个第一应用程序包含第二应用程序。
[0010]一种基于文件集中存储及隔离技术的数据防泄漏方法,包括如下步骤:
A、启动安全桌面环境进行初始化过程,客户端发起文件操作请求,并判断应用类型和网络连接状况,如果客户端与服务器端存在网络连接,则执行步骤B,否则,执行步骤C ;
B、系统接口解释层接收由安全桌面环境中的应用程序发起的请求后,启动虚拟文件系统驱动,将虚拟网络磁盘挂载至虚拟盘符,并通过文件传输模块对服务器端的集中存储模块的文件进行读写操作;
C、系统接口解释层接收由安全桌面环境中的应用程序发起的请求后,将虚拟本地磁盘挂载至虚拟盘符,针对读文件操作,将存储在本地加密存储模块中的文件解密后,供虚拟应用使用;针对写文件操作,将文件加密后保存在本地加密存储模块中。
[0011]步骤C进一步包括:待客户端与服务器端恢复网络连接时,将加密后保存在本地加密存储模块中的文件利用文件同步模块传送到所述服务器端的集中存储模块中保存。
[0012]本发明所提供的基于文件集中存储及隔离技术的数据防泄漏系统及其方法,具有以下优点:
本发明通过将文件集中存储在服务器端,在客户端建立安全桌面环境,截获并识别应用类型,并根据客户端当前的网络连接情况,采取不同的虚拟磁盘设备挂载方式,能够有效实现数据的防泄露保护。
【专利附图】

【附图说明】
[0013]图1为本发明基于文件集中存储及隔离技术的数据防泄漏系统示意图;
图2为本发明实施例的基于文件集中存储及隔离技术的数据防泄漏方法流程图。
【具体实施方式】
[0014]下面结合附图及本发明的实施例对本发明基于文件集中存储及隔离技术的数据防泄漏系统及其方法作进一步详细的说明。
[0015]图1为本发明基于文件集中存储及隔离技术的数据防泄漏系统示意图。如图1所示,该系统分为客户端和服务器端两部分。客户端的架构从底层到高层依次分为硬件层、操作系统层、系统接口解释层和应用层。其中:
所述应用层进一步分为操作系统桌面和安全桌面。所述安全桌面建立于操作系统桌面之上,用以向用户提供操作内部程序的入口。所述操作系统桌面包括第一应用程序(为外部应用,可以有多个),所述的安全桌面下包括第二应用程序(为内部应用,亦可有多个)和文件传输模块。所述操作系统桌面和安全桌面的区别在于,进入安全桌面打开所述的第二应用程序之前需通过操作系统桌面登录。在操作系统桌面环境下,可对安装有该数据防泄漏系统的计算机进行正常操作,只是在有数据防泄漏的需求时才通过登录安全桌面环境进行操作,并将产生的文件保存在集中存储模块中。所述的第一应用程序包括第二应用程序。
[0016]所述系统接口解释层,用于截获并识别第二应用程序发起的进程。
[0017]所述操作系统层还包括进程监控模块,通过该进程监控模块,可以监控进程,并对安全桌面环境中的进程进行操作监控,以监视或拦截拷贝、粘贴等可能造成文件内容外泄的操作。
[0018]该数据防泄漏系统通过文件传输模块对设置在服务器端的集中存储模块对文件进行集中存储和管理。
[0019]在客户端的硬件层设置本地加密存储模块和文件同步模块,通过所述的安全桌面环境可访问所述本地加密存储模块,以应对客户端与服务器端之间无网络连接的情况。此时,通过安全桌面调用第二应用程序,将需要存储的文件进行加密后存储在所述本地加密存储模块中,待有网络连接时,通过所述文件同步模块将该文件传送到服务器端的集中存储模块中。此外,通过安全桌面调用第二应用程序进行读文件操作时,还可以将存储在本地加密存储模块中的文件解密后,供第二应用程序使用。
[0020]本发明的数据防泄漏系统通过在服务器端设置的所述集中存储模块对文件进行集中存储和管理。通过在客户端设置的安全桌面,在服务器端与安全桌面环境之间通过文件传输模块建立通信链路和进行文件传输。
[0021]这样,服务器端通过集中存储模块,将文件集中存储在服务器端进行统一管理,既可以改变以往客户端分散存储文件的现状,又解决了将文件分散存储带来的文件操作不可控等问题。在保持网络连接的情况下,安全桌面环境中的第二应用程序对文件的操作则直接作用于服务器端集中存储模块中的文件本身。
[0022]此外,在客户端建立的安全桌面环境,除了安全桌面、系统接口解释层、本地加密存储模块之外,还包括虚拟内核资源、虚拟文件系统、虚拟本地磁盘和虚拟网络磁盘等资源。所有对集中存储文件的操作都必须通过安全桌面环境中的第二应用程序发起才有效。
[0023]在安全桌面环境和服务器端之间进行数据通信,需要通过文件通信协议,所述文件通信协议包括文件传输协议和文件同步协议。其中,通过文件传输协议可实现虚拟网络磁盘与服务器端集中存储之间的文件传输;通过文件同步协议,在有网络连接的情况下,能够实现本地加密存储模块与服务器端集中存储模块之间的文件同步传送。
[0024]当客户端发起文件操作请求时,该系统先判断应用类型和网络连接状况,然后执行如下的响应策略:
步骤11:该数据防泄漏系统的系统接口解释层判断应用请求是否由安全桌面环境中的应用程序发起,如果否,则转入步骤12 ;是,则转入步骤13。
[0025]步骤12:按照一般的文件访问流程,启动文件系统驱动、系统磁盘驱动,按照明文读写原始磁盘中的文件。
[0026]步骤13:启动虚拟文件系统驱动,判断客户端当前是否进行了网络连接,如果否,则转入步骤14 ;如果是,则转入步骤15。
[0027]步骤14:将虚拟本地磁盘挂载至虚拟盘符,针对读文件操作,将存储在本地加密区的文件解密后,供虚拟应用使用;针对写文件操作,将文件加密后存储在本地加密存储区。
[0028]步骤15:将虚拟网络磁盘挂载至虚拟盘符,针对文件的读写操作直接作用于存储在服务器端的文件本身。
[0029]通过对安全桌面环境中的所有进程进行监控,可有效防止通过安全桌面环境中的应用将文件拷贝、粘贴至外部环境。
[0030]本发明的突出特点是,通过将文件集中存储在服务器端,在客户端建立安全桌面环境,截获并识别应用类型,并根据客户端当前的网络连接情况,采取不同的虚拟磁盘设备挂载方式,进而实现数据的防泄露保护。
[0031]图2为本发明实施例的基于文件集中存储及隔离技术的数据防泄漏方法流程图。如图2所示,通过安全桌面环境中的第二应用程序访问文件的流程包括如下步骤:
步骤201:用户进入操作系统后,启动安全桌面的用户身份验证程序执行用户登录,验证通过后,启动安全桌面环境的初始化过程,再由客户端发起文件操作请求,并判断应用类型和网络连接状况。
[0032]步骤202:启动程序调用CreateToolhelp32Snapshot遍历当前所有进程,检查运行环境是否正常,非正常环境下直接退出,正常环境则执行下一步。
[0033]步骤203:读取策略配置文件,截获ntdll内核对象创建函数NtOpenMutant、NtOpenSemaphore、NtLoadDriver、NtGetPlugPlayEvent、NtDeviceloControlFile、等 21 个内核函数进行内核资源的虚拟化,包括虚拟注册表,虚拟文件系统,虚拟端口等内核对象资源。
[0034]步骤204:设置进程环境变量,当创建虚拟进程时调用CreateprocessO设置LPVOID IpEnvironment变量添加到进程环境块。
[0035]步骤205:初始化共享内存服务,用于虚拟子进程与服务进行资源调度通信。
[0036]步骤206:启动虚拟磁盘挂载服务,服务依据网络连接状态来虚拟不同类型的磁盘设备。如果网络连接正常,则启动StartService ()网络设备驱动,加载虚拟网络磁盘设备,DefineDosDevice ()设置虚拟磁盘盘符,并建立磁盘与远程服务器的加密连接通道;如果网络连接不正常,则StartService ()启动本地虚拟磁盘驱动,加载虚拟磁盘设备,调用DefineDosDevice ()设置虚拟磁盘盘符,并设置磁盘加密密钥。
[0037]步骤207:完成资源虚拟化后,调用 PsSetCreateProcessNotifyRoutine ()注册回调函数,并启动进程监控服务进程,检查系统变量,注入服务线程获取权限,并准备创建虚拟子系统根进程。
[0038]步骤208:由根进程复制自身的PID和TID句柄,并初始化PEB,通知CSRSS创建进
程自身。
[0039]步骤209:根进程创建结束后,将从虚拟注册表中读取服务配置信息,同时设置进程PEB,创建虚拟桌面主进程,桌面主进程依据读取的服务配置信息依次创建进程树,并根据用户个性配置,生成用户桌面窗口。
[0040]步骤210:操作系统创建应用程序时,系统接口解释层将捕获其系统创建系统通知,并进行TRAP指令替换,并调用GetEnvironmentStrings ()判断其进程环境是否为真实桌面环境,如果为真实桌面环境,则执行正常的系统调用,读写原始的系统数据。
[0041]步骤211:如果进程执行环境为安全桌面环境,则通知虚拟根进程,让子系统建立自己的进程线程管理块。
[0042]当虚拟根进程接收到该消息时候执行下面的处理:
(O复制一份该进程和线程句柄;
(2)设置进程优先级;
(3)分配进程块;
(4)把新进程的异常处理端口绑定到Csrss中,这样当该进程发生异常时,Csrss将会接收到异常消息;
(5)分配和初始化核心线程块;
(6)把线程插入到进程的线程列表中;
(7)把进程插入到核心的线程列表中。
[0043]开始执行初始线程(如果创建时候指定了线程的CREATE_SUSPENDED状态则线程暂时挂起不执行)。到这里安全桌面虚拟运行环境已经建立完毕。
[0044]当用户打开虚拟进程进行文件操作时,安全桌面此时会访问虚拟存储设备。这里以网络虚拟磁盘为例进行说明,网络虚拟磁盘内核驱动模块实现了和虚拟文件系统的对接,内核模块将为所有IRP请求建立任务队列,同时,内核驱动模块实现了一个可以被应用态空间打开的设备,当虚拟文件系统发来文件操作请求之后,它将该请求转化为特定格式,并通过设备传递给应用态空间,应用态空间进程在接收到请求后,根据不同的IRP格式,例如,IRP_CREATE, IRP_READ, IRP_WRITE将其转换成对应REST接口,通过超文本传输协议(HTTP)方式发向服务器,待服务器处理完请求后,将结果返回给内核驱动模块,内核模块再将其还原为IRP需要的格式,并返回给虚拟文件系统。通过此种模式,安全桌面环境内的所有进程操作的文件都直接访问远程服务器,从而达到本地无痕办公的目的。
[0045]此外,在无网络连接的情况下,安全桌面将访问本地虚拟磁盘,待网络环境允许下,将本地数据同步到服务器端,并将DefineDosDevice ()调用磁盘设备切换到网络磁盘设备。
[0046]以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
【权利要求】
1.一种基于文件集中存储及隔离技术的数据防泄漏系统,其特征在于,包括客户端和服务器端;所述客户端包括安全桌面、系统接口解释层和操作系统层;所述服务器端包括集中存储模块;其中, 所述安全桌面通过操作系统桌面登录,用以向用户提供操作第二应用程序的入口 ;所述安全桌面还包括文件传输模块,用以通过文件传输协议向服务器端的集中存储模块进行文件传输,并通过所述集中存储模块对文件进行集中存储和管理; 所述系统接口解释层,用于截获并识别第二应用程序发起的进程; 所述操作系统层包含进程监控模块,用以监控第二应用程序发起的进程,并对所述的进程进行操作监控,以监视或拦截可能造成文件内容外泄的操作。
2.根据权利要求1所述基于文件集中存储及隔离技术的数据防泄漏系统,其特征在于,该系统还包括硬件层,所述硬件层进一步包括本地加密存储模块和文件同步模块;其中, 本地加密存储模块,用以无网络连接时,通过安全桌面环境调用第二应用程序所需要存储的文件进行加密后保存; 文件同步模块,用于恢复网络连接时,通过文件同步协议将所述加密后的文件从本地加密存储模块传送到服务器端的集中存储模块。
3.根据权利要求1所述基于文件集中存储及隔离技术的数据防泄漏系统,其特征在于,通过所述操作系统桌面能够对多个第一应用程序进行操作。
4.根据权利要求1或3所述基于文件集中存储及隔离技术的数据防泄漏系统,其特征在于,所述多个第一应用程序包含第二应用程序。
5.一种基于文件集中存储及隔离技术的数据防泄漏方法,其特征在于,包括如下步骤: A、启动安全桌面环境进行初始化过程,客户端发起文件操作请求,并判断应用类型和网络连接状况,如果客户端与服务器端存在网络连接,则执行步骤B,否则,执行步骤C ; B、系统接口解释层接收由安全桌面环境中的应用程序发起的请求后,启动虚拟文件系统驱动,将虚拟网络磁盘挂载至虚拟盘符,并通过文件传输模块对服务器端的集中存储模块的文件进行读写操作; C、系统接口解释层接收由安全桌面环境中的应用程序发起的请求后,将虚拟本地磁盘挂载至虚拟盘符,针对读文件操作,将存储在本地加密存储模块中的文件解密后,供虚拟应用使用;针对写文件操作,将文件加密后保存在本地加密存储模块中。
6.根据权利要求5所述基于文件集中存储及隔离技术的数据防泄漏方法,其特征在于,步骤C进一步包括:待客户端与服务器端恢复网络连接时,将加密后保存在本地加密存储模块中的文件利用文件同步模块传送到所述服务器端的集中存储模块中保存。
【文档编号】G06F21/53GK104008330SQ201410220823
【公开日】2014年8月27日 申请日期:2014年5月23日 优先权日:2014年5月23日
【发明者】唐威, 廖巍, 景奕昕, 韩敏, 余鹏飞, 罗秀玲 申请人:武汉华工安鼎信息技术有限责任公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1