近年来,云原生技术应用日益广泛,而容器编排平台Kubernetes(k8s)的出现,使得我们的服务具备了前所未有的灵活性和扩展性。然而,这同时也带来了诸多云原生安全问题。近期曝出的Runc CVE-2024-21626 缺陷,造成了容器逃逸的问题,引发了很大的关注。这个问题出现的原因,是在runc 1.1.11及之前的版本中,因文件描述符泄露,容器进程在宿主文件系统中拥有了工作目录权限,从而容易被攻击者利用,实现容器逃逸。得益于这个问题,我们重新认识到了不论是身份和权限控制、网络攻击等方面的问题,都对我们的服务和数据安全构成了威胁。本文的目的是深入探讨云原生环境下的安全脆弱性,并介绍配套的工具和方法,帮助企业在步入云原生大门时关好每扇安全窗。
云原生技术架构下,一些常见的容器应用、K8s编排和其他构建模块的复杂性可能给系统安全带来挑战:
为应对上描述的挑战,业界已经提出了一系列方法和最佳实践。比如,Gartner 的分析师David Cearley首次提出的DevSecOps模型。相比于传统软件开发流程中的安全防护,DevSecOps将安全防护理念融入到了整个软件开发生命周期中,同时保证了企业应用快速开发的前提下,达到全面自动化的安全部署,以达到软件和供应链的安全。
事实上,据Gartner预估,到2025年,60%的企业将采取并实质性实践DevSecOps。此外,2023年的云栖大会指出,多数企业目前的云原生安全发展程度还远远滞后于应用的云原生化程度。主要的改进方向包括:
而对于以上提出的改进方向,我们已经有了行之有效的解决方案:
结语
云原生安全渐成为企业不可或缺的一环。采用主动防御策略,借助安全工具和技术建立起稳固的安全防线,是抵御网络攻击的基础。有效的安全方法论和云原生的安全最佳实践,可以帮助我们在云原生环境中构建一个更安全、更可靠的未来。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。