容器安全实践与授权管理的最佳实践|学习笔记

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 快速学习容器安全实践与授权管理的最佳实践

开发者学堂课程【云原生实践公开课监控和日志管理的最佳实践】学习笔记,与课程紧密联系,让用户快速学习知识

课程地址:https://developer.aliyun.com/learning/course/698/detail/12277


监控和日志管理的最佳实践


内容介绍:

一、 安全挑战

二、 应用安全

三、 主机安全

四、 供应链安全

五、 总结


一. 安全挑战

1. 云原生下的安全挑战

  • 新的攻击面
  • 新的攻击手段
  • 分钟级的生命周期
  • 更高的部署密度
  • 镜像中存在大量漏洞
  • CVE频出

image.png

应用架构演进带来了安全防护和合规审计的挑战升级

2. 云原生安全原则

  • 零信任安全模型下没有绝对的安全域
  • 在暴露的服务前设置尽可能多的防护层,实现纵深防御
  • 权限配置和凭证下发遵循权限
  • 最小化原则最小化攻击面

image.png


二、应用安全

1. 应用安全攻击路径

  • 攻击者恶意窃取kubeconfig或应用对应的serviceaccount,造成集群访问

凭证泄露

  • 攻击者利用窃取的集群访问凭证对集群发起攻击
  • 攻击者可能通过访问集群apiserver 获取secret 等敏感信息进一步越权攻击

image.png

2. 细粒度访问控制策略

  • 在云资源控制平面,遵循权限最小化原则合理分配云账号的资源访问权限
  • K8s集群数据平面,根据业务场景,通过Namespace 实现人员/应用/部门之

间的逻辑隔离

  • 使用RBAC进行资源模型维度的细粒度访问控制
  • 及时吊销或轮转可能泄露的访问凭证

image.png

3. 应用网络安全

  • 控制容器入网流量:
  •  限定容器允许监听的指定协议,端口和服务标签等
  • 限定除LB和Ingress关联的服务外不允许外网IP访问
  • 限定容器只允许其服务消费者访问
  • 控制容器出网流量:
  • 禁止不需要访问公网的Pods出网流量

image.png

代码示例:

kind: NetworkPolicy

apiversion : networking.k8s.io/v1

metadata :

namespace : my-app

name : deny-from-other-namespaces

spec:

podselector :

matchLabels:

ingress:

- from:

- podselector : { }

4. ServiceMesh

  • 通过sidecar 代理服务之间的请求
  • 服务之间保证mTLS传输加密
  • 应用证书托管下发和自动更新
  • 基于安全策略的服务间东西向网络访问控制

image.png

5. 应用隔离的纵深防御

(1) 3/4层网络隔离

(2)使用Namespace软隔离,基于RBAC实现细粒度访问控制

(3)优先使用内网集群并且设置节点和负载均衡的ACL

(4)基于服务网格实现7层网络的访问控制

image.png

6. 完备审计

  • 基础设施日志∶云平台资源操作审计,云服务账号操作审计等;
  • Kubernetes集群日志∶集群control-plane 组件日志,control-plane组件审计日

志 ( secrets审计,apiserver非法访问,exec进入容器等操作审计)

  • 系统运维日志:主机层应用操作和运维审计
  • 应用日志:容器内应用进程日志

image.png

7. 数据安全

  • 全链路传输加密∶
  • 系统组件,服务之间的全链路数据传输加密敏感数据落盘加密
  • 维护资产清单:
  • 应用资产在多云部署时建立不同的保护机制建立云上和on-perm资产中敏感信

息的防护机制

  • 熟悉责任共担模型:
  • 了解应用在云上的安全责任共担模型,选择适合应用场景的KMS或HSM服务
  • 理解国密标准/FIPS140-2等合规标准在数据安全上的定义
  • 密钥管理︰
  • 密钥的保护和轮转
  • DEK(数据加密密钥)和KEK(密钥加密密钥)隔离

