首页 / 专利库 / 电脑零配件 / 计算机系统 / 软件 / 系统软件 / 操作系统 / 一种用户态监视加密磁盘的方法

一种用户态监视加密磁盘的方法

阅读:251发布:2022-10-01

专利汇可以提供一种用户态监视加密磁盘的方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种用户态监视加密磁盘的方法,在监控、审计环境和加密存储设备之间嵌入一个 软件 层,在需要监控、审计时,该软件层提供一个看起来完全透明的明文存储设备,通过对用户态 进程 注入,截获用户态和 内核 态的加密、解密交互数据,而后通过解密流程重放的方式对已加密数据进行解密获取明文,实现过滤和监控,通过对现有审计 监控系统 ,提供一种软件实现方案,可以审计、监控加密存储设备上的文件,本发明的软件能够非常方便的嵌入现有的监控、审计环境中,不必对现有的监控、审计软件、 操作系统 做更改,极大的降低了部署成本;本发明能够对多种加密软件做到良好的普适性、兼容性和 稳定性 ,不会对系统稳定性造成影响,也不用频繁升级和 修改 。,下面是一种用户态监视加密磁盘的方法专利的具体信息内容。

1.一种用户态监视加密磁盘的方法,其特征在于:在监控、审计环境和加密存储设备之间嵌入一个软件层,在需要监控、审计时,该软件层提供一个看起来完全透明的明文存储设备,通过对用户态进程注入,截获用户态和内核态的加密、解密交互数据,而后通过解密流程重放的方式对已加密数据进行解密获取明文,实现过滤和监控;
所述“通过对用户态进程注入,截获用户态和内核态的加密、解密交互数据,而后通过解密流程重放的方式对已加密数据进行解密获取明文,实现过滤和监控”具体包括以下步骤:
1)实现一个用户态的进程监视模,所述进程监视模块监视系统中所有进程的启动,可以根据特定的特征匹配来识别当前启动的进程是否是需要进行监视的目标进程;
2)实现一个用户态的动态链接库注入模块,所述动态链接库注入模块可以注入到指定目标进程中;
3)以动态链接库的形式,实现一个进程监控模块,在进程中搜寻到用户态与内核态交互接口,并通过热补丁的方式,将此接口的数据流重定向到进程监控模块中去;
具体是指,动态链接库注入模块根据步骤2),将加密交互内容截获模块注入存储加密程序进程的内存空间;加密交互内容截获模块在存储加密程序进程的内存空间中搜寻到该进程与存储加密驱动程序交互的函数接口,保存该函数接口的内存地址fAddr,并将该函数的入口改为一条跳转语句,跳转到加密交互内容截获模块中来;
4)在存储加密过程中,用户态进程与内核进行数据交互时,记录这些交互数据流以及文件位置信息到加密交互内容截获模块;
具体是指,记录交互数据,用户的加解密操作和驱动交互的内容,都重定向到了加密交互内容截获模块,加密交互内容截获模块对用户的加解密操作和驱动交互的内容进行数据记录;加密交互内容截获模块记录完毕后,根据之前保存的fAddr值,跳转回原来的存储加密驱动程序交互的函数接口,将控制权交还原存储加密程序;
5)当监控、审计进程需要访问的文件位于加密的存储介质中时,软件从加密交互内容截获模块中找到解密流程使用的数据流,并使用该数据流和目标软件的驱动进行交互,重放解密流程,实现存储数据的解密;
所述“用户态监视加密磁盘的方法”包括以下模块:
进程监视模块,监视系统内所有的进程启动,并根据软件特征码识别启动的进程是否是一个存储加密软件进程;
动态链接库注入模块,将加密交互内容截获模块注入到待监视进程中;
加密交互内容截获模块,记录解密信息;
加密设备重载模块,对已加密的存储数据重新加载并提供明文访问接口;
所述“进程注入”,将某个动态连接库置于进程空间运行,并且使用热补丁的方式替换原进程与驱动通讯的接口函数为自身某个监视函数,以达到监视用户态进程与驱动的加密会话过程;
所述“热补丁的方式”,在进程运行过程中,不需要重新启动进程,在内存中对进程代码进行修改并且实时生效的进程代码修改方法;
所述“加密设备重载”,利用加密交互内容截获模块已记录的信息,对解密流程进行“重放”而获取明文的过程。

说明书全文

一种用户态监视加密磁盘的方法

技术领域

[0001] 本发明涉及信息安全、数据审计、远程协助等技术领域,具体的说,是一种用户态监视加密磁盘的方法。

背景技术

