快进键启动,一文带你了解云原生时代容器安全

简介: 分享阿里云容器安全的治理能力与经验,致力保护生产环境安全。
都说国内需求离容器化还远,更谈不上关注安全,喊的热闹而落地困难。但总得有些声音面向将来向前看。数据库

在2020年Forrester IaaS安全评测中,阿里云容器安全和谷歌并列满分,技术能力领跑市场。阿里云在云计算各领域技术一直领先一步,包括云原生安全,和做为其重要组成的容器安全。
本文总结了阿里云容器安全的治理能力和经验,呈现云原生时代容器安全涌现的新特色。帮助将来的你全面理解容器安全,保护生产环境安全。安全

随着阿里云前进的脚印,咱们首先来理解容器是什么,以及容器和云原生的关系。服务器

理解容器第一步:云原生”大楼“的底座

2010年,云原生的概念第一次在WSO2的首席技术官Paul Fremantle的博客中被说起,其后经历了Pivotal、CNCF等机构的补充,加入了DevOps、持续交付、微服务、容器、服务网格(Service Mesh)、不可改变的基础设施、声明式API等技术,经过这些技术能够构建出高弹性、高虚拟化、高容错性、自恢复、易管理的分布式架构系统。网络

但随着云原生所包含的概念愈来愈广,任何对其的定义彷佛都有管中窥豹的嫌疑。与其纠结定义的完整性,咱们不妨把目光转向云原生给企业带来的好处和改变。架构

总结精炼四个关键词:低成本、高可用、高安全、高效率。并发

低成本运维

企业服务器成本和虚拟损耗大幅减小。从物理主机,到虚拟化,再到容器化,客户没必要再进行线下机房管理、使用资源占用量高的虚拟机,大大节约成本。机器学习

image.png

高可用分布式

优雅地解决高并发场景下容量问题。在云原生容器化时代,不封装操做系统的容器,直接运行于主机内核之上,对系统资源的占用更少。加之镜像封装的技术,能够实现其大规模自动化部署,配合分布式架构,弹性扩容能力极强。微服务

高安全

攻击面减小。IDC时代,全部的应用、进程都在一台服务器上运行,一旦某个进程被恶意突破,整个主机都面临巨大的风险。而在容器架构中,单个容器中可能只有一个进程,就算被攻击突破,对主机的影响也有限。

高效率

云原生倡导DevSecOps理念,而容器化使得在开发过程当中使用CI/CD(快速集成和快速部署)成为可能,极大地提高了应用开发和程序运行的效率。

咱们不难发现,云原生和容器之间的紧密关系。能够说,容器完全改变了企业IT基础设施的架构方式,是搭建云原生的关键。
若是说云原生是一栋高楼大厦,那么容器化即是这座大楼的底座,向上支撑分布式架构、微服务和不一样工做负载,向下封装基础设施,屏蔽了底层架构的差别性,以自身镜像封装、内核共享、便利扩容等特性,构建了一栋云原生大厦。
随着企业上云率不断提高,愈来愈多的企业选择在生产环境中使用容器架构。

CNCF 2020年发布的报告中显示,在生产中应用容器的企业比例从去年的84%增加到今年的92%。艾瑞咨询在《中国容器云市场研究报告》中显示,2020年有84.7%的中国企业已经&计划使用容器。

但历史的经验告诉咱们,全部繁荣景象之上,都悬着一把达摩克里斯之剑,Tripwire 2019年对311位IT安全专业人员进行了调研,发现60%的组织都遭遇过容器安全事故,容器的背后存在着巨大的安全隐患。

理解容器风险第二步:运输中的“集装箱”

既然容器构成了云原生这座大厦的基座,那么防御容器安全就不只仅是防御容器的安全这么简单。

若是咱们把容器当作一个个封装好的集装箱,想要让箱内的货物顺利配送到客户手上,那么从集装箱的制做、安装、打包、到运输箱子的货轮、快递配送员的安全,都须要考虑在内。

也就是说,咱们须要在总体的DevSecOps的开发流程中,考虑容器的安全:

image.png

根据上图咱们能够看到,在容器的全生命周期中,涉及到四个部分的安全风险:

基础设施

容器构建于云平台/服务器之上,硬件设施、内核、云平台的安全是容器安全的基础,基础设施安全是容器安全的第一步。

供应链