image.png


三、主机安全

1.主机安全的攻击路径

  • 主机安全的攻击路径
  • 攻击者利用容器的内核特性进行逃逸攻击·对主机上其他容器应用发起攻击
  • 对主机上的kubelet或etcd中的数据发起攻击
  • 利用主机上的凭证发起集群维度的攻击

image.png

2. 应用镜像最小化

  • 使用轻量化的基础镜像e.g. distroless镜像
  • 不要构建过大或层数过多的镜像
  • 删除基础镜像中的包管理或网络工具
  • 删除文件属性修改工具( chmod , chown )
  • 不要轻易部署公共仓库的镜像
  • 不要使用root用户启动镜像
  • 可以使用 Ephemeral 临时容器debug ( Alpha as of1.16 )

3. Pod安全参数

  • Run as non-root
  • Use read-only root filesystem
  • Set no_new_privs

代码示例:

apiVersion: apps/v1kind:

Pod

metadata:

name: security-context-sample

spec:

securitycontext:

runAsuser: 1000

allowPrivilegeEscalation: false

readonlyRootFilesystem: true

capabilities:

drop:

- ALL

危险配置

风险原因

Pod挂载/etc , /root等敏感目录

攻击者可以修改host上的关键配置,安装恶意后门程序等

启动特权容器

特权容器具有host 上系统设备的交互权限,可以轻易获取对其他容器的访问权限

root 用户启动容器

Runc容器和host共享主机内核,root权限可以轻易修改主机文件权限或执行恶意程序

共享主机网络

让侵入容器的攻击者轻易拥有主机的网络能力

允许调用setuid 提权

允许通过调用setuid切换用户从而进行提权攻击

4. 使用PSP(Pod Security Policy)

企业安全运维人员通过PSP策略配置可以约束应用容器运行时刻的安全行为

5. 节点权限最小化

image.png

  • 清理节点上不必要的敏感信息·避免直接使用AK/SK
  • 在多租场景下,遵循权限最小化原则收敛集群节点绑定的云资源权限
  • 使用pod维度的细粒度云资源访问权限控制

image.png

6.安全容器

  • 同一节点上的不同pod通过沙箱彼此隔离
  • 沙箱容器在pod隔离的基础上实现了内核级别的隔离
  • 多种实现方式:
  • Kata containers , gVisor ,Firecracker

image.png

  • 病毒和恶意程序
  • 容器内部入侵行为
  • 容器逃逸
  • 高风险操作预警


四、供应链安全

  • 供应链安全
  • 建立供应链中云原生制品的安全扫描机制
  • 对接不同的漏洞库,保证漏洞库的实时更新建立漏洞风险评分和对应的处理机

  • 在应用构建和部署流程中识别并自动阻断风险漏洞
  • 禁止部署和运行包含高危风险的镜像或其他制品
  • 禁止上传包含指定漏洞的镜像或其他制品
  • 提供定制化可配置的安全管理手段
  • 提供前置安全策略定制和自动化的阻断能力
  • 提供制品安全分发和存储的管理机制
  • 提供链路的可追踪,可观测能力

1. 供应链流水线

首先,对于应用开发者而言,在完成应用的开发测试后,可以利用企业级镜像服务进行对应云原生制品智能化的构建,当完成镜像构建时,我们可以通过配置自动触发对镜像的安全扫描,在公链侧通过镜像安全扫描,提前暴露应用镜像中的安全风险。

同时,也可以对push到指定仓库的镜像进行自动化的签名,签名所用的密钥可以通过策略指定,使用云上存储的指定密钥。对于完成了安全扫描和加签的安全镜像,可以使用加速分发技术,推送到不同地域的镜像仓库中,并在最终在应用部署时刻,完成对镜像的验签。

image.png

2. 镜像签名

在整个方案和安全能力的实现上分为两阶段,分别为构建交付环节的安全流程以及

