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

一种容器内进程、文件和网络访问控制方法与流程

2022-06-01 08:16:48 来源:中国专利 TAG:


1.本发明涉及到信息安全技术领域,尤其涉及到一种容器内进程、文件和网络访问控制方法。


背景技术:

2.随着容器技术的迅速发展,企业服务器的整个基础设施模式也随之产生了巨大的变化,由原来的程序代码直接运行在物理机或者虚拟机上的形式转变为基于容器的方式部署在传统物理机或者是虚拟机上。因此,原来的物理服务器变成了一个大的物理资源池,所有的业务都迁入容器内,容器之间相互隔离,从而实现共享计算资源,大大优化了资源的利用率,但与此同时,安全场景也随之发生改变,容器内的安全问题也随之整个部署模式的变更变得越来越凸显,如何管理和控制容器内的行为成为安全从业人员一个重要的研究课题。


技术实现要素:

3.本发明的目的是为了克服现有技术的不足,提供了一种容器内进程、文件和网络访问控制方法。
4.本发明是通过以下技术方案实现:
5.本发明提供了一种容器内进程、文件和网络访问控制方法,该容器内进程、文件和网络访问控制方法包括以下步骤:
6.s1:在宿主机上创建动态共享库程序;
7.s2:在所述宿主机上安装探针容器,并通过所述探针容器将所述动态共享库程序放入所述宿主机上需要监控的业务容器中;
8.s3:部署安全运营平台,并使所述安全运营平台与所述探针容器保持通信,安全运营人员通过所述安全运营平台动态配置安全策略,将需要阻断的进程名、文件访问、网络连接下发到所述探针容器;
9.s4:所述探针容器根据所述安全运营平台下发的安全策略,进行配置动态共享库文件、安全规则文件并监控回执管道文件;
10.s5:所述宿主机上需要监控的业务容器内的行为触发所述安全策略后,把事件记录写入管道,所述探针容器监听到事件发生,向所述安全运营平台上报容器安全事件,所述安全运营平台显示告警。
11.在步骤s1中,所述动态共享库程序为通过c语言编写的一个动态库文件,该动态库文件记为lib.so,该动态库文件hook了libc库的函数。
12.在步骤s1中,所述宿主机的数量可以为多台,在每台所述宿主机上均创建所述动态共享库程序。
13.在步骤s2中,在每台所述宿主机上均安装所述探针容器,且每台所述宿主机上创建的所述动态共享库程序和安装的所述探针容器同时发布。
14.在步骤s3中,所述安全运营平台为所述探针容器的管理系统,安全运营人员可以通过浏览器访问所述安全运营平台,然后通过与所述浏览器交互的方式配置所述安全策略。
15.在步骤s3中,所述安全运营平台可以以部署在容器的方式部署在集群内,也可以直接部署在物理服务器上。
16.本发明的有益效果是:本发明通过preload hook系统函数,对程序性能损耗低,无依赖;可实时动态配置安全策略,配置即生效;可实时接收触发安全策略的行为,上报安全运营平台;基于容器维度进行配置,控制范围粒度更细;风险更低,只会影响容器,对宿主机无影响,保证宿主机的可用性。
附图说明
17.图1是本发明实施例提供的容器内进程、文件和网络访问控制方法的流程图;
18.图2是本发明实施例提供的容器内进程、文件和网络访问控制方法的架构图。
具体实施方式
19.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
20.目前,如何管理和控制容器内的行为成为安全从业人员一个重要的研究课题,现有解决方案通常有如下四种:
21.一、基于apparmor实现应用访问控制。该方案优点在于:属于内核模块,安全稳定;但缺点也很明显,那就是:有的linux发行版本不一定支持该内核模块。
22.二、基于ptrace技术实现访问控制。该方案优点在于:可动态跟踪所有进程,灵活性好;但缺点也很明显,那就是:性能损耗严重,内核态和用户态切换频繁;程序复杂性高,对业务造成影响可能性较高。
23.三、基于宿主机层面的preload技术实现的访问控制。该方案优点在于:可控制所有系统调用,无法绕过;但缺点也很明显,那就是:静态编译或者不使用libc的程序无法控制;控制粒度大,即影响范围大。
24.四、基于增加内核模块的方式实现访问控制。该方案优点在于:对程序性能损耗低,无依赖;可控制所有使用libc的程序;一次配置,所有容器生效;但缺点也很明显,那就是:程序复杂性高,兼容性要求非常高;风险较大,影响范围大。
25.通过上述描述不难看出,现有解决方案各有优点,但缺点也十分明显。为此,本发明实施例提供了一种容器内进程、文件和网络访问控制方法,以克服上述缺点。请参考图1,图1是本发明实施例提供的容器内进程、文件和网络访问控制方法的流程图,该容器内进程、文件和网络访问控制方法包括以下步骤:
26.s1:参考图2,在宿主机10上创建动态共享库程序。动态共享库程序为通过c语言编写的一个动态库文件,该动态库文件记为lib.so,该动态库文件hook了libc库的函数。hook相关系统调用,例如:execve、open、connect等。宿主机10的数量可以为多台,在每台宿主机10上均创建动态共享库程序。
27.s2:继续参考图2,在宿主机10上安装探针容器20,并通过探针容器20将动态共享库程序放入宿主机10上需要监控的业务容器30中。业务容器30即用户设置的需要监控的容器。宿主机10上需要监控的业务容器30的数量可以为多个,多个业务容器30在图2中以容器1、容器2、容器3的方式表示。前述提到,宿主机10的数量可以为多台,在每台宿主机10上需要监控的业务容器30的数量均可以为多个。此外,在每台宿主机10上均安装探针容器20,并且每台宿主机10上创建的动态共享库程序和安装的探针容器20同时发布。
28.s3:部署安全运营平台40,并使安全运营平台40与探针容器20保持通信,安全运营人员通过安全运营平台40动态配置安全策略,将需要阻断的进程名、文件访问、网络连接下发到探针容器20,即宿主机10上的探针容器20。安全运营平台40可以理解为探针容器20的管理系统,安全运营人员可以通过浏览器访问安全运营平台40,然后通过与浏览器交互的方式配置安全策略。应当理解的是,安全策略是指需要阻断的进程名、文件访问、网络连接这些安全配置。安全运营平台40可以以部署在容器的方式部署在集群内,也可以直接部署在物理服务器上,前提是每台宿主机10上安装的探针容器20到安全运营平台40的网络通信是连通的。
29.s4:探针容器20根据安全运营平台40下发的安全策略,进行配置动态共享库文件、安全规则文件并监控回执管道文件。即每台宿主机10上安装的探针容器20均进行上述配置。
30.s5:宿主机10上需要监控的业务容器30内的行为触发安全策略后,把事件记录写入管道,探针容器20监听到事件发生(需要说明的是,是同一台宿主机10上的探针容器20能够监听到事件发生),然后向安全运营平台40上报容器安全事件,安全运营平台40显示告警。
31.通过上述描述不难看出,本发明通过preload hook系统函数,对程序性能损耗低,无依赖;可实时动态配置安全策略,配置即生效;可实时接收触发安全策略的行为,上报安全运营平台;基于容器维度进行配置,控制范围粒度更细;风险更低,只会影响容器,对宿主机无影响,保证宿主机的可用性。
32.以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
再多了解一些

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

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

相关文献