当基础平台安全后,开发者能够在云上创建一整套DevOps的开发流程,经过容器化来提高交付效率,那么首先须要完成容器的构建和部署。

容器内部通常分为三层,底层为BootFS文件系统,中层为镜像层,上层为可改写的容器层:

image.png

容器内部层次

容器的构建依赖于镜像,镜像由镜像库管理。在构建容器过程当中只须要从镜像库中调取镜像便可。若是因为镜像库管理不当,混入了恶意镜像,或者镜像遭到损坏,有漏洞的镜像没有及时更新,镜像的认证和受权限制不足等,会给容器带来巨大的安全隐患。

容器构建完成以后,还须要对其进行正确的部署,拿容器网络来举例,在默认的-host的网络配置下,容器运行时默承认以经过网络访问其余容器及主机操做系统,一旦单个容器被入侵就可能影响到宿主机上部署的全部容器。根据StackRox的报告,配置错误偏偏是企业对于容器安全最担心的部分。

容器运行时

容器构建完毕以后,依赖Cgroup、Namespace、Capability等功能在内核上实现互相隔离,并使用编排工具和容器运行时组件进行批量化管理和使用。

而编排平台,如Kubernetes、OpenShift等,存在很多高危漏洞,根据NVD(National Vulnerablity Database)的数据统计,光是K8S平台被找到的CVE漏洞就有109个,其中严重(Critical)的漏洞有10个,高危(High)的漏洞有39个,一旦使用者没有及时修复相关漏洞,就有可能被攻击者利用,威胁容器安全。

image.png

image.png

应用安全

当咱们顺藤摸瓜一步步往上走,从基础设施层到网络层,最终到达处于最上层的应用层,也就是容器这条船上承载的一个个“货物”,较为容易遭受DDoS攻击、帐号盗用、数据泄露等攻击。

除了在总体开发流程中理解容器安全外,容器自己的特性也给安全防御带去了不同的侧重点:

一、容器隔离性差

和虚拟机基于系统的隔离不一样,容器是基于进程的隔离,没有明确的安全边界, 更容易发生容器逃逸、宿主机内核遭受攻击的问题。

二、容器存活时间短

和传统的虚拟机相比,容器具备轻量级的优点,能够快速部署,快速迭代,这也意味着单个容器的存活时间也急速变短。据Datadog的数据统计,传统云虚拟机的平均生存周期是23天,而容器只有2.5天,极短的存活期致使在运行时对它进行保护变得更加困难,因此在供应链侧就要保证容器的安全。

此外,容器的更新速度也对镜像库的更新速度有了更高的要求。

三、容器部署密度高

因为大规模部署,对容器的批量化管理必然须要使用编排工具,对于编排工具、镜像库、镜像的安全保障就变得更为重要。

理解容器安全第三步:动态防御全生命周期

在对容器的生命周期进行梳理以后,咱们会发现防御容器安全,其实就是防御生产环境的安全。那么在整个链路中,容器最常遭受的攻击是什么,企业应该如何防御?

阿里云从2011年即开启了探索的脚步,推动容器化的技术改造和落地,推动云原生技术,2020年完成了核心系统全面云原生化,积累了大量的实践经验,同步发布了国内首个云原生容器安全ATT&CK攻防矩阵。

汇合多年的技术积累和实战经验,为了更好地应对容器化进程中的安全挑战,阿里云认为企业的容器安全应当作到动态防御,覆盖容器全生命周期。

基础设施安全

大部分企业会选择在云平台上搭建容器,或直接使用容器运营商的容器服务,为了保障容器底层基础设施的安全,企业在选择云服务商时须要格外关注其安全能力:

一、云平台是否安全合规

一方面是云平台自身的安全,是不是可信的云环境;另外一方是云平台合规安全,云服务商须要基于业界通用的安全合规标准,保证服务组件配置的默认安全性。

二、云平台安全能力是否强大

云平台的基础安全能力,例如主机/VM的防御、SLB访问控制、DDoS、WAF能力、CWPP/CSPM功能等。

三、云平台管理能力

版本更新和漏洞补丁的安装能力也是保证基础设施安全的基本防御措施,须要云厂商具有漏洞分级响应机制和版本升级能力。

阿里云的云平台防御能力毋庸置疑:
· 经过可信芯片提供芯片级别的防御能力,保证服务器-云平台-虚拟机/容器环境的总体环境可信,实现当前技术发展阶段下最高等级安全;

