一种Linux进程特权操作动态适配方法及装置与流程

文档序号:35671743发布日期:2023-10-07 20:47阅读:30来源:国知局
一种Linux进程特权操作动态适配方法及装置与流程

本技术涉及数据查询,特别是涉及一种linux进程特权操作动态适配方法及装置。


背景技术:

1、随着计算机和网络技术的发展,攻击者可以利用程序的特权攻击服务器系统,窃取涉密数据甚至破坏服务器系统,因此目前对服务器系统的安全要求越来越高。然而一些应用程序因为业务需要,在运行期间需要具有特权用户权限才能正常执行。linux是一种安全的操作系统,它把所有的系统权限都赋予单一的root用户,只给普通用户保留有限的权限。为了服务器系统的安全,通常希望普通用户就能完成特权操作业务需求。

2、现有普通用户启动特权操作进程的方法,主要通过以下方法:

3、(1)通过sudo提升权限,进程启动后拥有root权限;

4、(2)通过设置进程可执行文件的suid位,可以让普通用户允许一个owner为root的可执行文件时具有root的权限;

5、(3)通过设置进程可执行文件的capabilities,如果启用进程的用户不是root用户,进程执行特权操作时,则检查进程是否具有该特权操作对应的capabilities。

6、现有技术可以满足进程执行特权操作,但存在以下问题:

7、(1)sudo提升权限,如果用户较多时,配置管理和权限控制会很麻烦;

8、(2)suid位是一个敏感的权限位,它具有root的全部权限,suid机制增大了系统的安全攻击面。攻击者经常利用这种权限,无声无息地在系统中开扇后门,供日后进出使用;

9、(3)设置进程可执行文件的capabilities权限集,需要提前知道进程需要的特权操作,进程执行文件更新需要重新设置capabilities权限集,要求linux内核版本在2.6.24以上。


技术实现思路

1、为了解决上述技术问题,本发明提供一种linux进程特权操作动态适配方法及装置,根据进程运行时的特权操作,仅赋予进程特权操作需要的能力属性,解决应用程序执行特权操作时普通用户权限不足,特权用户权限过高的问题。

2、本发明采用如下技术方案:

3、第一方面,一种linux进程特权操作动态适配方法,包括:

4、设置业务进程完整的能力属性集;

5、普通用户启动业务进程,执行所有业务类型操作;

6、获取业务进程启动及执行所有业务类型操作的行为数据;

7、当进程行为数据正常时,获取业务进程启动需要的能力属性,并获取执行不同业务类型操作需要的能力属性;

8、统计不同时段操作的业务类型,根据业务进程启动需要的能力属性和不同业务类型操作需要的能力属性,动态适配不同时段业务进程的能力属性。

9、优选的,获取业务进程启动需要的能力属性,具体包括:

10、获取系统支持的能力属性,将能力属性保存到能力属性数组中;

11、启动业务进程,获取业务进程启动后的行为数据;

12、当进程行为数据正常时,轮询去掉能力属性数组中的一个能力属性;

13、重启业务进程,判断进程启动的行为数据是否正常;如果启动异常,将去掉的能力属性保存到进程启动能力数组,并将去掉的能力属性重新添加给业务进程。

14、优选的,所述的linux进程特权操作动态适配方法,还包括:

15、当能力属性数组中的能力属性都有去掉一次之后,基于进程启动能力数组中的能力属性,再次重启业务进程,判断进程启动行为数据是否正常;如果正常,业务进程启动需要的能力属性获取完成。

16、优选的,获取执行不同业务类型操作需要的能力属性,具体包括:

17、收到新的业务类型操作时,判断业务类型对应的能力属性字典表是否存在,如果存在,获取并设置业务类型对应的能力属性字典表中的能力属性,判断业务操作是否正常,如果正常,业务类型操作需要的能力属性获取完成;

18、业务类型对应的能力属性字典表不存在或者业务操作异常,设置业务进程完整的能力属性集,执行业务操作,判断业务是否执行正常;如果正常,轮询去掉完整的能力属性集中除业务进程启动需要的能力属性外的一个能力属性;如果异常,将去掉的能力属性记录到业务类型对应的能力属性字典表中,并将去掉的能力属性重新添加给业务进程。

19、优选的,所述的linux进程特权操作动态适配方法,还包括:

20、当完整的能力属性集中除业务进程启动需要的能力属性外的能力属性都有去掉一次之后,设置业务类型对应的能力属性字典表中的能力属性,执行业务操作,判断业务是否执行正常;如果正常,业务类型操作需要的能力属性获取完成。

21、优选的,统计不同时段操作的业务类型,根据业务进程启动需要的能力属性和不同业务类型操作需要的能力属性,动态适配不同时段业务进程的能力属性,具体包括:

22、设置学习周期和时间段;

23、统计分析在设置的学习周期内,相应时间段业务进程操作过的业务类型;

24、根据相应时间段业务进程操作的业务类型,动态适配不同时段业务进程的能力属性。

25、优选的,所述行为数据为进程正常启动后,获取的信息,包括:进程开放的端口、使用的句柄、程序的运行状态、进程加载的so文件及进程运行情况的跟踪信息。

26、第二方面,一种linux进程特权操作动态适配装置,包括:

27、完整能力属性集设置模块,用于设置业务进程完整的能力属性集;

28、业务类型操作模块,用于启动模块,用于普通用户启动业务进程,执行所有业务类型操作;

29、行为数据获取模块,用于获取业务进程启动及执行所有业务类型操作的行为数据;

30、能力属性获取模块,用于当进程行为数据正常时,获取业务进程启动需要的能力属性,并获取执行不同业务类型操作需要的能力属性;

31、能力属性适配模块,用于统计不同时段操作的业务类型,根据业务进程启动需要的能力属性和不同业务类型操作需要的能力属性,动态适配不同时段业务进程的能力属性。

32、第三方面,一种计算机设备,包括处理器、存储器和通信接口,其中,所述存储器存储有计算机程序,所述计算机程序被配置由所述处理器执行,所述计算机程序包括用于执行一种linux进程特权操作动态适配方法中的步骤的指令。

33、第四方面,一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,所述计算机程序使得计算机执行以实现所述的linux进程特权操作动态适配方法。

34、本发明具有如下有益效果:

35、(1)本发明以linux的capabilities(能力)机制作为基础,在主程序中增加一个应用基线,基线进程负责收集和分析业务进程的信息和行为数据,通过分析进程行为数据获取进程的对应的特权操作;基线拥有自学习功能,可以对业务进程行为数据进行分析学习,自动创建业务进程启动和业务类型对应的能力属性映射表;

36、(2)本发明使用基线进程,对业务进程在不同运行环境的行为数据进行分析,获取并配置业务进程在环境上运行需要的能力属性;设置业务类型对应的进程能力属性,限制不同业务类型对应的特权操作范围;统计一定周期内业务进程不同时段操作的业务类型,动态设置不同时段业务进程拥有的能力;管理进程的在相应的时间段才能进行相应的特权操作;根据进程启动和业务类型对应的能力属性映射表,可以适配任意时段进程的capabilities属性;通过上述的处理,使用户权限和应用程序所需权限简单化,通过设置不同业务类型和不同时段进程的能力集,可以动态的管理进程运行过程中的操作权限,进一步提高系统的安全性。

37、为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1