CN114021176A - 一种SELinux动态授权的方法及系统 - Google Patents
一种SELinux动态授权的方法及系统 Download PDFInfo
- Publication number
- CN114021176A CN114021176A CN202210007350.5A CN202210007350A CN114021176A CN 114021176 A CN114021176 A CN 114021176A CN 202210007350 A CN202210007350 A CN 202210007350A CN 114021176 A CN114021176 A CN 114021176A
- Authority
- CN
- China
- Prior art keywords
- authorization
- information
- interception
- type
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/604—Tools and structures for managing or administering access control systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种SELinux动态授权的方法及系统,通过对包含SELinux拦截信息的日志进行分析、分类、存储、上报,根据该信息生成安全策略规则,并对策略的放行时机和具体时效进行管控,实现了SELinux动态授权。本发明提出的SELinux动态授权方法具有灵活度高、实用性强的特点,能够提高目前SELinux系统中对资源进行授权的效率,减少该过程的时间成本和人工成本。
Description
技术领域
本申请涉及计算机操作系统安全技术领域,尤其涉及一种SELinux动态授权的方法及系统。
背景技术
安全增强型Linux(Security-Enhanced Linux,SELinux)是Linux内核模块,也是Linux的一个安全子系统。SELinux是强制访问控制(Mandatory Access Control,MAC)的一种实现方式,其利用安全策略来强制执行系统所允许的访问。在该访问控制体系的限制下,进程只能访问在它的任务中所需要的资源,允许范围之外的资源将会被系统禁止。
SELinux规则库以“白名单”方式实现,即要求所有许可的操作都必须显示地由类型强制规则来定义,否则就视为操作被禁止。在部署SELinux策略的操作系统之上,系统软件需要适配SELinux策略才能够正常运行,否则会由于资源访问权限不足而导致运行异常。适配SELinux的过程主要是将主客体关系转化为可用于SELinux规则的语句。在现有技术实现方案中,通常通过人工编写SELinux策略规则或自动生成规则后手动导入来处理该问题。然而,对于比较复杂和庞大的程序,上述方法十分繁琐,会耗费较多的时间成本和人力成本。
发明内容
为解决上述现有技术所存在的问题,本发明提出了一种SELinux动态授权的方法及系统。当软件在运行过程中访问资源权限不足时,通过对拦截信息进行分析,动态生成授权策略,以提高适配SELinux的效率。
本发明一方面提出一种SELinux动态授权的方法,包括:
步骤S100、在设备主机上部署客户端,在物理机服务器或虚拟云操作系统上部署服务端;
步骤S200、所述客户端收集所述设备主机由于没有访问权限而发生系统拦截行为时产生的拦截信息,对所述拦截信息进行分析、分类、存储和上报;
步骤S300、所述服务端接收所述客户端上报的所述拦截信息,管理员根据所述拦截信息决策是否放行拦截,并进行授权配置;
步骤S400、所述服务端根据所述授权配置生成策略文件,将所述策略文件下发至所述客户端,并进行时效管控;
步骤S500、所述客户端将所述服务端下发的所述策略文件进行编译和安装,并向所述服务端进行反馈;
步骤S600、所述服务端根据所述客户端的反馈结果修改服务端存储系统。
可选地,所述对所述拦截信息进行分析、分类、存储和上报包括:
步骤S210、从所述拦截信息中筛选类型为SELINUX_ERR的日志信息,得到筛选后的拦截信息;
步骤S220、完善筛选后的拦截信息,得到完善后的拦截信息;
步骤S230、根据完善后的拦截信息判定得到授权类型;
步骤S240、向客户端存储系统写入完善后的拦截信息;
步骤S250、将完善后的拦截信息上报到服务端。
可选地,所述完善筛选后的拦截信息包括:
将筛选后的拦截信息进行改造,添加完整的主体信息,主体信息呈现方式包括进程识别号、执行文件索引节点编号或执行文件完整路径中的一种或多种的组合。
可选地,所述步骤S230包括:
步骤S231、提取完善后的拦截信息中的用户信息、角色信息、主体信息和客体信息;
步骤S232、根据提取的信息,判定得到授权类型。
可选地,所述步骤S231还包括:
分析拦截原因,包括:
分析用户信息,若用户类型为其他类型,则拦截原因为其他用户;
分析用户信息、主体信息和客体信息,若用户类型无权访问主体或客体类型,则拦截原因为用户无权访问;
分析主体信息和客体信息,若主体类型无权访问客体类型,则拦截原因为主体无权访问;
所述步骤S232还包括:
若拦截原因为其他用户,则不予授权;
若拦截原因为用户无权访问,则授权类型为用户角色授权;
若拦截原因为主体无权访问,则授权类型为主体客体授权。
可选地,所述授权配置包括授权类型配置和时效管控配置,所述授权类型包括主体客体授权和用户角色授权,所述时效管控配置包括一次性临时授权、限时授权、长期授权和取消授权。
可选地,步骤S400中生成策略文件包括:
步骤S410、根据授权类型和拦截信息中的主体信息、客体信息生成fc策略文件和te策略文件;
步骤S400中进行时效管控包括:
步骤S420、根据用户选择的授权时长开启定时服务,计算距离授权结束的剩余时间;
步骤S430、读取服务端存储系统中策略文件的剩余时间,若剩余时间为零,则删除服务端存储系统中对应的策略文件,并下发策略删除指令,在客户端卸载对应的策略,其中,服务端存储系统为预先创建的关系型数据库、xml文件或文本文件。
可选地,所述主体客体授权包括:主体、客体均不定义新类型;为主体定义新类型,客体不定义新类型;为客体定义新类型,主体不定义新类型;主体、客体均定义新类型。
所述用户角色动态授权包括:通过用户与角色关联、角色与类型关联实现授权。
可选地,所述客户端将所述服务端下发的所述策略文件进行编译和安装,包括:
客户端对策略文件的语法进行检查,并编译生成策略包;
将策略包导入设备主机的操作系统使修改生效。
本发明另一方面提出一种SELinux动态授权的系统,包括客户端和服务端,客户端包括拦截信息管理单元,策略接收单元,策略编译单元和策略状态反馈单元;服务端包括授权配置单元,授权操作单元,策略下发单元和策略状态接收单元,其中:
拦截信息管理单元,用于收集设备主机由于没有访问权限而发生系统拦截行为时产生的拦截信息,对拦截信息进行分析、分类、存储以及将拦截信息上报至服务端;
策略接收单元,用于接收服务端下发的策略文件;
策略编译单元,用于将服务端下发的策略文件进行编译、打包和安装;
策略状态反馈单元,用于在安装策略文件后向服务端反馈结果状态;
授权配置单元,用于提供授权类型配置接口和时效管控配置接口,管理员根据所述拦截信息决策是否放行拦截,并通过授权类型配置接口和时效管控配置接口进行授权配置;
授权操作单元,用于根据授权配置生成策略文件并进行时效管控;
策略下发单元,用于将生成的策略文件下发到客户端;
策略状态接收单元,用于接收客户端反馈的结果状态,并根据反馈的结果状态修改服务端存储系统。
从以上技术方案可以看出,本发明的技术方案具有以下优点:
本发明通过对包含SELinux拦截信息的日志进行分析、分类、存储、上报,根据拦截信息生成策略文件,并对策略的具体时效进行管控,实现了SELinux动态授权。本发明提出的SELinux动态授权方法具有灵活度高、实用性强的特点,能够提高目前SELinux系统中对资源进行授权的效率,减少该过程的时间成本和人工成本。
附图说明
为了更清楚地表达说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的SELinux动态授权方法的流程示意图;
图2为本发明实施例提供的拦截信息的处理流程图;
图3为本发明实施例提供的SELinux动态授权系统的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。
在本发明的一实施例中,基于smzy模块实现动态授权功能。smzy模块为专用机定制化强制访问控制内核模块,该模块实现用于产生和过滤信息的内核审计系统,将审计信息发送给用户空间审计系统,并由用户空间审计系统写入审计日志文件。
所有的访问控制模型都包含主体、客体和规则库。主体是指访问的发起者,比如系统中的进程;客体是指被访问的对象,包括操作系统所管理的任何资源和数据,如进程、文件、TCP端口、甚至单个网络报文等等;规则库定义主体客体的属性以及主体对客体的合法访问规则。SELINUX是强制访问控制的一种实现方式,其规则库为名为policy.X(X为版本号)的二进制数据文件。policy.X可以由几百个策略包(policy package,pp)链接而成,可由特定管理员角色进行安装、升级和删除。
policy.X通过安全上下文(Security Context,SC)指定系统上所有文件的属性,通过类型强制(Type Enforcement,TE)策略定义主体对客体的合法访问。
安全上下文由三部分组成:
user:role:type
其中user代表SELinux用户;role代表SELinux角色;type代表SELinux类型。用户登录系统后,登录程序根据policy.X规则库的定义,将UNIX用户映射到相应的SELinux用户,不同SELinux用户所能扮演的SELinux角色不同,不同SELinux角色能够关联不同的SELinux类型。主体的SELinux类型又被称为域,客体的SELinux类型又被称为标签。SELinux规则库policy.X通过主体域和客体标签来决定某一访问是否被支持,即访问控制基于SELinux类型来实现,因此称为类型强制。
类型强制策略的格式如下:
allow subj_t obj_t:obj_class permissions;
其中subj_t为访问主体的类型,也称为源类型;obj_t为访问客体的类型,也称为目标类型;obj_class为客体类别;permissions为当前规则所许可的访问方式集合。例如:
allow user_t bin_t:file{ read getattr execute open };
其含义为赋予主体域为user_t的进程对file类对象中标签为bin_t的客体对象的读、获得属性、执行和打开的权利。
SELinux中任何一条类型强制策略中使用的主体和客体类型都应该是被定义过的。定义新类型的格式为:
type new_tye;
例如:type smzy_work1_t;定义了一个名称为smzy_work1_t的新类型。
参见图1,图1是本发明提供的一种SELinux动态授权方法的流程图。如图所示,该方法包括以下步骤:
S100,在设备主机上部署客户端,在物理机服务器或虚拟云操作系统上部署服务端;
在本发明的实施例中,客户端是一个二进制可执行程序,部署在需要SELinux动态授权策略的设备主机上,用于收集、上报拦截信息以及接收授权操作。服务端包括一个用于展示授权信息的接口页面和一个用于配置SELinux授权信息的管理程序,部署在物理机服务器或虚拟云操作系统上。
S200,客户端收集设备主机由于没有访问权限而发生系统拦截行为时产生的拦截信息,对拦截信息进行分析、分类、存储和上报;
在本实施例S200中,拦截信息由审计服务记录在审计日志文件内,一般默认存放路径为/var/log/audit/audit.log。该文件包含系统产生的全部历史拦截信息,可作为分析提取拦截信息的主要源头。
如图2所示,对拦截信息进行分析、分类、存储和上报包括:筛选类型为SELINUX_ERR的日志信息;完善拦截信息;判定得到授权类型;向客户端存储系统写入完善后的拦截信息;将拦截信息上报到服务端。
类型为SELINUX_ERR的日志信息格式为:
type=SELINUX_ERR msg=audit(timestamp):deny_type--->:command:deny_command-->role:subj_t:obj_t:obj_class:access_type
其中timestamp为时间戳;deny_type为拦截原因;deny_command为导致拦截的可执行文件的缩略信息;role为拦截主体的SELinux角色;subj_t为拦截主体类型;obj_t为拦截客体类型;obj_class为拦截客体类别;access_type为拦截主体对客体的访问方式。
拦截原因包括:OTHER_SELINUX_USER、ADM_AUTH_DENY和SOFT_ACCESS_DENY。
OTHER_SELINUX_USER代表拦截原因为其他用户,即用户类型为其他类型;
其他用户指,用户类型为除根用户类型(root_u)、审计用户类型(audit_u)、安全用户类型(sec_u)、普通用户类型(normal_u)、系统用户类型(system_u)、客体用户类型(object_u)之外的用户。
ADM_AUTH_DENY代表拦截原因为用户无权访问,即用户类型无权访问主体或客体类型;
SOFT_ACCESS_DENY代表拦截原因为主体无权访问,即主体类型无权访问客体类型。例如:
type=SELINUX_ERR
msg=audit(1564542284.613:26655):SOFT_ACCESS_DENY---> command:dbus-daemon-->system_r:system_dbusd_t:security_t:file:write
其含义为运行可执行文件dbus-daemon时,主体域为system_dbusd_t的进程对file类对象中标签为security_t的客体进行写访问操作时被拦截,拦截原因为主体无权访问。
完善拦截信息指,对筛选后的拦截信息进行改造添加完整主体信息,主体信息呈现方式可以为进程识别号(Process Identification,PID)、执行文件索引节点(IndexNode,inode)编号或者执行文件完整路径信息。具体研发过程中会依据实际执行效率、应用场景等进行定夺。
判定得到授权类型是依据拦截日志中的拦截原因对授权类型进行判定。如果拦截原因为其他用户,则不予授权;如果拦截原因为用户无权访问,则授权类型为用户角色授权;如果拦截原因为主体无权访问,则授权类型为主体客体授权。
将拦截信息上报到服务端指,客户端自动检测存储系统中新增的拦截日志信息并上报。
S300,服务端接收客户端上报的拦截信息,管理员根据拦截信息决策是否放行拦截,并进行授权配置;
在本实施例S300中,拦截信息将会在服务端呈现,使管理员能够决策是否放行相关拦截,同时提供接口使管理员能够进行授权配置。
授权配置包括授权类型配置和时效管控配置。
授权类型包括主体客体授权和用户角色授权。
时效管控配置包括:一次性临时授权;限时授权;长期授权;取消授权。
一次性临时授权是指,授权仅对本次客户端建立连接的过程中有效,客户端重启后再次访问该资源时仍会被拦截。
限时授权是指对授权时间进行限定,用户可以根据实际情况设置对该资源授权访问的时长,如两小时或两天。
长期授权是指对该资源的访问权限永久有效。
取消授权是指取消通过一次性临时授权、限时授权、长期授权所授予的权限。取消授权后,下一次访问相应资源时会被拦截。
S400,服务端根据授权配置生成策略文件,将策略文件下发至客户端,并进行时效管控;
在本实施例S400中,生成策略文件指,根据授权类型和拦截信息中的主体、客体等信息生成fc策略文件和te策略文件。
fc策略文件为以.fc为后缀的文件,负责定义一个应用程序在安装时静态创建的所有文件的安全上下文。fc策略文件可以包含多条如下格式的内容:
FCPATH -- gen_context(user:role:type,s0)
其中FCPATH为对应文件的路径信息。fc策略文件的一个例子如下:
/usr/sbin/ssh -- gen_context(system_u:object_r:ssh_exec_t,s0)
te策略文件为以.te为后缀的文件,负责对新类型和类型强制规则进行定义。
授权类型包括:主体客体授权;用户角色授权。
根据是否通过为主体和客体定义新类型来进行授权,主体客体授权包括:主体、客体均不定义新类型;为主体定义新类型,客体不定义;为客体定义新类型,主体不定义;主体、客体均定义新类型。
具体地,主体、客体均不定义新类型,需要在te文件中依据源类型为主体类型、目标类型为客体类型构建类型强制规则;
为主体定义新类型,客体不定义,需要提取拦截信息中的主体类型和主体路径,在te文件中为该进程主体定义一个新的类型,依据源类型为新的主体类型、目标类型为客体类型构建类型强制规则,并在fc文件中为新类型定义安全上下文信息;
为客体定义新类型,主体不定义,需要提取拦截信息中的主体标签、客体标签和客体路径,在te文件中为该客体定义一个新的类型,依据源类型为主体类型、目标类型为新的客体类型构建类型强制规则,并在fc文件中为新类型定义安全上下文信息;
主体、客体均定义新类型,需要提取拦截信息中主体和客体的标签和路径,在te文件中为主体和客体分别定义新的类型,依据源类型为新的主体类型、目标类型为新的客体类型构建类型强制规则,并在fc文件中为新类型定义安全上下文信息。
用户角色授权,指通过用户与角色关联、角色与类型关联来实现授权。
SELinux并不直接建立用户和类型之间的联系,而是通过角色作为桥梁。用户与角色关联、角色与类型关联的具体关联方法如下:
user joe roles user_r; #用户joe与角色user_r关联
role user_r types user_t; #角色user_r与类型user_t关联
时效管控包括:由用户选择授权时长;开启定时服务,计算距离授权结束的剩余时间;读取服务端存储系统;若授权时间为零,则删除服务端存储系统相关文件,并下发策略删除指令,在客户端卸载相关策略。
S500,客户端将服务端下发的策略文件进行编译和安装,并向服务端进行反馈;
在本实施例S500中,客户端将服务端下发的策略进行编译指,客户端对策略语法进行检查,并使用make命令编译生成策略包模块。策略包模块为以.pp为后缀的文件。
安装指:将策略包导入设备主机的操作系统使修改生效。
S600、服务端根据客户端的反馈结果修改服务端存储系统。
在本实施例S600中,根据授权操作对存储系统中的相关记录进行修改。服务端存储系统中存放所有已授权策略的相关信息,服务端每间隔一段时间执行定时任务,判断存储系统中的授权策略是否过期。例如,当运行动态授权管控程序添加授权策略时,在存储系统中添加相应的条目;当运行动态授权管控程序取消授权时,在存储系统中删除对应的记录。
上述步骤从拦截信息分析管理、策略生成、策略下发、策略编译和安装、时效管控等都是自动完成,无需人工干预,可以减少重复性工作,提高效率。
参见图3,图3是本发明提供的一种SELinux动态授权的系统,包括客户端101与服务端102。其中,系统的客户端101包括:
拦截信息管理单元1011,主要负责提取类型为SELINUX_ERR的拦截信息,对拦截信息进行完善,对授权类型进行判定,将完善后的拦截信息写入客户端存储系统并上报到服务端102。
策略接收单元1012,主要负责接收服务端102下发的策略文件。
策略编译单元1013,主要负责对策略语法进行检查,编译生成策略包模块并安装。
策略状态反馈单元1014,主要负责在安装策略后向服务端102反馈结果状态。
系统的服务端102包括:
授权配置单元1021,主要负责提供授权类型配置接口和时效管控配置接口。
授权操作单元1022,主要负责根据授权配置进行授权操作,包括策略生成和时效管控。
策略下发单元1023,主要负责将生成的策略文件下发到客户端101。
策略状态接收单元1024,主要负责接收客户端101的反馈信息,并根据该信息修改存储系统。
SELinux动态授权系统能够实现图1的方法实施例中SELinux动态授权方法的各个过程,为避免重复,这里不再赘述。
本实施例公开的一种SELinux动态授权方法和系统,在拦截信息管理、策略生成、时效管控等方面更加灵活,能快速响应客户的需求。相对于传统通过人工编写SELinux策略规则或自动生成规则后手动导入来解决SELinux授权方法的复杂和繁琐,本发明提出的技术方案使得操作过程更为简单、高效,能够减少时间成本和人工成本,因此也更加实用。
应该明白,公开的过程中的步骤的特定顺序或层次是示例性方法的实例。基于设计偏好,应该理解,过程中的步骤的特定顺序或层次可以在不脱离本公开的保护范围的情况下得到重新安排。所附的方法权利要求以示例性的顺序给出了各种步骤的要素,并不是要限于所述的特定顺序或层次。
在上述的详细描述中,各种特征一起组合在单个的实施方案中,以简化本公开。不应该将这种公开方法解释为反映了这样的意图,相反,本发明处于比所公开的单个实施方案的全部特征少的状态。因此,所附的权利要求书特此清楚地被并入详细描述中,其中每项权利要求独自作为本发明单独的优选实施方案。
本领域技术人员还应当理解,结合本文的实施例描述的各种说明性的逻辑框、模块、电路和算法步骤均可以实现成电子硬件、计算机软件或其组合。为了清楚地说明硬件和软件之间的可交换性,上面对各种说明性的部件、框、模块、电路和步骤均围绕其功能进行了一般地描述。至于这种功能是实现成硬件还是实现成软件,取决于特定的应用和对整个系统所施加的设计约束条件。熟练的技术人员可以针对每个特定应用,以变通的方式实现所描述的功能,但是,这种实现决策不应解释为背离本公开的保护范围。
为了描述上述实施例而描述部件或方法的所有可能的结合是不可能的,但是本领域普通技术人员应该认识到,各个实施例可以做进一步的组合和排列。因此,本文中描述的实施例旨在涵盖落入所附权利要求书的保护范围内的所有这样的改变、修改和变型。
Claims (10)
1.一种SELinux动态授权的方法,其特征在于,包括:
步骤S100、在设备主机上部署客户端,在物理机服务器或虚拟云操作系统上部署服务端;
步骤S200、所述客户端收集所述设备主机由于没有访问权限而发生系统拦截行为时产生的拦截信息,对所述拦截信息进行分析、分类、存储和上报;
步骤S300、所述服务端接收所述客户端上报的所述拦截信息,管理员根据所述拦截信息决策是否放行拦截,并进行授权配置;
步骤S400、所述服务端根据所述授权配置生成策略文件,将所述策略文件下发至所述客户端,并进行时效管控;
步骤S500、所述客户端将所述服务端下发的所述策略文件进行编译和安装,并向所述服务端进行反馈;
步骤S600、所述服务端根据所述客户端的反馈结果修改服务端存储系统。
2.根据权利要求1所述的一种SELinux动态授权的方法,其特征在于,所述对所述拦截信息进行分析、分类、存储和上报包括:
步骤S210、从所述拦截信息中筛选类型为SELINUX_ERR的日志信息,得到筛选后的拦截信息;
步骤S220、完善筛选后的拦截信息,得到完善后的拦截信息;
步骤S230、根据完善后的拦截信息判定得到授权类型;
步骤S240、向客户端存储系统写入完善后的拦截信息;
步骤S250、将完善后的拦截信息上报到服务端。
3.根据权利要求2所述的一种SELinux动态授权的方法,其特征在于,所述完善筛选后的拦截信息包括:
将筛选后的拦截信息进行改造,添加完整的主体信息,主体信息呈现方式包括进程识别号、执行文件索引节点编号或执行文件完整路径中的一种或多种的组合。
4.根据权利要求2所述的一种SELinux动态授权的方法,其特征在于,所述步骤S230包括:
步骤S231、提取完善后的拦截信息中的用户信息、角色信息、主体信息和客体信息;
步骤S232、根据提取的信息,判定得到授权类型。
5.根据权利要求4所述的一种SELinux动态授权的方法,其特征在于,所述步骤S231还包括:
分析拦截原因,包括:
分析用户信息,若用户类型为其他类型,则拦截原因为其他用户;
分析用户信息、主体信息和客体信息,若用户类型无权访问主体类型或客体类型,则拦截原因为用户无权访问;
分析主体信息和客体信息,若主体类型无权访问客体类型,则拦截原因为主体无权访问;
所述步骤S232还包括:
若拦截原因为其他用户,则不予授权;
若拦截原因为用户无权访问,则授权类型为用户角色授权;
若拦截原因为主体无权访问,则授权类型为主体客体授权。
6.根据权利要求1所述的一种SELinux动态授权的方法,其特征在于,所述授权配置包括授权类型配置和时效管控配置,所述授权类型包括主体客体授权和用户角色授权,所述时效管控配置包括一次性临时授权、限时授权、长期授权和取消授权。
7.根据权利要求4或5所述的一种SELinux动态授权的方法,其特征在于,步骤S400中生成策略文件包括:
步骤S410、根据授权类型和拦截信息中的主体信息、客体信息生成fc策略文件和te策略文件;
步骤S400中进行时效管控包括:
步骤S420、根据用户选择的授权时长开启定时服务,计算距离授权结束的剩余时间;
步骤S430、读取服务端存储系统中策略文件的剩余时间,若剩余时间为零,则删除服务端存储系统中对应的策略文件,并下发策略删除指令,在客户端卸载对应的策略,其中,服务端存储系统为预先创建的关系型数据库、xml文件或文本文件。
8.根据权利要求6所述的一种SELinux动态授权的方法,其特征在于,
所述主体客体授权包括:主体、客体均不定义新类型;为主体定义新类型,客体不定义新类型;为客体定义新类型,主体不定义新类型;主体、客体均定义新类型;
所述用户角色动态授权包括:通过用户与角色关联、角色与类型关联实现授权。
9.根据权利要求1所述的一种SELinux动态授权的方法,其特征在于,所述客户端将所述服务端下发的所述策略文件进行编译和安装,包括:
客户端对策略文件的语法进行检查,并编译生成策略包;
将策略包导入设备主机的操作系统使修改生效。
10.一种SELinux动态授权的系统,其特征在于,包括客户端和服务端,客户端包括拦截信息管理单元,策略接收单元,策略编译单元和策略状态反馈单元;服务端包括授权配置单元,授权操作单元,策略下发单元和策略状态接收单元,其中:
拦截信息管理单元,用于收集设备主机由于没有访问权限而发生系统拦截行为时产生的拦截信息,对拦截信息进行分析、分类、存储和上报;
策略接收单元,用于接收服务端下发的策略文件;
策略编译单元,用于将服务端下发的策略文件进行编译和安装;
策略状态反馈单元,用于在安装策略包后向服务端进行反馈;
授权配置单元,用于提供授权类型配置接口和时效管控配置接口,管理员根据所述拦截信息决策是否放行拦截,并通过授权类型配置接口和时效管控配置接口进行授权配置;
授权操作单元,用于根据授权配置生成策略文件并进行时效管控;
策略下发单元,用于将生成的策略文件下发到客户端;
策略状态接收单元,用于接收客户端的反馈,并根据反馈结果修改服务端存储系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210007350.5A CN114021176B (zh) | 2022-01-06 | 2022-01-06 | 一种SELinux动态授权的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210007350.5A CN114021176B (zh) | 2022-01-06 | 2022-01-06 | 一种SELinux动态授权的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114021176A true CN114021176A (zh) | 2022-02-08 |
CN114021176B CN114021176B (zh) | 2022-03-18 |
Family
ID=80069709
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210007350.5A Active CN114021176B (zh) | 2022-01-06 | 2022-01-06 | 一种SELinux动态授权的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114021176B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117131518A (zh) * | 2023-02-22 | 2023-11-28 | 荣耀终端有限公司 | 配置SELinux安全策略的方法、系统及存储介质 |
CN117436079A (zh) * | 2023-12-20 | 2024-01-23 | 麒麟软件有限公司 | 一种Linux系统的完整性保护方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108932427A (zh) * | 2018-05-18 | 2018-12-04 | 华中科技大学 | 一种Android应用多开环境中限制访问的控制方法及系统 |
CN112463203A (zh) * | 2020-10-29 | 2021-03-09 | 苏州浪潮智能科技有限公司 | 一种SELinux的管理配置方法、系统、设备以及介质 |
CN112685730A (zh) * | 2021-03-18 | 2021-04-20 | 北京全息智信科技有限公司 | 一种操作系统账户的权限控制方法、装置及电子设备 |
-
2022
- 2022-01-06 CN CN202210007350.5A patent/CN114021176B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108932427A (zh) * | 2018-05-18 | 2018-12-04 | 华中科技大学 | 一种Android应用多开环境中限制访问的控制方法及系统 |
CN112463203A (zh) * | 2020-10-29 | 2021-03-09 | 苏州浪潮智能科技有限公司 | 一种SELinux的管理配置方法、系统、设备以及介质 |
CN112685730A (zh) * | 2021-03-18 | 2021-04-20 | 北京全息智信科技有限公司 | 一种操作系统账户的权限控制方法、装置及电子设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117131518A (zh) * | 2023-02-22 | 2023-11-28 | 荣耀终端有限公司 | 配置SELinux安全策略的方法、系统及存储介质 |
CN117436079A (zh) * | 2023-12-20 | 2024-01-23 | 麒麟软件有限公司 | 一种Linux系统的完整性保护方法及系统 |
CN117436079B (zh) * | 2023-12-20 | 2024-04-05 | 麒麟软件有限公司 | 一种Linux系统的完整性保护方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114021176B (zh) | 2022-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11310262B1 (en) | Real-time vulnerability monitoring | |
US10360382B2 (en) | Execution environment file inventory | |
US9602515B2 (en) | Enforcing alignment of approved changes and deployed changes in the software change life-cycle | |
US9135322B2 (en) | Environment classification | |
US7673324B2 (en) | Method and system for tracking an operating performed on an information asset with metadata associated therewith | |
CN114021176B (zh) | 一种SELinux动态授权的方法及系统 | |
US7743414B2 (en) | System and method for executing a permissions recorder analyzer | |
US10057285B2 (en) | System and method for auditing governance, risk, and compliance using a pluggable correlation architecture | |
US9626526B2 (en) | Trusted public infrastructure grid cloud | |
US8707385B2 (en) | Automated compliance policy enforcement in software systems | |
EP3236354A1 (en) | System analysis and management | |
US9135056B2 (en) | Automated, controlled distribution and execution of commands and scripts | |
US9118709B2 (en) | Anti-vulnerability system, method, and computer program product | |
US20150040233A1 (en) | Sdk-equipped anti-vulnerability system, method, and computer program product | |
US20150033323A1 (en) | Virtual patching system, method, and computer program product | |
US11533182B2 (en) | Identity-based security platform and methods | |
EP3196798A1 (en) | Context-sensitive copy and paste block | |
US20150033352A1 (en) | System, method, and computer program product for reporting an occurrence in different manners | |
US20090048993A1 (en) | Implementation of operating system securing | |
CN116541184A (zh) | 一种多协议应用框架系统 | |
US11526599B2 (en) | Clustered application policy generation | |
CN109784051A (zh) | 信息安全防护方法、装置及设备 | |
CN112883381A (zh) | 基于专家系统的AppArmor安全策略自动生成方法及系统 | |
CN115544518A (zh) | 漏洞扫描引擎实现方法、装置、漏洞扫描方法及电子设备 | |
KR20100105161A (ko) | 확장된 보안 레이블을 이용하는 프로세스 및 파일 추적 시스템 및 프로세스 및 파일 추적 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |