一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种高效的linux系统白名单实现方法与流程

2022-08-30 23:55:37 来源:中国专利 TAG:


1.本发明涉及信息安全技术领域,具体为一种高效的linux系统白名单实现方法。


背景技术:

2.随着对工控安全的重视,越来越多的安全技术开始应用于工控主机安全。其种一种重要的主机安全技术就是白名单技术。由于工控主机运行环境单一,系统更新不及时,这就使得白名单技术非常适合工控主机环境。但由于工控主机使用年限较长,大部分工控主机的硬件性能较弱,如何高效的实现白名单功能就成为一个研究热点。
3.现有技术中在用户态通过ld_preload的方法,通过劫持glibc库函数,在函数运行中,通过检测当前文件的路径及相应的md5/sha值,来决定是否放行相应的文件操作,但是这种技术存在以下缺点:一、只能防护动态链接到glibc的程序,不能防护静态可执行文件,二、所有加载ld_preload的可执行程序,在检查过程中,白名单或入在文件中或放在共享内存中。无论存放在文件中还是共享内存中,高效查找算法都难实现,三、用户态的实现容易通过修改环境变量进行绕过,四、性能低。
4.此外还有一种技术,在内核态通过驱动程序的形式实现,劫持相关的系统调用。在相关的系统调用接口处,查询文件的路径,同时计算相关的md5/sha值,以决定是否放行相关的操作,但是这种技术同样存在以下缺点:一、在同核态计算文件的md5/sha hash值,性能较低,二、内核态实现技术复杂。
5.根据上述两种技术可见,在实现linux系统白名单的方法过程中还是存在一些诸如效率低下,性能不好的问题,因为如何提出一种高效的linux系统白名单实现方法是亟待解决的问题。


技术实现要素:

6.(一)解决的技术问题
7.针对现有技术的不足,本发明提供了一种能够解决在内核态实现白名单时,计算文件md5/sha hash值效率低下的问题。
8.(二)技术方案
9.为实现以上目的,本发明通过以下技术方案予以实现:一种高效的linux系统白名单实现方法,包括以下步骤:
10.s1.获取增加名单文件的路径,并计算文件路径,文件内容的md5/sha hash值;
11.s2.对文件的修改时间,文件路径的hash值,文件内容的hash值,连接起来后进入加密处理;
12.s3.通过扩展属性,把加密后的内容写入文件扩展属性;
13.s4.内核的系统调用进行时,首先获取文件的扩展属性,相应的扩展属性如不存在,则检测失败,然后对属性值进行解密处理,对比文件路径hash与当前文件路径的hash值及相应的时间记录,如果两者一致,则允许操作,如果文件路径一致,但修改时间不一样,重
新计算文件内容的hash值,如果hash值与文件属性中的hash值一致,则可以进行后续操作。
14.优选的,所述步骤s1中具体可以利用file类中的getcanonicalpath或getabsolutepath函数可以获取文件路径,再利用python中的calcshal或calcmd5函数获取文件路径中的hash值。
15.优选的,所述步骤s2中加密时可以采用系统自带的efs加密算法进行加密。
16.优选的,所述步骤s3中具体采用linux下的system扩展属性命名空间,通过其可以实现利用扩展属性的内核功能。
17.(三)有益效果
18.本发明提供了一种高效的linux系统白名单实现方法。具备以下有益效果:
19.1、本发明提供了一种高效的linux系统白名单实现方法,其利用linux系统已有的扩展属性,降低实现难度。
20.2、本发明提供了一种高效的linux系统白名单实现方法,通过在扩展属性中存储相关的元数据信息,提升相关的查询性能。
21.3、本发明提供了一种高效的linux系统白名单实现方法,其通过linux系统的自带扩展属性,进行元数据信息加密存储,能够有效提高内核态实现白名单时,计算文件md5/sha值效率低下的问题。
附图说明
22.图1为本发明提供的一种高效的linux系统白名单实现方法流程图;
23.图2为本发明提供的一种高效的linux系统白名单实现方法处理流程结构示意图。
具体实施方式
24.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
25.实施例一:
26.如图1-2所示,本发明实施例提供一种高效的linux系统白名单实现方法,包括以下步骤:
27.s1.获取增加名单文件的路径,并计算文件路径,文件内容的md5/sha hash值;
28.s2.对文件的修改时间,文件路径的hash值,文件内容的hash值,连接起来后进入加密处理;
29.s3.通过扩展属性,把加密后的内容写入文件扩展属性;
30.s4.内核的系统调用进行时,首先获取文件的扩展属性,相应的扩展属性如不存在,则检测失败,然后对属性值进行解密处理,对比文件路径hash与当前文件路径的hash值及相应的时间记录,如果两者一致,则允许操作,如果文件路径一致,但修改时间不一样,重新计算文件内容的hash值,如果hash值与文件属性中的hash值一致,则可以进行后续操作。
31.尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换
和变型,本发明的范围由所附权利要求及其等同物限定。


技术特征:
1.一种高效的linux系统白名单实现方法,其特征在于:包括以下步骤:s1.获取增加名单文件的路径,并计算文件路径,文件内容的md5/sha hash值;s2.对文件的修改时间,文件路径的hash值,文件内容的hash值,连接起来后进入加密处理;s3.通过扩展属性,把加密后的内容写入文件扩展属性;s4.内核的系统调用进行时,首先获取文件的扩展属性,相应的扩展属性如不存在,则检测失败,然后对属性值进行解密处理,对比文件路径hash与当前文件路径的hash值及相应的时间记录,如果两者一致,则允许操作,如果文件路径一致,但修改时间不一样,重新计算文件内容的hash值,如果hash值与文件属性中的hash值一致,则可以进行后续操作。2.根据权利要求1所述的一种高效的linux系统白名单实现方法,其特征在于:所述步骤s1中具体可以利用file类中的getcanonicalpath或getabsolutepath函数获取文件路径,再利用python中的calcshal或calcmd5函数获取文件路径中的hash值。3.根据权利要求1所述的一种高效的linux系统白名单实现方法,其特征在于:所述步骤s2中加密时可以采用系统自带的efs加密算法进行加密。4.根据权利要求1所述的一种高效的linux系统白名单实现方法,其特征在于:所述步骤s3中具体采用linux下的system扩展属性命名空间,通过其可以实现利用扩展属性的内核功能。

技术总结
本发明提供一种高效的linux系统白名单实现方法,涉及信息安全技术领域。该linux系统白名单实现方法,包括以下步骤:S1.获取增加名单文件的路径,并计算文件路径,文件内容的md5/sha hash值;S2.对文件的修改时间,文件路径的hash值,文件内容的hash值,连接起来后进入加密处理;S3.通过扩展属性,把加密后的内容写入文件扩展属性。本发明提供的一种高效的linux系统白名单实现方法,该方法通过linux系统的自带扩展属性,进行元数据信息加密存储,能够有效提高内核态实现白名单时,计算文件md5/sha值效率低下的问题。sha值效率低下的问题。sha值效率低下的问题。


技术研发人员:王小东 肖俊杰
受保护的技术使用者:北京天地和兴科技有限公司
技术研发日:2021.12.15
技术公布日:2022/8/29
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献