CN113761537A - 一种防范容器逃逸的方法、系统、设备、存储介质 - Google Patents
一种防范容器逃逸的方法、系统、设备、存储介质 Download PDFInfo
- Publication number
- CN113761537A CN113761537A CN202110866389.8A CN202110866389A CN113761537A CN 113761537 A CN113761537 A CN 113761537A CN 202110866389 A CN202110866389 A CN 202110866389A CN 113761537 A CN113761537 A CN 113761537A
- Authority
- CN
- China
- Prior art keywords
- container
- configuration
- safety
- preset
- recording
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000001514 detection method Methods 0.000 claims abstract description 120
- 230000008439 repair process Effects 0.000 claims abstract description 25
- 238000012545 processing Methods 0.000 claims abstract description 14
- 230000008569 process Effects 0.000 claims description 37
- 238000012550 audit Methods 0.000 claims description 14
- 238000007726 management method Methods 0.000 claims description 13
- 238000011084 recovery Methods 0.000 description 12
- 238000013475 authorization Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/52—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
- G06F21/53—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供一种防范容器逃逸的方法、系统、设备、存储介质,所述方法每隔设定的时间间隔对容器运行环境进行安全检测;将检测结果与预置容器运行安全配置进行对比并记录对比结果;若对比一致,则本次处理结束;若对比不一致;按照预置容器运行安全配置修复容器运行环境中的不安全项,修复完成后,本次处理结束。定时获取应用容器引擎主机中的容器相关配置和状态信息,将获取到的相关信息与数据库中预置的安全选项进行对比,根据对比结果判断是否存在容器逃逸的安全威胁,若存在相关威胁,则自动进行修复操作,有效消减和降低容器平台因配置不当引起的容器逃逸安全威胁,保证应用容器引擎容器运行环境的安全。
Description
技术领域
本发明涉及安全环境检测技术领域,具体涉及一种防范容器逃逸的方法、系统、设备、存储介质。
背景技术
近年来,容器技术持续升温,随着容器化的重要甚至核心业务越来越多,容器安全的重要性也在不断提高,也在不断地受到挑战。与其他虚拟化技术类似,在其面临的所有安全问题当中,逃逸问题最为严重——它直接影响到了承载容器的底层基础设施的保密性、完整性和可用性。
容器逃逸指这样的一种过程和结果:首先,攻击者通过劫持容器化业务逻辑,或直接控制方式,已经获得了容器内某种权限下的命令执行能力;攻击者利用这种命令执行能力,借助一些手段进一步获得该容器所在宿主机上某种权限下的命令执行能力。
容器漏洞扫描工具其使用基于CVE漏洞的公开数据对容器进行扫描,发现漏洞并进行预警,而这些软件漏洞包括内核漏洞、容器软件漏洞和镜像软件漏洞是造成容器运行时安全风险和容器逃逸的重要原因,但这类工具对于容器的其它不当配置导致的容器逃逸则无能为力。
发明内容
针对容器漏洞扫描工具其使用基于CVE漏洞的公开数据对容器进行扫描,发现漏洞并进行预警,而这些软件漏洞包括内核漏洞、容器软件漏洞和镜像软件漏洞是造成容器运行时安全风险和容器逃逸的重要原因,但这类工具对于容器的其它不当配置导致的容器逃逸则无能为力的问题,本发明提供一种防范容器逃逸的方法、系统、设备、存储介质。
本发明的技术方案是:
第一方面,本发明技术方案提供一种防范容器逃逸的方法,包括如下步骤:
每隔设定的时间间隔对容器运行环境进行安全检测;
将检测结果与预置容器运行安全配置进行对比并记录对比结果;
若对比一致,则本次处理结束;
若对比不一致;按照预置容器运行安全配置修复容器运行环境中的不安全项,修复完成后,本次处理结束。
获取容器运行环境配置信息和状态信息并和安全配置对比检测是否存在容器逃逸风险;对容易造成容器逃逸的不安全配置信息自动修复对容器运行环境进行定期检测和修复,防范容器逃逸风险。
优选地,所述的每隔设定的时间间隔对容器运行环境进行安全检测的步骤包括:
启动循环定时器;
计时器超时时,启动对容器运行环境的各项配置及状态进行检测。对容器运行环境进行定期检测和修复,防范容器逃逸风险。
优选地,所述的将检测结果与预置容器运行安全配置进行对比并记录对比结果的步骤之前还包括:
预置容器运行安全配置项相关设置存入数据库。
优选地,所述的将检测结果与预置容器运行安全配置进行对比并记录对比结果的步骤
获取数据库中预置的容器运行安全配置项相关设置;
将检测结果与获取的数据库中预置的容器运行安全配置项相关设置进行比对;
输出逐项详细的对比结果。
获取容器运行环境配置信息和状态信息并和安全配置对比检测是否存在容器逃逸风险。
优选地,所述的预置容器运行安全配置项相关设置存入数据库的步骤包括:
将设置的守护进程安全配置、守护程序文件的所有权及访问权限、应用容器引擎驱动安全配置、容器管理包安全配置、容器配置项安全配置、主机配置的linux审计策略存入数据库。
相应的,对容器运行环境的各项配置及状态进行检测的步骤具体包括:
对守护进程的配置项进行检测,记录检测结果;
对守护程序的文件所有权及访问权限进行检测,记录检测结果;
对应用容器引擎驱动配置项进行检测,记录检测结果;
对容器管理包配置项进行检测,记录检测结果;
对容器配置项进行检测,记录检测结果;
对主机配置是否添加linux审计策略进行检测,记录检测结果。
优选地,所述的按照预置容器运行安全配置修复容器运行环境中的不安全项的步骤包括:
修改操作系统、应用容器引擎系统及配置文件,将对比结果中不符合安全配置的配置项修改为数据库中预置的安全配置。
守护进程包括TLS身份认证、客户端授权、进程的实时恢复、日志设置、linux模拟器设置;
应用容器引擎驱动配置包括aufs驱动使用、网桥上容器流量的设置、进程的实时恢复、日志设置、linux模拟器设置;
容器配置包括特权容器使用、根文件系统权限设置。
能够持续自动化监控容器运行环境参数配置,提升容器应用运行时的安全性。
第二方面,本发明技术方案还提供一种防范容器逃逸的系统,包括定时器模块、安全检测模块、安全比对模块、安全修复模块;
定时器模块,用于每隔设定的时间间隔触发安全检测模块进行安全检测;
安全检测模块,用于接收到定时器模块的触发信号时对对容器运行环境进行安全检测;
安全比对模块,用于将检测结果与预置容器运行安全配置进行对比并记录对比结果;
安全修复模块,用于若安全比对模块输出对比不一致;按照预置容器运行安全配置修复容器运行环境中的不安全项。
获取容器运行环境配置信息和状态信息并和安全配置对比检测是否存在容器逃逸风险;对容易造成容器逃逸的不安全配置信息自动修复对容器运行环境进行定期检测和修复,防范容器逃逸风险。
优选地,安全检测模块,用于接收到定时器模块的触发信号时对应用容器引擎及主机相关配置项进行安全检测;
所述系统还包括预置模块,用于预置容器运行安全配置项相关设置存入数据库。
优选地,安全比对模块包括预置设置获取单元、对比单元和输出单元;
预置设置获取单元,用于获取数据库中预置的容器运行安全配置项相关设置;
对比单元,用于将检测结果与获取的数据库中预置的容器运行安全配置项相关设置进行比对;
输出单元,用于输出逐项详细的对比结果。
优选地,所述的预置容器运行安全配置项包括:
守护进程安全配置、守护程序文件的所有权及访问权限、应用容器引擎驱动安全配置、容器管理包安全配置、容器配置项安全配置、主机配置的linux审计策略存入数据库。
相应的,安全检测模块,具体用于对守护进程的配置项进行检测,记录检测结果;对守护程序的文件所有权及访问权限进行检测,记录检测结果;对应用容器引擎驱动配置项进行检测,记录检测结果;对容器管理包配置项进行检测,记录检测结果;对容器配置项进行检测,记录检测结果;对主机配置是否添加linux审计策略进行检测,记录检测结果。
优选地,安全修复模块,具体用于修改操作系统、应用容器引擎系统及配置文件,将对比结果中不符合安全配置的配置项修改为数据库中预置的安全配置。
守护进程包括TLS身份认证、客户端授权、进程的实时恢复、日志设置、linux模拟器设置;
应用容器引擎驱动配置包括aufs驱动使用、网桥上容器流量的设置、进程的实时恢复、日志设置、linux模拟器设置;
容器配置包括特权容器使用、根文件系统权限设置。
第三方面,本发明技术方案还提供一种计算机设备,包括存储器和处理器,所述处理器和所述存储器通过总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如第一方面所述的防范容器逃逸的方法。
第四方面,本发明技术方案还提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如第一方面所述的防范容器逃逸的方法。
从以上技术方案可以看出,本发明具有以下优点:定时获取应用容器引擎主机中的容器相关配置和状态信息,将获取到的相关信息与数据库中预置的安全选项进行对比,根据对比结果判断是否存在容器逃逸的安全威胁,若存在相关威胁,则自动进行修复操作,有效消减和降低容器平台因配置不当引起的容器逃逸安全威胁,保证应用容器引擎容器运行环境的安全。
此外,本发明设计原理可靠,结构简单,具有非常广泛的应用前景。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著地进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例的方法的示意性流程图。
图2是本发明一个实施例的系统的示意性框图。
图中,11-定时器模块,22-安全检测模块,33-安全比对模块,44-安全修复模块。
具体实施方式
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
本发明一个实施例提供一种防范容器逃逸的方法,包括如下步骤:
步骤11:每隔设定的时间间隔对容器运行环境进行安全检测;
步骤12:将检测结果与预置容器运行安全配置进行对比并记录对比结果;
若对比一致,执行步骤14;
若对比不一致,执行步骤13;
步骤13:按照预置容器运行安全配置修复容器运行环境中的不安全项,修复完成后,执行步骤14;
步骤14:本次处理结束。
获取容器运行环境配置信息和状态信息并和安全配置对比检测是否存在容器逃逸风险;对容易造成容器逃逸的不安全配置信息自动修复对容器运行环境进行定期检测和修复,防范容器逃逸风险。
如图1所示,本发明另一个实施例提供一种防范容器逃逸的方法,包括如下步骤:
步骤21:启动循环定时器;
步骤22:对容器运行环境的各项配置及状态进行检测;
步骤23:将检测结果与预置容器运行安全配置进行对比并记录对比结果;
若对比一致,执行步骤25;
若对比不一致,执行步骤24;
步骤24:按照预置容器运行安全配置修复容器运行环境中的不安全项,
修复完成后,执行步骤25;
步骤25:本次处理结束。等待定时器超时时,再次执行步骤22。
对容器运行环境进行定期检测和修复,防范容器逃逸风险。
本发明另一个实施例提供一种防范容器逃逸的方法,包括如下步骤:
步骤31:预置容器运行安全配置项相关设置存入数据库;
步骤32:启动循环定时器;
步骤33:启动对容器运行环境的各项配置及状态进行检测;
步骤34:获取数据库中预置的容器运行安全配置项相关设置;
步骤35:将检测结果与获取的数据库中预置的容器运行安全配置项相关设置进行比对;
步骤36:输出逐项详细的对比结果;
若对比一致,执行步骤38;
若对比不一致,执行步骤37;
步骤37:按照预置容器运行安全配置修复容器运行环境中的不安全项,修复完成后,执行步骤38;
步骤38:本次处理结束。等待定时器超时时,再次执行步骤:22。
对容器运行环境进行定期检测和修复,防范容器逃逸风险。
获取容器运行环境配置信息和状态信息并和安全配置对比检测是否存在容器逃逸风险。
需要说明的是,将设置的守护进程安全配置、守护程序文件的所有权及访问权限、应用容器引擎驱动安全配置、容器管理包安全配置、容器配置项安全配置、主机配置的linux审计策略存入数据库。
相应的,对容器运行环境的各项配置及状态进行检测的步骤具体包括:
对守护进程的配置项进行检测,记录检测结果;
对守护程序的文件所有权及访问权限进行检测,记录检测结果;
对应用容器引擎驱动配置项进行检测,记录检测结果;
对容器管理包配置项进行检测,记录检测结果;
对容器配置项进行检测,记录检测结果;
对主机配置是否添加linux审计策略进行检测,记录检测结果。
步骤37中,所述的按照预置容器运行安全配置修复容器运行环境中的不安全项的步骤包括:
修改操作系统、应用容器引擎系统及配置文件,将对比结果中不符合安全配置的配置项修改为数据库中预置的安全配置。
守护进程包括TLS身份认证、客户端授权、进程的实时恢复、日志设置、linux模拟器设置;
应用容器引擎驱动配置包括aufs驱动使用、网桥上容器流量的设置、进程的实时恢复、日志设置、linux模拟器设置;
容器配置包括特权容器使用、根文件系统权限设置。
能够持续自动化监控容器运行环境参数配置,提升容器应用运行时的安全性。
在有些实施例中,首先是,启动循环定时器;启动对容器运行环境的各项配置及状态进行检测;获取数据库中预置的容器运行安全配置项相关设置;将检测结果与获取的数据库中预置的容器运行安全配置项相关设置进行比对;输出逐项详细的对比结果;
若对比一致,本次处理结束;等到循环定时器计时超时时,再次启动对容器运行环境的各项配置及状态进行检测;
若对比不一致,按照预置容器运行安全配置修复容器运行环境中的不安全项,修复完成后,若循环定时器超时时,再次启动对容器运行环境的各项配置及状态进行检测。循环定时器每隔固定时间启动对容器运行环境进行安全检测及安全修复。
具体的实施过程如下:
(1)启动一个循环定时器,该循环定时器每隔固定时间启动对容器运行环境进行安全检测及安全修复,同时数据库中预置容器运行安全配置项相关设置,定时器超时后转(2);预置的安全配置相关选项如下:
数据库中预设的相关配置项包括:
a1、Docker Daemon守护进程包括TLS身份认证、客户端授权、进程的实时恢复、日志设置、userland设置等安全配置;
b1、Docker Daemon守护程序的文件包括docker.service、docker.socket、docker.sock、daemon.json、证书及秘钥文件、/etc/default/docker目录、/etc/docker目录等文件合适的所有权及访问权限;
c1、对Docker driver(应用容器引擎驱动)配置包括aufs驱动使用、网桥上容器流量的设置、进程的实时恢复、日志设置、userland设置等安全配置;
d1、对libcontainer(容器管理包)配置包括限制cgroup的配置、namesapces配置等配置项安全配置;
e1、对docker Container(容器)配置包括特权容器使用、根文件系统权限设置等配置项安全配置;
f1、对主机配置包括docker的守护进程、容器的网络隔离策略、docker文件和目录(如/var/lib/docker、/etc/docker、/etc/default/docker、/etc/sysconfig/docker、/usr/bin/docker-containerd、/usr/bin/docker-runc、docker.service、docker.socket、/etc/docker/daemon.json)等设置linux审计策略。
需要说明的是,Docker(应用容器引擎)采用C/S架构Docker daemon(守护进程)作为服务端接受来自客户的请求,并处理这些请求(创建、运行、分发容器)。客户端和服务端既可以运行在一个机器上,也可通过socket或者RESTful API来进行通信。Docker daemon一般在宿主主机后台运行,等待接收来自客户端的消息。Docker客户端则为用户提供一系列可执行命令,用户用这些命令实现跟Docker daemon交互。
(2)定时器超时触发回调安全检测模块相关处理,按照安全检测模块中定义的安全检测配置项对容器运行环境的各项配置及状态进行检测,获取容器运行环境的各项安全配置并记录检测结果,转(3);
要想对容器运行环境进行全面的安全检测,需要对主机和Docker的相关配置进行扫描,至少包含以下内容:
a2、对Docker Daemon守护进程包括TLS身份认证、客户端授权、进程的实时恢复、日志设置、userland设置等配置项进行检测,记录检测结果;
b2、对Docker Daemon守护程序的文件包括docker.service、docker.socket、docker.sock、daemon.json、证书及秘钥文件、/etc/default/docker目录、/etc/docker目录等文件所有权及访问权限进行检测,记录检测结果;
c2、对Docker driver配置包括aufs驱动使用、网桥上容器流量的设置、进程的实时恢复、日志设置、userland设置等配置项进行检测,记录检测结果;
d2、对libcontainer配置包括限制cgroup的配置、namespaces配置等配置项进行检测,记录检测结果;
e2、对docker Container配置包括特权容器使用、根文件系统权限设置等配置项进行检测,记录检测结果;
f2、对主机配置包括docker的守护进程、容器的网络隔离策略、docker文件和目录(如/var/lib/docker、/etc/docker、/etc/default/docker、/etc/sysconfig/docker、/usr/bin/docker-containerd、/usr/bin/docker-runc、docker.service、docker.socket、/etc/docker/daemon.json)等是否添加linux审计策略进行检测,记录检测结果。
(3)将(2)中获取的安全检测结果与数据库中预置的安全配置和状态进行对比,记录对比结果;如果两者一致则本次处理结束,等待下一次定时器超时转2),如果存在不一致配置项,转(4);
(4)根据(3)中记录的对比结果,按照数据库中预设的安全配置修复容器运行环境中的不安全项,修复完成后本次处理结束,等待定时器超时转(2)。
如图2所示,本发明实施例还提供一种防范容器逃逸的系统,包括定时器模块11、安全检测模块22、安全比对模块33、安全修复模块44;
定时器模块11,用于每隔设定的时间间隔触发安全检测模块进行安全检测;
安全检测模块22,用于接收到定时器模块的触发信号时对对容器运行环境进行安全检测;
安全比对模块33,用于将检测结果与预置容器运行安全配置进行对比并记录对比结果;
安全修复模块44,用于若安全比对模块输出对比不一致;按照预置容器运行安全配置修复容器运行环境中的不安全项。
获取容器运行环境配置信息和状态信息并和安全配置对比检测是否存在容器逃逸风险;对容易造成容器逃逸的不安全配置信息自动修复对容器运行环境进行定期检测和修复,防范容器逃逸风险。
需要说明的是,安全检测模块22,用于接收到定时器模块的触发信号时对应用容器引擎及主机相关配置项进行安全检测。
本发明实施例还提供一种防范容器逃逸的系统,包括定时器模块11、安全检测模块22、安全比对模块33、安全修复模块44;
定时器模块11,用于每隔设定的时间间隔触发安全检测模块进行安全检测;
安全检测模块22,用于接收到定时器模块的触发信号时对对容器运行环境进行安全检测;
安全比对模块33,用于将检测结果与预置容器运行安全配置进行对比并记录对比结果;
安全修复模块44,用于若安全比对模块输出对比不一致;按照预置容器运行安全配置修复容器运行环境中的不安全项。
获取容器运行环境配置信息和状态信息并和安全配置对比检测是否存在容器逃逸风险;对容易造成容器逃逸的不安全配置信息自动修复对容器运行环境进行定期检测和修复,防范容器逃逸风险。
需要说明的是,安全检测模块22,用于接收到定时器模块的触发信号时对应用容器引擎及主机相关配置项进行安全检测。
所述系统还包括预置模块,用于预置容器运行安全配置项相关设置存入数据库。
所述的预置容器运行安全配置项包括:
守护进程安全配置、守护程序文件的所有权及访问权限、应用容器引擎驱动安全配置、容器管理包安全配置、容器配置项安全配置、主机配置的linux审计策略存入数据库。
相应的,安全检测模块,具体用于对守护进程的配置项进行检测,记录检测结果;对守护程序的文件所有权及访问权限进行检测,记录检测结果;对应用容器引擎驱动配置项进行检测,记录检测结果;对容器管理包配置项进行检测,记录检测结果;对容器配置项进行检测,记录检测结果;对主机配置是否添加linux审计策略进行检测,记录检测结果。
本发明实施例还提供一种防范容器逃逸的系统,包括定时器模块11、安全检测模块22、安全比对模块33、安全修复模块44;
定时器模块11,用于每隔设定的时间间隔触发安全检测模块进行安全检测;
安全检测模块22,用于接收到定时器模块的触发信号时对对容器运行环境进行安全检测;
安全比对模块33,用于将检测结果与预置容器运行安全配置进行对比并记录对比结果;
安全修复模块44,用于若安全比对模块输出对比不一致;按照预置容器运行安全配置修复容器运行环境中的不安全项。
获取容器运行环境配置信息和状态信息并和安全配置对比检测是否存在容器逃逸风险;对容易造成容器逃逸的不安全配置信息自动修复对容器运行环境进行定期检测和修复,防范容器逃逸风险。
需要说明的是,安全检测模块22,用于接收到定时器模块的触发信号时对应用容器引擎及主机相关配置项进行安全检测。
所述系统还包括预置模块,用于预置容器运行安全配置项相关设置存入数据库。
所述的预置容器运行安全配置项包括:
守护进程安全配置、守护程序文件的所有权及访问权限、应用容器引擎驱动安全配置、容器管理包安全配置、容器配置项安全配置、主机配置的linux审计策略存入数据库。
相应的,安全检测模块,具体用于对守护进程的配置项进行检测,记录检测结果;对守护程序的文件所有权及访问权限进行检测,记录检测结果;对应用容器引擎驱动配置项进行检测,记录检测结果;对容器管理包配置项进行检测,记录检测结果;对容器配置项进行检测,记录检测结果;对主机配置是否添加linux审计策略进行检测,记录检测结果。
安全比对模块33包括预置设置获取单元、对比单元和输出单元;
预置设置获取单元,用于获取数据库中预置的容器运行安全配置项相关设置;
对比单元,用于将检测结果与获取的数据库中预置的容器运行安全配置项相关设置进行比对;
输出单元,用于输出逐项详细的对比结果。
需要说明的是,安全修复模块,具体用于修改操作系统、应用容器引擎系统及配置文件,将对比结果中不符合安全配置的配置项修改为数据库中预置的安全配置。
守护进程包括TLS身份认证、客户端授权、进程的实时恢复、日志设置、linux模拟器设置;
应用容器引擎驱动配置包括aufs驱动使用、网桥上容器流量的设置、进程的实时恢复、日志设置、linux模拟器设置;
容器配置包括特权容器使用、根文件系统权限设置。
定时获取Docker主机中的容器相关配置和状态信息,将获取到的相关信息与数据库中预置的安全选项进行对比,根据对比结果判断是否存在容器逃逸的安全威胁,若存在相关威胁,则自动进行修复操作,有效消减和降低容器平台因配置不当引起的容器逃逸安全威胁,保证Docker容器运行环境的安全。
本发明实施例提供的一种计算机设备,该设备可以包括:处理器、通信接口、存储器和总线,其中,处理器,通信接口,存储器通过总线完成相互间的通信。总线可以用于电子设备与传感器之间的信息传输。处理器可以调用存储器中的逻辑指令,以执行如下方法:每隔设定的时间间隔对容器运行环境进行安全检测;将检测结果与预置容器运行安全配置进行对比并记录对比结果;若对比一致,则本次处理结束;若对比不一致;按照预置容器运行安全配置修复容器运行环境中的不安全项,修复完成后,本次处理结束。
此外,上述的存储器中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明实施例提供一种非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储计算机指令,该计算机指令使计算机执行上述方法实施例所提供的方法,例如包括:每隔设定的时间间隔对容器运行环境进行安全检测;将检测结果与预置容器运行安全配置进行对比并记录对比结果;若对比一致,则本次处理结束;若对比不一致;按照预置容器运行安全配置修复容器运行环境中的不安全项,修复完成后,本次处理结束。
在一些具体的实施例中,所述可读存储介质中被处理器执行的程序指令,具体可以实现以下步骤:获取数据库中预置的容器运行安全配置项相关设置;将检测结果与获取的数据库中预置的容器运行安全配置项相关设置进行比对;输出逐项详细的对比结果。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
尽管通过参考附图并结合优选实施例的方式对本发明进行了详细描述,但本发明并不限于此。在不脱离本发明的精神和实质的前提下,本领域普通技术人员可以对本发明的实施例进行各种等效的修改或替换,而这些修改或替换都应在本发明的涵盖范围内/任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种防范容器逃逸的方法,其特征在于,包括如下步骤:
每隔设定的时间间隔对容器运行环境进行安全检测;
将检测结果与预置容器运行安全配置进行对比并记录对比结果;
若对比一致,则本次处理结束;
若对比不一致;按照预置容器运行安全配置修复容器运行环境中的不安全项,修复完成后,本次处理结束。
2.根据权利要求1所述的防范容器逃逸的方法,其特征在于,所述的每隔设定的时间间隔对容器运行环境进行安全检测的步骤包括:
启动循环定时器;
对容器运行环境的各项配置及状态进行检测。
3.根据权利要求2所述的防范容器逃逸的方法,其特征在于,所述的将检测结果与预置容器运行安全配置进行对比并记录对比结果的步骤之前还包括:
预置容器运行安全配置项相关设置存入数据库。
4.根据权利要求3所述的防范容器逃逸的方法,其特征在于,所述的将检测结果与预置容器运行安全配置进行对比并记录对比结果的步骤
获取数据库中预置的容器运行安全配置项相关设置;
将检测结果与获取的数据库中预置的容器运行安全配置项相关设置进行比对;
输出逐项详细的对比结果。
5.根据权利要求4所述的防范容器逃逸的方法,其特征在于,所述的预置容器运行安全配置项相关设置存入数据库的步骤包括:
将设置的守护进程安全配置、守护程序文件的所有权及访问权限、应用容器引擎驱动安全配置、容器管理包安全配置、容器配置项安全配置、主机配置的linux审计策略存入数据库。
6.根据权利要求5所述的防范容器逃逸的方法,其特征在于,对容器运行环境的各项配置及状态进行检测的步骤具体包括:
对守护进程的配置项进行检测,记录检测结果;
对守护程序的文件所有权及访问权限进行检测,记录检测结果;
对应用容器引擎驱动配置项进行检测,记录检测结果;
对容器管理包配置项进行检测,记录检测结果;
对容器配置项进行检测,记录检测结果;
对主机配置是否添加linux审计策略进行检测,记录检测结果。
7.根据权利要求6所述的防范容器逃逸的方法,其特征在于,所述的按照预置容器运行安全配置修复容器运行环境中的不安全项的步骤包括:
修改操作系统、应用容器引擎系统及配置文件,将对比结果中不符合安全配置的配置项修改为数据库中预置的安全配置。
8.一种防范容器逃逸的系统,其特征在于,包括定时器模块、安全检测模块、安全比对模块、安全修复模块;
定时器模块,用于每隔设定的时间间隔触发安全检测模块进行安全检测;
安全检测模块,用于接收到定时器模块的触发信号时对对容器运行环境进行安全检测;
安全比对模块,用于将检测结果与预置容器运行安全配置进行对比并记录对比结果;
安全修复模块,用于若安全比对模块输出对比不一致;按照预置容器运行安全配置修复容器运行环境中的不安全项。
9.一种计算机设备,其特征在于,包括存储器和处理器,所述处理器和所述存储器通过总线完成相互间的通信;所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1至7任一项权利要求所述的防范容器逃逸的方法。
10.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行如权利要求1至7任一项权利要求所述的防范容器逃逸的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110866389.8A CN113761537A (zh) | 2021-07-29 | 2021-07-29 | 一种防范容器逃逸的方法、系统、设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110866389.8A CN113761537A (zh) | 2021-07-29 | 2021-07-29 | 一种防范容器逃逸的方法、系统、设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113761537A true CN113761537A (zh) | 2021-12-07 |
Family
ID=78788182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110866389.8A Pending CN113761537A (zh) | 2021-07-29 | 2021-07-29 | 一种防范容器逃逸的方法、系统、设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113761537A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117056030A (zh) * | 2023-10-10 | 2023-11-14 | 苏州元脑智能科技有限公司 | 容器逃逸的确定方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019174048A1 (zh) * | 2018-03-16 | 2019-09-19 | 华为技术有限公司 | 容器逃逸检测方法、装置、系统及存储介质 |
CN113110912A (zh) * | 2020-01-13 | 2021-07-13 | 中国移动通信有限公司研究院 | 一种容器安全保护方法和电子设备 |
-
2021
- 2021-07-29 CN CN202110866389.8A patent/CN113761537A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019174048A1 (zh) * | 2018-03-16 | 2019-09-19 | 华为技术有限公司 | 容器逃逸检测方法、装置、系统及存储介质 |
CN113110912A (zh) * | 2020-01-13 | 2021-07-13 | 中国移动通信有限公司研究院 | 一种容器安全保护方法和电子设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117056030A (zh) * | 2023-10-10 | 2023-11-14 | 苏州元脑智能科技有限公司 | 容器逃逸的确定方法及装置 |
CN117056030B (zh) * | 2023-10-10 | 2024-02-09 | 苏州元脑智能科技有限公司 | 容器逃逸的确定方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2019246773B2 (en) | Systems and methods of risk based rules for application control | |
CN106326699B (zh) | 一种基于文件访问控制和进程访问控制的服务器加固方法 | |
US9467465B2 (en) | Systems and methods of risk based rules for application control | |
EP2860657B1 (en) | Determining a security status of potentially malicious files | |
CN110233817B (zh) | 一种基于云计算的容器安全系统 | |
WO2014113501A1 (en) | Systems and methods for identifying and reporting application and file vulnerabilities | |
EP3270318B1 (en) | Dynamic security module terminal device and method for operating same | |
CN109753796B (zh) | 一种大数据计算机网络安全防护装置及使用方法 | |
CN110740140A (zh) | 一种基于云平台的网络信息安全监管系统 | |
CN111131170A (zh) | 主机审计系统的客户端策略处理方法 | |
CN115701019A (zh) | 零信任网络的访问请求处理方法、装置及电子设备 | |
CN113761537A (zh) | 一种防范容器逃逸的方法、系统、设备、存储介质 | |
CN112347461A (zh) | 工控系统登录管控方法、装置、电子装置和存储介质 | |
CN117032831A (zh) | 一种可信dcs上位机系统、其启动方法及软件启动方法 | |
CN113922975A (zh) | 一种安全控制方法、服务器、终端、系统和存储介质 | |
WO2007074992A1 (en) | Method for detecting malicious code changes from hacking of program loaded and executed on memory through network | |
CN113141362B (zh) | 一种智能终端和服务器安全交互控制方法 | |
CN110417615B (zh) | 校验开关控制方法、装置、设备及计算机可读存储介质 | |
CN113987435A (zh) | 非法提权检测方法、装置、电子设备及存储介质 | |
CN104796253B (zh) | 独立密码验证方法及装置、存储介质 | |
CN111159714A (zh) | 一种访问控制中主体运行时可信验证方法及系统 | |
Sun | A Security Reinforcement Method for Intranet Computer Terminal | |
CN111814157A (zh) | 数据安全处理系统、方法、存储介质、处理器及硬件安全卡 | |
CN113504971B (zh) | 基于容器的安全拦截方法及系统 | |
CN112398792B (zh) | 登录的防护方法、客户端、中控管理设备及存储介质 |
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 |