[0002] 随着网络技术逐渐普及,以及信息泄漏对生活造成的威胁。人们逐渐开始在生活和工作中使用加密存储的方式来保护自己的数据不受到非授权的访问。而由此带来的问题是,在一个权限受控的网络中,难以对加密的存储数据进行监控。敏感数据脱离监控而导致外泄的事件时有发生,而绝大部分泄漏事件难以防范和取证。
[0003] 例如,机密文件A在未加密时具有某些敏感字符,在内网的传输过程中,能够被一般的内容监控系统识别和记录。但是一旦有人使用了加密工具对存储文件A的设备进行了加密,则除非其本人,其他人无从读取该存储设备,更无从识别该文件是否机密文件,或者其是否包含机密信息。
[0004] 虽然存储设备加密在信息保密性上具有优势,但是在对于防泄密要求较高的环境中,存在诸多矛盾,比如审计困难,取证困难。

发明内容

[0005] 本发明的目的在于提供一种用户态监视加密磁盘的方法,通过对现有审计监控系统,提供一种有效、平滑的软件实现方案,使得其可以审计、监控加密存储设备上的文件,用于实现本发明的软件能够非常方便的嵌入现有的监控、审计环境中,而不必对现有的监控、审计软件、操作系统做更改,极大的降低了部署成本;同时,本发明能够对多种加密软件做到良好的普适性、兼容性和稳定性,不会对系统稳定性造成影响,也不用频繁升级和修改
[0006] 本发明通过下述技术方案实现:一种用户态监视加密磁盘的方法,在监控、审计环境和加密存储设备之间嵌入一个软件层,在需要监控、审计时,该软件层提供一个看起来完全透明的明文存储设备,通过对用户态进程注入,截获用户态和内核态的加密、解密交互数据,而后通过解密流程重放的方式对已加密数据进行解密获取明文,实现过滤和监控,当有人使用加密软件对存储设备进行加密时,及时给予记录以供事后审计;当监控和审计进程试图访问的文件位于被加密的存储介质中时,加密存储介质可以实时加载并解密。
[0007] 进一步的,为更好的实现本发明,所述“通过对用户态进程注入,截获用户态和内核态的加密、解密交互数据,而后通过解密流程重放的方式对已加密数据进行解密获取明文,实现过滤和监控”具体包括以下步骤:
[0008] 1)实现一个用户态的进程监视模,所述进程监视模块监视系统中所有进程的启动,可以根据特定的特征匹配来识别当前启动的进程是否是需要进行监视的目标进程;
[0009] 2)实现一个用户态的动态链接库注入模块,所述动态链接库注入模块可以注入到指定目标进程中;
[0010] 3)以动态链接库的形式,实现一个进程监控模块,在进程中搜寻到用户态与内核态交互接口,并通过热补丁的方式,将此接口的数据流重定向到进程监控模块中去;
[0011] 4)在存储加密过程中,用户态进程与内核进行数据交互时,记录这些交互数据流以及文件位置信息到加密交互内容截获模块;
[0012] 5)当监控、审计进程需要访问的文件位于加密的存储介质中时,软件从加密交互内容截获模块中找到解密流程使用的数据流,并使用该数据流和目标软件的驱动进行交互,重放解密流程,实现存储数据的解密。
[0013] 进一步的,为更好的实现本发明,所述“用户态监视加密磁盘的方法”包括以下模块:
[0014] 进程监视模块,监视系统内所有的进程启动,并根据软件特征码识别启动的进程是否是一个存储加密软件进程;
[0015] 动态链接库注入模块,将加密交互内容截获模块注入到待监视进程中;
[0016] 加密交互内容截获模块,记录解密信息;
[0017] 加密设备重载模块,对已加密的存储数据重新加载并提供明文访问接口。
[0018] 进一步的,为更好的实现本发明,所述“进程注入”,将某个动态连接库置于进程空间运行,并且使用热补丁的方式替换原进程与驱动通讯的接口函数为自身某个监视函数,以达到监视用户态进程与驱动的加密会话过程;
[0019] 所述“热补丁的方式”,在进程运行过程中,不需要重新启动进程,在内存中对进程代码进行修改并且实时生效的进程代码修改方法;
[0020] 所述“加密设备重载”,利用加密交互内容截获模块已记录的信息,对解密流程进行“重放”而获取明文的过程。
[0021] 本发明与现有技术相比,具有以下优点及有益效果:
[0022] (1)本发明通过对现有审计监控系统,提供一种有效、平滑的软件实现方案,使得其可以审计、监控加密存储设备上的文件,用于实现本发明的软件能够非常方便的嵌入现有的监控、审计环境中,而不必对现有的监控、审计软件、操作系统做更改,极大的降低了部署成本;同时,本发明能够对多种加密软件做到良好的普适性、兼容性和稳定性,不会对系统稳定性造成影响,也不用频繁升级和修改。
[0023] (2)本发明的应用具有透明性、稳定性及便捷性优势。附图说明
[0024] 图1是监控模块注入前本软件和存储加密软件工作原理图。
[0025] 图2是本软件的监控模块注入存储加密软件工作流程图
[0026] 图3是监控模块注入后本软件和存储加密软件工作原理图。
[0027] 图4是重载模块加载加密后的存储数据工作原理图。

