目标文件重定向方法及装置、计算机设备与流程

xiaoxiao6月前  41


本申请涉及领域,具体而言,涉及一种目标文件重定向方法及装置、计算机设备。


背景技术:

1、在数据安全系统中,处理用户对加密文件进行打开操作时,为了不影响用户的使用体验,通常对其采用重定向打开的方式,即隐藏解密操作的技术细节,使用户获得对明文文件进行打开操作时一样的使用体验,通常采用以下方法:内核层系统调用hook技术,通过hook系统内核层的sys_open系统调用函数实现重定向和解密操作,但是上述方法会修改系统调用表,进而导致相关应用程序或操作系统运行的稳定性下降,同时部分系统中存在系统调用表写保护机制,从而限制此种hook的实现,另外,应用层hook技术,通过hook操作系统提供的应用程序编程接口open函数实现重定向和解密操作。需要插入代码到宿主程序,会导致相关应用程序运行的稳定性下降,以及编程实现过程复杂,并存在重定向文件路径暴漏问题。


技术实现思路

1、本申请实施例提供了一种目标文件重定向方法及装置、计算机设备,以至少解决对系统调用表加写保护机制导致的对文件进行重定向易失败的技术问题。

2、根据本申请实施例的一个方面,提供了一种目标文件重定向方法,包括:从第一接口处获取待打开的目标文件;在目标文件处于加密状态的情况下,采用预设在系统内核中的第二接口获取对目标文件进行解密后得到的打开文件;在第三接口接收到关闭指令且目标文件为重定向文件的情况下,采用预设在系统内核中的第四接口关闭打开文件,其中,第一接口为系统内核linux 安全模块lsm框架的文件打开file_open函数接口,第二接口为系统内核应用程序编程接口api接口的文件打开filp_open函数接口,第三接口为系统内核lsm框架的释放文件安全资源file_free_security函数接口,第四接口为系统内核api接口的文件关闭filp_close函数接口。

3、可选地,采用预设在系统内核中的第二接口获取对目标文件进行解密后得到的打开文件,包括:从第一接口中获取目标文件的文件参数,并从目标文件的文件参数的数据成员中获取目标文件的存储路径;根据存储路径确定目标文件是否处于加密状态,在目标文件不处于加密状态的情况下,由系统内核执行目标文件的打开程序;在目标文件处于加密状态的情况下,将目标文件解密到指定目录下,得到明文文件,并采用第二接口打开明文文件,得到打开文件。

4、可选地,采用第二接口打开明文文件,得到打开文件,包括:将从第一接口处获取的目标文件的文件参数中的多个数据成员进行存档保存,得到多个数据成员对应的存档值;打开明文文件,将明文文件的文件对象中多个数据成员赋值给目标文件的文件参数同名的数据成员,得到打开文件。

5、可选地,方法还包括:从第三接口中获取目标文件关闭时的文件参数,并从目标文件关闭时的文件参数中获取目标文件的存储路径;根据存储路径确定目标文件是否为重定向文件;在目标文件不是重定向文件的情况下,由系统内核执行目标文件的关闭程序。

6、可选地,在采用预设在系统内核中的第四接口关闭打开文件之后,方法还包括:将目标文件的文件参数中的多个数据成员的当前值恢复为存档值,并由系统内核继续执行目标文件的关闭操作。

7、根据本申请实施例的另一方面,还提供了一种目标文件重定向装置,包括:获取模块,用于从第一接口处获取待打开的目标文件;打开模块,用于在目标文件处于加密状态的情况下,采用预设在系统内核中的第二接口获取对目标文件进行解密后得到的打开文件;关闭模块,用于在第三接口接收到关闭指令且目标文件为重定向文件的情况下,采用预设在系统内核中的第四接口关闭打开文件,其中,第一接口为系统内核linux 安全模块lsm框架的文件打开file_open函数接口,第二接口为系统内核应用程序编程接口api接口的文件打开filp_open函数接口,第三接口为系统内核lsm框架的释放文件安全资源file_free_security函数接口,第四接口为系统内核api接口的文件关闭filp_close函数接口。

8、根据本申请实施例的又一方面,还提供了一种计算机设备,包括:存储器和处理器,其中,存储器用于存储程序指令;处理器,与存储器连接,用于执行上述目标文件重定向方法。

9、根据本申请实施例的再一方面,还提供了一种计算机程序产品,包括计算机指令,该计算机指令被处理器执行时实现上述目标文件重定向方法。

10、在本申请实施例中,采用在系统内核中预设函数接口和修改内核文件对象数据成员的方式,通过多个函数接口的操作完成了目标文件的重定向操作,达到了避免修改系统调用表的目的,从而实现了提高系统运行稳定性的技术效果,进而解决了对系统调用表加写保护机制导致的对文件进行重定向易失败技术问题。



技术特征:

1.一种目标文件重定向方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,采用预设在系统内核中的第二接口获取对所述目标文件进行解密后得到的打开文件,包括:

3.根据权利要求2所述的方法,其特征在于,采用所述第二接口打开所述明文文件,得到所述打开文件,包括:

4.根据权利要求1所述的方法,其特征在于,所述方法还包括:

5.根据权利要求3所述的方法,其特征在于,在采用预设在系统内核中的第四接口关闭所述打开文件之后,所述方法还包括:

6.一种目标文件重定向装置,其特征在于,包括:

7.根据权利要求6所述的装置,其特征在于,所述打开模块,包括:打开子模块,用于从所述第一接口中获取所述目标文件的文件参数,并从所述目标文件的文件参数的数据成员中获取所述目标文件的存储路径;根据所述存储路径确定所述目标文件是否处于加密状态,在所述目标文件不处于加密状态的情况下,由所述系统内核执行所述目标文件的打开程序;在所述目标文件处于加密状态的情况下,将所述目标文件解密到指定目录下,得到明文文件,并采用所述第二接口打开所述明文文件,得到所述打开文件。

8.根据权利要求7所述的装置,其特征在于,所述打开子模块,包括:打开单元,用于将从所述第一接口处获取的所述目标文件的文件参数中的多个数据成员进行存档保存,得到所述多个数据成员对应的存档值;打开所述明文文件,将所述明文文件的文件对象中多个数据成员赋值给所述目标文件的文件参数同名的数据成员,得到所述打开文件。

9.一种计算机设备,其特征在于,包括:存储器和处理器,所述处理器用于运行存储在所述存储器中的程序,其中,所述程序运行时执行权利要求1至5中任意一项所述的目标文件重定向方法。

10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1所述方法的步骤。


技术总结
本申请公开了一种目标文件重定向方法及装置、计算机设备。其中,该方法包括:从第一接口处获取待打开的目标文件;在目标文件处于加密状态的情况下,采用预设在系统内核中的第二接口获取对目标文件进行解密后得到的打开文件;在第三接口接收到关闭指令且目标文件为重定向文件的情况下,采用预设在系统内核中的第四接口关闭打开文件,第一接口为系统内核Linux安全模块LSM框架的文件打开file_open函数接口,第二接口为系统内核应用程序编程接口api接口的文件打开filp_open函数接口,第三接口为系统内核LSM框架的释放文件安全资源file_free_security函数接口,第四接口为系统内核api接口的文件关闭filp_close函数接口。

技术研发人员:杜高,李继国
受保护的技术使用者:北京时代亿信科技股份有限公司
技术研发日:
技术公布日:2024/9/23

最新回复(0)