青藤云安全细说容器技术生命周期安全考虑因素

2019-10-30

青藤云安全表示,安装、配置和部署容器技术之前,仔细规划是极为重要的。这有助于确保容器环境尽可能安全,并符合所有相关的组织策略、外部法规和其它要求。

本节内容列出了NISTSP800-125第5节建议中的例外情况和新增内容,并按规划和实施生命周期中的相应阶段进行了分组。

起始阶段

组织机构应考虑其它安全策略可能对容器造成的影响,并根据需要,调整策略,将容器纳入考虑范围。例如,考虑到容器的特殊需求,事件响应(尤其是取证)和漏洞管理策略可能需要调整。

采用容器技术可能会扰乱组织机构中现有的文化和软件开发方法。为了充分利用容器所能带来的效益,应调整组织机构的流程,支持以新方式开发、运行和支持应用。传统的开发方法、补丁技术、以及系统升级过程可能无法直接适用于容器化环境,组织机构中的员工愿意适应一种新模式,这一点也很重要。新的流程可以考虑并解决因技术转变而产生的任何潜在文化冲击。可以向参与软件开发生命周期的任何人提供教育和培训,让他们能够适应构建、传输和运行应用的新方法。

规划设计阶段

在规划和设计阶段,容器特定的主要考虑因素是取证。由于容器主要基于操作系统中已存在的组件构建,因此,在容器化环境中进行取证的工具和技术主要是由现有做法演变而来。并且容器和镜像的不可变性实际上可以提高取证能力,因为在事件发生过程中,镜像应该做什么和实际发生的事情之间的界限更加一目了然。例如,如果启动运行Web服务器的容器突然启动了邮件转发,则很明显,新进程并不是原来创建容器的镜像中的一部分。在传统的平台上,操作系统和应用之间隔离效果较差,进行这种区分可能更困难。

熟悉进程、内存和磁盘事件响应活动的组织机构在处理容器时会发现它们大体相似。不过,还是有些区别要注意。

容器通常使用在主机OS中虚拟化的分层文件系统。直接检查主机上的路径通常仅会显示这些层的外边界,而不显示其中的文件和数据。因此,在对容器化环境中的事件作出响应时,用户应该确定使用的特定存储提供商,并了解如何正确地离线检查其内容。

容器通常使用虚拟化覆盖网络相互连接。这些覆盖网络经常使用封装和加密,让流量可以安全地通过现有网络进行路由通信。但是,这意味着在调查容器网络上的事件时,尤其是在进行实时数据包分析时,所使用的工具必须了解这些虚拟化网络,并了解如何从其中提取嵌入式IP帧,以便使用现有工具进行分析。

容器内的进程和内存活动很大程度上类似于传统应用中所观察到的活动,只是父进程不同。例如,容器运行时可能会以嵌套的方式在容器内生成所有进程,在该进程中,运行时是顶级进程,每个容器包含一级子进程,每个进程包含二级进程。例如:

实施阶段

在设计完容器技术之后,下一步是对设计原型进行测试,然后再将解决方案投入生产。请注意,容器技术没有VM技术所具有的内省能力。

NIST SP800-125[1]列举了在生产部署之前应评估的虚拟化技术的几方面内容,包括身份验证、连接和组网、应用功能、管理、性能和技术本身的安全性。此外,评估容器技术的隔离能力也很重要。确保容器中的进程可以访问允许其访问的所有资源,但无法查看或访问任何其它资源。

实施阶段可能需要新的安全工具,专用于容器和云原生应用,并且对其运行情况具有可视性,这是传统工具所缺乏的。最后,部署还可能包括更改现有安全控制和技术的配置,例如安全事件日志记录、网络管理、代码存储库和身份验证服务器,以便直接使用容器,并集成容器新安全工具。

当原型评估完成,且容器技术准备好投入生产使用时,最初,容器应该用于少量应用。出现的问题可能会影响多个应用,因此,及早发现这些问题很有用,这样就可以先解决这些问题,然后再进行进一步部署。分阶段部署还为开发人员和IT人员(如系统管理员、服务台)接受有关其使用方法和支持的培训提供了时间。

运维阶段

运维流程对于维护容器技术的安全性尤为重要,因此,应定期进行运维,包括更新所有镜像、并将更新的镜像分发给容器,代替原有镜像。其它安全最佳实践,如进行漏洞管理、更新其它支持层(如主机和编排工具),也是持续运维的关键任务。容器安全和监控工具也同样应该与现有的SIEM等工具相结合,以确保容器相关事件采用为确保环境中其它内容的安全而提供的相同工具和流程。

在容器化环境中发生安全事件时,组织机构应准备好用针对容器的独特特性而优化的流程和工具作出响应。NIST SP800-61《计算机安全事件处理指南》[28]中概述的核心指南也非常适用于容器环境。然而,采用容器的组织机构应确保它们加强了针对容器安全的一些独特方面的响应措施。

因为容器化的应用可能不是由传统运行团队负责,而是由其它团队负责,所以,组织机构应确保,无论是哪种团队负责容器运行,都要纳入事件响应计划,并了解其在响应计划中的作用。

正如本文档中所讨论的,容器管理的短暂性和自动化性质可能与组织机构传统上使用的资产管理策略和工具不相符。事件响应团队必须能够熟知容器的作用、所有者和敏感度级别,并能够将这些数据集成到他们的响应过程中来。

应确定对容器相关的事件作出响应的明确流程。例如,如果某个特定镜像正在被利用,但有数百个容器在使用该镜像,则响应团队可能需要关闭所有这些容器,才能停止遭受攻击。尽管长期以来,单个漏洞会导致许多系统产生问题,但对于容器来说,响应可能需要广泛地重建和重新部署新镜像,而不是对现有系统安装补丁。在响应方面的这种变化可能涉及不同的团队,并需要获得审批,应该提前熟悉和演练。

如前所述,日志记录和其它取证数据在容器化环境中可能以不同的方式存储。事件响应团队应该熟悉收集数据所需的不同工具和技术,并有专门针对这些环境的记录过程。

处置阶段

根据应用的需求,能够自动部署和销毁容器,能够提高系统效率,但也会带来记录保留、取证和事件数据需求方面的一些挑战。组织机构应确保建立适当的机制来满足其数据保留策略。应该解决的问题示例包括如何销毁容器和镜像、在处置之前应从容器中提取哪些数据、以及如何进行数据提取、如何撤销或删除容器所使用的加密密钥等。

组织机构开发的任何处置计划中应涵盖支持容器化环境的数据存储库以及介质。

开始免费试用青藤产品

申请试用
热线
400-188-9287
青藤官方热线电话服务
咨询