部署时刻的准入控制。

首先第一步,开发人在完成应用开发后,开发人要将指定的应用推送到指定的仓库实例中,对于配置好加签设置的仓库,会自动为系统配置好加签,而对于系统的安全管理员,首先需要在指定的应用部署的集群上安装验签组件,并进行验签策略的配置,配置会自动下发部署在指定的集群中。第二,当集群中的应用部署发起部署时,已经部署在集群中的验签组件,会基于Kubernetes提供的机制,根据绑定的验签策略,自动获取工样,并进行验签。对不符合策略签名条件的非法部署会进行自

动的阻断和审计。

image.png

3.巡检报告

巡检报告中主要展示最近执行的巡检扫描结果,主要包括以下几类信息:

  • 扫描结果概览.包括总的检查条目数、检查各个资源项数目及百分比、整体的

健康度

  • 各大类扫描结果统计.包括报告健康检查、镜像、网络、资源、安全等大类的

结果。

  • 各个workload配置的详细扫描结果,包括资源类别、资源名称、命名空间、检

查类型、检查项、检查结果等内容。

 

五、 总结

  • 尽早升级Kubernetes集群
  • RBAC和基于namespace 的软隔离是基本且必要的安全措施,保证精细化授权
  • 保证应用镜像最小化
  • 在应用运行时刻遵循权限的最小化原则,尽可能收敛pod 内容器的系统权限
  • 使用PSP(Pod Security Policies)对Pod的安全参数进行校验,同时加固Pod运行

时刻

  • 全链路数据加密,使用KMS或HSM服务,及时吊销或轮转可能泄露的访问凭证
  • 使用NetworkPolicy或 ServiceMesh 服务进行业务应用间东西向网络流量的访

问控

  • Log everything,对接监控系统,实现容器应用维度的监控
  • 构建安全的供应链流水线
  • 关注应用部署后的运行时刻安全,在监控和告警外有处理安全事件的应急响应

