本发明涉及软件运维领域,具体而言,涉及一种容器镜像的漏洞修复方法及装置、电子设备及存储介质。
背景技术:
1、随着软件工程的不断发展,容器化技术(如docker)在软件开发和部署中得到广泛应用,容器化技术的容器镜像是构建和运行容器的基础,容器镜像包含了应用程序及其依赖的所有组件和配置,容器镜像的主要优势之一是其可移植性和可复制性,使得开发人员能够在不同的环境中轻松部署和运行应用程序。
2、容器镜像在部署和运行过程中可能存在各种安全漏洞和配置问题,这些漏洞可能导致恶意用户或攻击者利用容器的弱点来入侵系统、窃取敏感数据或破坏应用程序,为了保障应用程序和基础设施的安全性,进行容器镜像的漏洞检测及修复至关重要,相关技术中,容器镜像的漏洞扫描和漏洞修复是人为执行的,修复效率较低。
3、针对上述的问题,目前尚未提出有效的解决方案。
技术实现思路
1、本发明实施例提供了一种容器镜像的漏洞修复方法及装置、电子设备及存储介质,以至少解决相关技术中,手动执行容器镜像的漏洞扫描和修复操作,修复效率较低的技术问题。
2、根据本发明实施例的一个方面,提供了一种容器镜像的漏洞修复方法,包括:构建ci/cd流程,并将容器镜像的漏洞修复流程集成到所述ci/cd流程中,其中,所述ci/cd流程用于持续对所述容器镜像执行漏洞扫描和修复操作;在所述ci/cd流程中基于预设的漏洞扫描规则对容器镜像进行漏洞扫描,得到扫描结果;在所述扫描结果指示所述容器镜像存在漏洞的情况下,对所述容器镜像进行漏洞评估,得到漏洞等级;在所述ci/cd流程中基于所述漏洞等级调用漏洞修复策略,并基于所述漏洞修复策略对所述容器镜像进行漏洞修复。
3、进一步地,ci/cd流程是通过安全编排与自动化响应系统构建的。
4、进一步地,在构建ci/cd流程之后,还包括:在所述ci/cd流程中定义漏洞扫描规则和漏洞修复规则。
5、进一步地,在构建ci/cd流程之前,还包括:获取历史容器镜像漏洞;对所述历史容器镜像漏洞进行漏洞评估,得到每个容器镜像漏洞评估分值;基于所述评估分值进行对所述容器镜像漏洞进行划分,得到漏洞等级;为不同漏洞等级的所述历史容器镜像漏洞配置漏洞修复策略,并将所述漏洞等级和所述漏洞修复策略存储至数据库。
6、进一步地,对所述容器镜像进行漏洞评估的步骤包括:获取所述容器镜像的漏洞对应的cvss评分;确定所述容器镜像的漏洞是否受外网影响,并为所述容器镜像的漏洞配置外网影响标签;确定所述容器镜像所属的类型是否为线上应用,并为所述容器镜像的漏洞配置类型影响标签;确定所述容器镜像的漏洞是否公开poc,并为所述容器镜像的漏洞配置poc影响标签;基于所述cvss评分、所述外网影响标签、所述类型影响标签和所述poc影响标签计算漏洞评估分值,并基于所述漏洞评估分值对所述容器镜像进行漏洞评估。
7、进一步地,在基于所述漏洞修复策略对所述容器镜像进行漏洞修复之后,还包括:基于所述扫描结果和漏洞修复操作生成漏洞修复报告。
8、进一步地,基于所述漏洞修复策略对所述容器镜像进行漏洞修复包括:在所述漏洞等级指示所述容器镜像的漏洞属于系统级漏洞的情况下,确定所述容器镜像所属的类型;基于所述容器镜像所属的类型创建修复补丁,并基于所述修复补丁对所述容器镜像的漏洞进行修复。
9、根据本发明实施例的另一方面,还提供了一种容器镜像的漏洞修复装置,包括:构建单元,用于构建ci/cd流程,并将容器镜像的漏洞修复流程集成到所述ci/cd流程中,其中,所述ci/cd流程用于持续对所述容器镜像执行漏洞扫描和修复操作;扫描单元,用于在所述ci/cd流程中基于预设的漏洞扫描规则对容器镜像进行漏洞扫描,得到扫描结果;评估单元,用于在所述扫描结果指示所述容器镜像存在漏洞的情况下,对所述容器镜像进行漏洞评估,得到漏洞等级;修复单元,用于在所述ci/cd流程中基于所述漏洞等级调用漏洞修复策略,并基于所述漏洞修复策略对所述容器镜像进行漏洞修复。
10、进一步地,ci/cd流程是通过安全编排与自动化响应系统构建的。
11、进一步地,所述容器镜像的漏洞修复装置还包括:第一定义模块,用于在所述ci/cd流程中定义漏洞扫描规则和漏洞修复规则。
12、进一步地,所述容器镜像的漏洞修复装置还包括:第一获取模块,用于获取历史容器镜像漏洞;第一评估模块,用于对所述历史容器镜像漏洞进行漏洞评估,得到每个容器镜像漏洞评估分值;第一划分模块,用于基于所述评估分值进行对所述容器镜像漏洞进行划分,得到漏洞等级;第一配置模块,用于为不同漏洞等级的所述历史容器镜像漏洞配置漏洞修复策略,并将所述漏洞等级和所述漏洞修复策略存储至数据库。
13、进一步地,所述评估单元包括:第二获取模块,用于获取所述容器镜像的漏洞对应的cvss评分;第一确定模块,用于确定所述容器镜像的漏洞是否受外网影响,并为所述容器镜像的漏洞配置外网影响标签;第二确定模块,用于确定所述容器镜像所属的类型是否为线上应用,并为所述容器镜像的漏洞配置类型影响标签;第三确定模块,用于确定所述容器镜像的漏洞是否公开poc,并为所述容器镜像的漏洞配置poc影响标签;第一评估模块,用于基于所述cvss评分、所述外网影响标签、所述类型影响标签和所述poc影响标签计算漏洞评估分值,并基于所述漏洞评估分值对所述容器镜像进行漏洞评估。
14、进一步地,所述容器镜像的漏洞修复装置还包括:第一生成模块,用于基于所述扫描结果和漏洞修复操作生成漏洞修复报告。
15、进一步地,所述修复单元包括:第四确定单元,用于在所述漏洞等级指示所述容器镜像的漏洞属于系统级漏洞的情况下,确定所述容器镜像所属的类型;第一修复单元,用于基于所述容器镜像所属的类型创建修复补丁,并基于所述修复补丁对所述容器镜像的漏洞进行修复。
16、根据本发明实施例的另一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行上述任意一项容器镜像的漏洞修复方法。
17、根据本发明实施例的另一方面,还提供了一种电子设备,包括一个或多个处理器和存储器,所述存储器用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现上述任意一项容器镜像的漏洞修复方法。
18、在本公开中,通过以下步骤:先构建ci/cd流程,并将容器镜像的漏洞修复流程集成到ci/cd流程中,其中,ci/cd流程用于持续对容器镜像执行漏洞扫描和修复操作,再在ci/cd流程中基于预设的漏洞扫描规则对容器镜像进行漏洞扫描,得到扫描结果,然后在扫描结果指示容器镜像存在漏洞的情况下,对容器镜像进行漏洞评估,得到漏洞等级,最后在ci/cd流程中基于漏洞等级调用漏洞修复策略,并基于漏洞修复策略对容器镜像进行漏洞修复。
19、在本公开中,通过构建ci/cd流程,将容器镜像的检测和修复操作进行集成,使得ci/cd流程可以实现漏洞检测和修复的自动化,在对容器镜像进行漏洞修复时,先对容器镜像进行漏洞评估,根据评估结果确定漏洞等级,从而调用漏洞修复策略,实现容器镜像漏洞的精准修复和快速修复,进而解决了相关技术中,手动执行容器镜像的漏洞扫描和修复操作,修复效率较低的技术问题。