· 2020年发布的108项自带安全能力的云产品,提供强大的平台安全防御能力;

· 亚太地区得到权威合规资质最多的云厂家,为客户解决云上合规问题。

image.png

软件供应链动态防御:采集、可视、关联分析和响应的全流程建设

因为容器的存活时间短,运行时安全防御困难增大,因此须要在供应链侧,也就是容器构建时即将安全归入考虑范畴,实现安全左移,将DevSecOps观念归入交付流程。

在考虑容器供应链安全时,动态思惟极为关键。就容器生成的核心:镜像而言,若是存在恶意镜像或镜像漏洞没有获得及时更新,可能会形成大批量的入侵。据Prevasio 对于托管在 Docker Hub 上 400 万个容器镜像的调查统计,有 51% 的镜像存在高危漏洞;另外有 6432 个镜像被检测出包含恶意木马或挖矿程序,这些恶意镜像就已经被累计下载了 3 亿次。

为了应对供应链中的安全挑战,安全厂商须要提供实时动态的防御能力:

一、实时漏洞扫描:对镜像进行多维度深度扫描,检测CVE漏洞、SCA中间件、WebShell恶意脚本、确保镜像无漏洞;

二、镜像资产管理:获取主机镜像信息,对镜像资产进行梳理,关联镜像、仓库、主机节点,便于对镜像资产进行快速检索;

三、镜像扫描、验证:除了漏扫之外,还需对镜像的配置、CIS静态基线等内容,减小镜像配置错误;同时创建镜像加签规则,确保进入镜像库的镜像安全、无误,分发和部署中的镜像不被篡改。

四、镜像修复:目前市面上尚未较为成熟的拥有自动镜像修复能力的厂商,大部分服务商仅提供修复建议。

阿里云的安全防御能力覆盖供应链全周期。在扫描能力上,提供专人管理和维护的庞大数据库,收录10w+安全漏洞,拥有最新突发漏洞的检测能力,支持多操做系统下的漏洞扫描。同时检测时间极快,基本能够达到1min出结果。在漏洞修复能力上,提供在OS下的镜像自动修复能力,让漏洞修复更简单,下降运维人员压力。在CIS基线管理上,阿里云容器服务提交的 CIS Kubernetes benchmark for ACK 正式经过 CIS 社区组织的认证审核,成为国内首家发布 CIS Kubernetes 国际安全标准基线的云服务商。

运行时安全

容器运行时是用于运行容器的每一个主机操做系统对应的二进制文件,用于创建和维护每一个容器环境。容器进行时协调多个操做系统组件,隔离资源和资源使用量,并经过操做系统与宿主机进行交互,能够说是容器运行的保障,在这个阶段,企业须要关注:

一、容器运行时漏洞、威胁扫描
二、容器运行时网络可视化
三、容器运行时配置合规安全

阿里云对容器运行时提供两大安全保障,一个是实时威胁检测,防止容器逃逸。经过200+安全监测模型能无死角实现逃逸检测,有效监控容器运行时攻击、配置错误、AK泄露等问题;另外一个是漏洞管理,全面覆盖系统漏洞、应用漏洞、应急0Day漏洞,同时SCA漏洞检测能力还覆盖生态及开源软件漏洞检查,有效下降漏洞入侵风险。

此外,阿里云安全还提供容器运行时网络链接可视化,经过Agent采集数据,实现东西、南北向网络可视化,轻松识别网络链接安全风险,同时进行配置合规检查,保证容器运行时的配置安全。

随着云原生对于计算机基础设施和应用架构的从新定义,原生安全也在进一步迭代。Gartner在其Marktet Trends中提到建设云原生安全生态,安全从原来单点式的防御开始向集成化、内生化发展。容器技术和生态的成熟,使得新的容器使用场景也在涌现,边缘计算、机器学习、大数据分析、aPaaS正在成为容器安全的新关键词。

阿里云安全也在进行容器与安全服务一站式深度整合,经过集成云安全中心、密钥管理、日志管理等安全服务,构建原生的安全能力,在DevOps流程中默认植入安全,提高总体持续集成和持续交付(CI/CD)流水线的安全和防护能力。

在云原生的挑战下,阿里云容器服务也会走在技术前线,在容器安全领域保持世界级的竞争力,为客户的应用安全保驾护航。
原文连接本文为阿里云原创内容,未经容许不得转载。

相关文章
相关标签/搜索