容器技术能极大地提高开发效率,但也会使企业面临潜在的风险。由于容器环境的复杂性和动态性,容器安全不同于传统的安全方法,容器安全包括了应用程序的构建到运行时基础设施的所有环节的安全,需要不同的安全策略。
继发布《生产环境中的容器运行指南》之后,青藤云安全在容器安全领域再发新报告——《101文档:容器安全的关键指标》,该报告简述了常见的容器安全四大威胁,详解了从确保构建环节安全、确保运行时安全的安全策略,阐述了容器监控和审计的相关联的内容,从全生命周期确保容器免受恶意攻击。
了解《101文档:容器安全的关键指标》完整版,关注微信公众号「青藤云安全」。
容器安全需要综合使用工具、策略和流程来遏制安全威胁,并应用于容器的整个生命周期,包括了构建过程、运行时环境和平台(Kubernetes和主机操作系统)。第一章分析了容器环境中的安全类型、普遍关注的安全风险和应该采取的降低风险的必要步骤。
开发软件和构建容器环境的过程应该成为确保容器安全的起点。构建过程是最容易被植入恶意代码的环节,比如低级错误的源代码、错误配置脚本、不安全的库和代码等。
除了容器镜像和应用程序外,容器本身也有几率存在安全问题。当启动或管理的容器本身包含漏洞时,如果不及时加固、修补,则会导致“容器逃逸”发生,让攻击者获得容器或主机操作系统的访问权限,产生一系列的安全风险。
在容器化堆栈的最底层,主机操作系统是最关键的攻击目标,一旦受到威胁,可能会暴露其上运行的所有容器。底层操作系统的安全性一直是一个重大问题,比如正确的配置,以限制每个容器对其所需资源的访问。
以Kubernetes为代表的容器编排工具,其重点在于支持容器集群的可扩展性和易于管理性,但不能确保安全性,存在着诸如不安全的默认配置、权限升级、代码注入漏洞等安全问题。
DevOps打破了不同部门之间的障碍,运维和安全团队获得了更多访问权限,这就要求更好的安全控制措施来限制谁有权限更改构建环境和更新代码,任何变更都需要经过审计和验证。CI/CD管道构建安全分为应用程序安全性和用于构建部署应用程序的工具安全性。
在构建环节提供了确保容器构建安全的建议,包括Docker和其他平台的工具、用户自动化和编排源代码、Docker引擎和镜像仓库等。
对容器内执行代码和扩展组件来测试,验证是不是满足安全和运营实践,是确保容器安全的核心,比如安全单元测试、代码分析、漏洞分析、加固等。
本章着重关注生产环境中的容器安全,包括将哪些镜像推送至镜像仓库、容器运行时及底层主机系统的安全性。
运行时容器安全是有效安全态势的先决条件。运行时阶段的安全必须要格外注意控制面、资源使用分析、建立可信的镜像、不可变镜像、容器存活时间、输入验证、容器组隔离等角度。
主机级别的攻击面能够最终靠传统的基于主机的解决方案来保护,而容器内攻击面需要用更深度的防御办法来进行处理。运行时的容器自身安全包含了主机操作系统加固和基于节点的命名空间隔离、按信任级别隔离工作负载等方法。
编排工具和所有相关的系统服务也要在运行时受到保护,k8s等编排管理工具虽然具备一些安全功能,但也需要对管理面、限制发现、升级补丁、日志记录等进行相对有效的安全管理。
了解需要控制哪些身份验证和授权信息,了解如何配置、存储和管理以简化Secrets管理的整体过程至关重要。如果配置合理,Secrets 管理会让整个容器环境更加安全。
通过对容器进行持续性监控,能保证基础架构活动的可追溯性。容器审计是生产环境必不可少的安全和合规措施。
衡量容器安全监控方案的常见指标包括部署模型、策略管理、行为分析、管控能力、平台支持等。
审计和合规团队通过操作日志、配置数据和流程文档,可以查找违规、错误配置和异常活动轨迹,对安全漏洞进行取证追踪。
在容器环境中,从开发到生产都需要持续性的保护。通过综合采用最佳实践、现有对策和新兴技术,能采用多种方法来有效确保容器安全。
(免责声明:此文内容为本网站刊发或转载企业宣传资讯,仅代表作者本人观点,与本网无关。仅供读者参考,并请自己检查相关内容。)
“帮忙经济”是经济发展和社会分工细化催生的新业态,有助于充分的利用劳动者的比较优势,提高生产效率,但需要予以合理引导和监管,确保其健康、理性发展。