具体实施方式

[0028] 本发明涉及用户态进程注入、进程启动监控、内存代码补丁等多方面内容,是计算机技术在上述领域的一种综合应用。在本发明的实现过程中,会涉及到多个软件功能模块的应用。申请人认为,如在仔细阅读申请文件、准确理解本发明的实现原理和发明目的以后,在结合现有公知技术的情况下,本领域技术人员完全可以运用其掌握的软件编程技能实现本发明。
[0029] 下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。
[0030] 实施例1:
[0031] 本发明提出了一种用户态监视加密磁盘的方法,结合图1、图2、图3、图4所示,在监控、审计环境和加密存储设备之间嵌入一个软件层,在需要监控、审计时,该软件层提供一个看起来完全透明的明文存储设备,通过对用户态进程注入,截获用户态和内核态的加密、解密交互数据,而后通过解密流程重放的方式对已加密数据进行解密获取明文,实现过滤和监控,当有人使用加密软件对存储设备进行加密时,及时给予记录以供事后审计;当监控和审计进程试图访问的文件位于被加密的存储介质中时,加密存储介质可以实时加载并解密,通过对现有审计监控系统,提供一种有效、平滑的软件实现方案,使得其可以审计、监控加密存储设备上的文件,用于实现本发明的软件能够非常方便的嵌入现有的监控、审计环境中,而不必对现有的监控、审计软件、操作系统做更改,极大的降低了部署成本;同时,本发明能够对多种加密软件做到良好的普适性、兼容性和稳定性,不会对系统稳定性造成影响,也不用频繁升级和修改。
[0032] 实施例2:
[0033] 本实施例是在上述实施例的基础上进一步优化,进一步的,为更好的实现本发明,结合图1、图2、图3、图4所示,所述“通过对用户态进程注入,截获用户态和内核态的加密、解密交互数据,而后通过解密流程重放的方式对已加密数据进行解密获取明文,实现过滤和监控”具体包括以下步骤:
[0034] 1)实现一个用户态的进程监视模块,所述进程监视模块监视系统中所有进程的启动,可以根据特定的特征匹配来识别当前启动的进程是否是需要进行监视的目标进程;
[0035] 2)实现一个用户态的动态链接库注入模块,所述动态链接库注入模块可以注入到指定目标进程中;
[0036] 3)以动态链接库的形式,实现一个进程监控模块,在进程中搜寻到用户态与内核态交互接口,并通过热补丁的方式,将此接口的数据流重定向到进程监控模块中去;
[0037] 4)在存储加密过程中,用户态进程与内核进行数据交互时,记录这些交互数据流以及文件位置信息到加密交互内容截获模块;
[0038] 5)当监控、审计进程需要访问的文件位于加密的存储介质中时,软件从加密交互内容截获模块中找到解密流程使用的数据流,并使用该数据流和目标软件的驱动进行交互,重放解密流程,实现存储数据的解密。
[0039] 所述目标软件,指实现存储器数据加密的软件,典型地包括但不限于truectrypt,beecrypt等。
[0040] 所述加密存储设备(加密存储器或加密存储介质),是指使用了加密软件对数据进行加密处理的存储设备。它一般实现为一个数据块和配套的存储设备过滤驱动,数据块的载体可以是一个文件或者真实的物理磁盘。数据块的外在表现为:在操作系统中形成一个独立的分区(partition)或者卷(volume),一旦通过用户身份认证成功,它就会挂载(mount)于操作系统中,像正常磁盘分区一样使用,其上的加密解密操作对用户的文件操作不可见;但是未经身份认证,则数据块(存储数据的文件或者存储设备)不可直接读取。
[0041] 所述数据流重定向,是指修改目标进程的代码执行流程,将执行流程引导至注入目标进程的动态链接库中的方式,在注入的动态链接库中,代码实现了首先记录数据流,再将数据流返还给原执行流程。
[0042] 所述用户态与内核态交互接口,是指内核态驱动程序向用户态进程暴露的调用接口 ,以函数的形式存在,依系统不同而不同;典型地,windows系统内是ntdll.ZwDeviceControl,Linux系统内是ioctl。
[0043] 实施例3:
[0044] 本实施例是在上述任一实施例的基础上进一步优化,进一步的,为更好的实现本发明,结合图1、图2、图3、图4所示,所述“用户态监视加密磁盘的方法”包括以下模块:
[0045] 进程监视模块,监视系统内所有的进程启动,并根据软件特征码识别启动的进程是否是一个存储加密软件进程;所述软件特征码包括但不限于多个要素:软件可执行文件的Hash值,可执行文件的导入表,可执行文件的数字签名,可执行文件的文件名等。
[0046] 动态链接库注入模块,将加密交互内容截获模块注入到待监视进程中;
[0047] 加密交互内容截获模块,记录解密信息;所述解密信息,是指用户态进程与内核加密驱动在加密过程中的交互信息,包括加密方式,密钥类型和长度,密钥数据。
[0048] 加密设备重载模块,对已加密的存储数据重新加载并提供明文访问接口。
[0049] 实施例4:
[0050] 本实施例是在上述实施例的基础上进一步优化,进一步的,为更好的实现本发明,结合图1、图2、图3、图4所示,所述“进程注入”,将某个动态连接库置于进程空间运行,并且使用热补丁的方式替换原进程与驱动通讯的接口函数为自身某个监视函数,以达到监视用户态进程与驱动的加密会话过程;
[0051] 所述“热补丁的方式”,在进程运行过程中,不需要重新启动进程,在内存中对进程代码进行修改并且实时生效的进程代码修改方法,所述进程代码修改方法是指对目标软件的进程内存进行修改,而不是指对目标软件的可执行文件进行修改,改变代码的执行流程。
[0052] 所述“加密设备重载”,利用加密交互内容截获模块已记录的信息,对解密流程进行“重放”而获取明文的过程,不需要知道具体的解密密钥结构及含义,仅仅使用已知数据对流程进行重新执行,得到解密后的结果。对于支持多种加密方式的软件/设备来说,这种做法具有普适性。
[0053] 实施例5:
[0054] 本实施例是在上述任一实施例的基础上进一步优化,结合图1、图2、图3、图4所示,一种用户态监视加密磁盘的方法,包括以下步骤:
[0055] 1、用户启动存储加密程序,被进程监视模块识别。
[0056] 2、进程监视模块将识别到的存储加密程序信息发送给动态链接库注入模块。
[0057] 3、动态链接库注入模块根据步骤2,将加密交互内容截获模块注入存储加密程序进程的内存空间。
[0058] 4、加密交互内容截获模块在存储加密程序进程的内存空间中搜寻到该进程与存储加密驱动程序交互的函数接口,保存该函数接口的内存地址fAddr,并将该函数的入口改为一条跳转语句,跳转到加密交互内容截获模块中来。
[0059] 5、记录交互数据,用户的加解密操作和驱动交互的内容,都重定向到了加密交互内容截获模块,加密交互内容截获模块对用户的加解密操作和驱动交互的内容进行数据记录。
[0060] 6、加密交互内容截获模块记录完毕后,根据之前保存的fAddr值,跳转回原来的存储加密驱动程序交互的函数接口,将控制权交还原存储加密程序。
[0061] 7、当需要审计,监控用户加密存储的数据时,加密设备重载模块将之前记录下的交互数据中的解密数据流提交至存储加密驱动程序交互的函数接口fAddr,将存储设备以明文方式加载,读取其中数据。
[0062] 本发明具有以下这些优势:
[0063] 1、透明:受控人员几乎不能感知到明显的性能下降以及异常操作。因为进程监控模块是进驻于加密软件内存空间内,并没有实体的进程进行监控。对于原加密软件没有任何影响。同时加密设备重载模块又为上层应用提供了一个透明访问加密存储设备的方法,使得加密存储设备看起来和一般的存储设备无异。
[0064] 2、稳定:使用原解密流程重放实现整个解密流程。解密时完全利用了原软件自带的磁盘驱动。目标软件的升级不会影响本方法的实现。同时本方法使用用户态进程注入的方式,对于整个操作系统的影响降低至最小,不会对其他进程有任何操作。
[0065] 3、便捷:以该方案部署,已有审计、监控进程可以通过传统的存储访问操作实现对文件的访问,不会修改原有审计、监控进程的文件访问接口,实现完全平滑介入。
[0066] 本发明通过对现有审计监控系统,提供一种有效、平滑的软件实现方案,使得其可以审计、监控加密存储设备上的文件,用于实现本发明的软件能够非常方便的嵌入现有的监控、审计环境中,而不必对现有的监控、审计软件、操作系统做更改,极大的降低了部署成本;同时,本发明能够对多种加密软件做到良好的普适性、兼容性和稳定性,不会对系统稳定性造成影响,也不用频繁升级和修改。
[0067] 以上所述,仅是本发明的较佳实施例,并非对本发明做任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化,均落入本发明的保护范围之内。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