领航者洞察 | 云原生下的容器安全

Posted 数字化领航

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了领航者洞察 | 云原生下的容器安全相关的知识,希望对你有一定的参考价值。

2013年Docker容器引擎以及2015年Kubernetes容器编排管理调度框架的开源推动容器技术在全球范围内受到广泛关注,容器的敏捷、轻简和兼容性使其成为云原生体系中最重要的一环。容器技术依托其轻量化、高效、可移植性强的特点,推动云应用从瀑布式的开发部署转变为可独立开发和部署的松耦合服务。随着容器技术在云化场景的大量应用,大量的容器云和容器实例暴露于互联网,攻击者一旦针对容器云脆弱性发起攻击,将严重影响整个云平台的安全。

云计算驱动容器技术快速发展

云计算技术改变了信息资源的部署和使用方式,企业通过将传统应用迁移到云服务器上以实现上云,在这种背景下,以Kubernetes容器管理调度框架和Docker容器管理器为核心的容器云技术生态逐渐形成,容器构成了云原生的生态框架及其应用的环境支持。

相较于基于虚拟化的云计算架构,基于容器技术的云应用能够满足企业对云上业务快速“迭代-开发-上线”的业务需求。首先,基于容器技术的云应用能够以更小的颗粒度调用云服务器资源,其弹性扩容表现较虚拟化架构更优;其次,底层云资源的容器化进一步放大了云计算的弹性拓展优势,能够以更敏捷的状态启动、关闭和复制应用程序;最后,微服务架构和DevOps借助容器技术的普及快速推广应用,也加快了业务落地。

容器技术本质上也是虚拟化,可以被视作更为轻量、高效的虚拟机。一方面,容器镜像在封装时并不涉及操作系统,仅封装程序本身和必要的环境文件,使得每个容器占用的服务器资源更少、启动和运行较虚拟机更快,对资源的使用效率更高;另一方面,部署容器无需预先考虑程序运行环境的兼容性问题,可以实现服务编排、多环境支持、简化部署、快速启动、易于迁移,能够提高应用程序的运行效率与系统资源利用率。

容器带来的安全挑战

从简单的应用容器化,到云原生应用的开发,容器技术快速发展与在实际场景中的普及。由于容器以及容器应用带来的安全风险频出,而传统的防火墙等安全设备无法满足快速、灵活的容器部署方式,容器安全成为企业上云后尤为关心的问题。容器带来的安全挑战主要包括内核、镜像、主机、网络和管理等维度。

内核维

容器之间共享宿主机内核,容器进程和宿主机操作系统之间存在数据交互且缺乏域间隔离与防护机制。同时,虽然容器基于命名空间和控制群组机制实施资源隔离与控制,但系统运行的关键数据、系统内核模块难以被命名空间化,将暴露给所有容器,存在被攻击的风险。

镜像维

一方面,容器镜像仓库存在风险,包括与镜像仓库的连接不安全、镜像仓库中的镜像过时和不完备的认证机制;另一方面,容器镜像本身存在风险,包括可能存在安全漏洞、镜像配置缺陷、恶意软件植入、未信任镜像及明文存储的风险。

主机维

由于容器间共享宿主机资源,一旦宿主机资源遭到滥用,可能引发位于主机内部DDoS攻击,而此时由于攻击流量不经过网络边界,传统防火墙等安全设备难以检测处理。另外,由于容器与宿主机共享内核,攻击者可利用容器漏洞进行提权,发起逃逸攻击,例如,可以通过容器漏洞获取宿主机的root权限,从而控制宿主机上所有容器。

网络维

容器网络默认使用桥接模式,通过在宿主机上创建虚拟网桥扮演传统交换机的角色,容器间通信都会经过容器主机。如果各容器之间没有隔离保护,攻击者可能会利用主机内网发起网络攻击。在Overlay Network 模式下,由于容器间的连接并未有效控制,可能会导致如嗅探、广播风暴等。

管理维

一方面,容器编排工具存在风险,包括管理访问权限不受限制、未经授权的访问、容器间网络流量隔离效果差、混合不同敏感级别的工作负载、编排节点的可信问题;另一方面,容器实例存在风险,包括运行时软件中的漏洞、容器的网络访问不受限制、容器运行时配置不安全、流氓容器等。

云原生下的容器安全防护方案

云原生是一套技术体系和方法论,代表着云应用从设计之初即考虑到云的环境,为云而设计,在云上以最优状态运行,充分利用和发挥云平台的弹性和分布式优势,这就要求云原生下的容器安全防护涵盖镜像构建/存储/分发阶段、容器构建、容器运行等阶段。例如,在CI/CD阶段,在DevSecOps中将容器集成到CI/CD的原生工具中,而不是事后发现和修复安全漏洞;在镜像构建阶段,通过镜像检测来发现镜像漏洞问题和修复;在容器运行阶段,通过运行时监控发现和防御木马、漏洞等。从具体的措施来看,主要包括:

01、

容器主机加固

容器主机要适当地避免直接运行程序,同时应用容器化,为容器主机节省资源,使得容器主机的功能在最大程度上进行缩减。

02、

加强容器主机权限控制

避免赋予容器超级用户权限,使用类强制访问控制技术隔离容器超级用户,强制执行限制对主机资源和超级用户访问。

03、

加强容器主机资源隔离

为容器主机自用的磁盘、内存、交换分区等划定单独区域,容器主机资源要进行隔离,必要时要对容器实施不可访问权限。

04、

容器镜像检测管理

对镜像进行安全管理和检测,对于多余不可用的镜像进行删除处理。检查镜像是否有恶意篡改的代码。对镜像仓库的镜像进行检测。

05、

容器安全策略执行

对容器的镜像、运行时等设置安全策略,通过告警或者阻断的方式发现并修复风险。

06、

合规基线检测

对容器服务的合规配置、容器启动运行时的合规配置等进行合规检测,并生成相应报告。

07、

运行时检测

在容器运行过程中,发现容器内异常行为(包括恶意木马/病毒程序运行、恶意文件访问、恶意系统 API 调用等)并进行实时告警。

08、

安全监控与审计

在容器中部署安全Agent,通过扩展内核进程间通信功能使容器间通信全部通过安全容器进行,及时做出阻塞进程、报警等响应。


领航者洞察

汇聚专家观点,分享产业实践

新华三携手业内知名研究机构

以犀利的技术嗅觉,专业的趋势分析

引领数字技术创新,洞见企业转型之道


领航者洞察 | 云原生下的容器安全

以上是关于领航者洞察 | 云原生下的容器安全的主要内容,如果未能解决你的问题,请参考以下文章

实战化场景下的容器安全攻防之道

实战化场景下的容器安全攻防之道

实战化场景下的容器安全攻防之道

云原生场景下的容器网络隔离技术

云原生大趋势下的容器化技术现状与发展

云原生应用安全落地,你需要了解的容器安全体系