预案

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
1月前
|
监控 安全 Cloud Native
阿里云容器服务&云安全中心团队荣获信通院“云原生安全标杆案例”奖
2024年12月24日,阿里云容器服务团队与云安全中心团队获得中国信息通信研究院「云原生安全标杆案例」奖。
|
1月前
|
人工智能 运维 监控
容器服务Kubernetes场景下可观测体系生产级最佳实践
阿里云容器服务团队在2024年继续蝉联Gartner亚洲唯一全球领导者象限,其可观测体系是运维的核心能力之一。该体系涵盖重保运维、大规模集群稳定性、业务异常诊断等场景,特别是在AI和GPU场景下提供了全面的观测解决方案。通过Tracing、Metric和Log等技术,阿里云增强了对容器网络、存储及多集群架构的监控能力,帮助客户实现高效运维和成本优化。未来,结合AI助手,将进一步提升问题定位和解决效率,缩短MTTR,助力构建智能运维体系。
|
2月前
|
存储 人工智能 调度
容器服务:智算时代云原生操作系统及月之暗面Kimi、深势科技实践分享
容器技术已经发展成为云计算操作系统的关键组成部分,向下高效调度多样化异构算力,向上提供统一编程接口,支持多样化工作负载。阿里云容器服务在2024年巴黎奥运会中提供了稳定高效的云上支持,实现了子弹时间特效等创新应用。此外,容器技术还带来了弹性、普惠的计算能力升级,如每分钟创建1万Pod和秒级CPU资源热变配,以及针对大数据与AI应用的弹性临时盘和跨可用区云盘等高性能存储解决方案。智能运维方面,推出了即时弹性节点池、智能应用弹性策略和可信赖集群托管运维等功能,进一步简化了集群管理和优化了资源利用率。
|
2月前
|
安全 虚拟化 异构计算
GPU安全容器面临的问题和挑战
本次分享由阿里云智能集团弹性计算高级技术专家李亮主讲,聚焦GPU安全容器面临的问题与挑战。内容分为五个部分:首先介绍GPU安全容器的背景及其优势;其次从安全、成本和性能三个维度探讨实践中遇到的问题及应对方案;最后分享GPU安全容器带状态迁移的技术路径与应用场景。在安全方面,重点解决GPU MMIO攻击问题;在成本上,优化虚拟化引入的内存开销;在性能上,提升P2P通信和GPU Direct的效率。带状态迁移则探讨了CRIU、Hibernate及VM迁移等技术的应用前景。
|
2月前
|
Kubernetes 安全 数据安全/隐私保护
云卓越架构:容器安全最佳实践
本次分享由阿里云智能集团解决方案架构师张玉峰主讲,主题为“云卓越架构:容器安全最佳实践”。内容涵盖容器安全的挑战、云原生容器安全架构及典型场景。首先分析了容器安全面临的问题,如镜像漏洞和权限管理。接着介绍了容器安全架构的五个维度:身份权限管理、配置安全检查、运行时防护、镜像安全检测及发布的安全管控。最后通过具体场景展示了容器身份与权限管理、密钥管理、运行时防入侵等最佳实践,强调了安全左移的重要性,确保从开发到运行的全生命周期安全覆盖。
|
2月前
|
人工智能 运维 监控
阿里云ACK容器服务生产级可观测体系建设实践
本文整理自2024云栖大会冯诗淳(花名:行疾)的演讲,介绍了阿里云容器服务团队在生产级可观测体系建设方面的实践。冯诗淳详细阐述了容器化架构带来的挑战及解决方案,强调了可观测性对于构建稳健运维体系的重要性。文中提到,阿里云作为亚洲唯一蝉联全球领导者的容器管理平台,其可观测能力在多项关键评测中表现优异,支持AI、容器网络、存储等多个场景的高级容器可观测能力。此外,还介绍了阿里云容器服务在多云管理、成本优化等方面的最新进展,以及即将推出的ACK AI助手2.0,旨在通过智能引擎和专家诊断经验,简化异常数据查找,缩短故障响应时间。
阿里云ACK容器服务生产级可观测体系建设实践
|
2月前
|
人工智能 Cloud Native 调度
阿里云容器服务在AI智算场景的创新与实践
本文源自张凯在2024云栖大会的演讲,介绍了阿里云容器服务在AI智算领域的创新与实践。从2018年推出首个开源GPU容器共享调度方案至今,阿里云容器服务不断推进云原生AI的发展,包括增强GPU可观测性、实现多集群跨地域统一调度、优化大模型推理引擎部署、提供灵活的弹性伸缩策略等,旨在为客户提供高效、低成本的云原生AI解决方案。
|
2月前
|
供应链 安全 Cloud Native
阿里云容器服务助力企业构建云原生软件供应链安全
本文基于2024云栖大会演讲,探讨了软件供应链攻击的快速增长趋势及对企业安全的挑战。文中介绍了如何利用阿里云容器服务ACK、ACR和ASM构建云原生软件供应链安全,涵盖容器镜像的可信生产、管理和分发,以及服务网格ASM实现应用无感的零信任安全,确保企业在软件开发和部署过程中的安全性。
|
2月前
|
运维 Kubernetes 调度
阿里云容器服务 ACK One 分布式云容器企业落地实践
阿里云容器服务ACK提供强大的产品能力,支持弹性、调度、可观测、成本治理和安全合规。针对拥有IDC或三方资源的企业,ACK One分布式云容器平台能够有效解决资源管理、多云多集群管理及边缘计算等挑战,实现云上云下统一管理,提升业务效率与稳定性。
|
3月前
|
安全 持续交付 Docker
深入理解并实践容器化技术——Docker 深度解析
深入理解并实践容器化技术——Docker 深度解析
110 2

热门文章

最新文章