当前全球数字化的发展逐步进入深水区,云计算模式已经广泛应用到了金融、互联网、能源、通信等众多领域。在云计算的发展过程中,云原生(Cloud Native)起到了举足轻重的作用,容器化、DevOps和微服务架构实现了应用弹性伸缩和自动化部署,极大地提高了云计算资源的利用效率。
云原生由于具备可伸缩性、敏捷、服务化等特性而颠覆了传统的开发模式,同时这些特性在某种程度上也带来了新的风险,增加了攻击面。以云原生为底座的相关产业和应用系统已经成为黑客的重要攻击目标之一,各类针对云基础设施和容器化应用的攻击案例屡见不鲜,云原生安全的建设迫在眉睫。
近几年来,在许多大型网络攻防演练项目中,我们发现攻击方利用漏洞进入系统后,以 Kubernetes集群Pod或容器作为跳板,简单横向就能获取无数主机的权限,因此我们必须高度重视云原生安全问题。然而,许多客户对于云原生安全本身了解并不多,缺少相关的安全防护知识和经验,在实际的工作中更是心有余而力不足。
扫码了解 ↑
视频解读
主要内容
读者对象
-
云原生安全建设的研究者、一线技术人员和安全负责人。
-
云原生爱好者。
目录
前 言
第一部分 云原生安全概述
第1章 云原生及其安全发展现状 3
1.1 云原生发展现状 3
1.1.1 云原生概述 3
1.1.2 云原生关键技术 5
1.1.3 云原生市场发展趋势 6
1.1.4 重点行业云原生应用
现状 8
1.2 云原生安全发展现状 10
1.2.1 新技术带来新威胁 10
1.2.2 安全现状与发展趋势 10
第2章 云原生安全风险 13
2.1 云原生安全风险与挑战 13
2.1.1 云基础设施变革引入
新的安全暴露面 14
2.1.2 业务开发模式改变带来
新的安全风险 14
2.1.3 传统防护手段在云原生
环境中失效 16
2.1.4 云原生应用在各阶段
存在供应链风险 16
2.1.5 云原生安全运营面临
巨大挑战 17
2.2 云原生安全风险案例 18
2.2.1 特斯拉:不安全的
K8s配置 18
2.2.2 SolarWinds:供应链
安全风险 18
2.2.3 DoS攻击:云原生基础
设施风险 19
2.2.4 大规模挖矿:不安全
的容器 19
第二部分 云原生安全防护
第3章 主流云原生安全框架 23
3.1 参考安全框架 23
3.1.1 CNCF云原生安全框架 23
3.1.2 Gartner云原生安全
框架 25
3.1.3 信通院云原生安全
框架 28
3.2 奇安信对云原生安全
的理解 30
3.2.1 设计原则 30
3.2.2 总体框架 31
第4章 云基础设施安全 32
4.1 云基础设施风险 32
4.2 云安全配置管理平台简介 33
4.3 云安全配置管理平台的
核心功能 34
4.3.1 资产清点 34
4.3.2 配置核查 35
4.3.3 流量采集 35
4.3.4 集群漏洞 36
4.4 云安全配置管理平台
的优势 36
4.4.1 统一管理 36
4.4.2 部署灵活 37
4.5 云安全配置管理平台的
应用价值 37
第5章 制品安全 39
5.1 代码安全 39
5.1.1 安全风险 39
5.1.2 API资产收集 40
5.1.3 IaC代码安全 44
5.1.4 开源软件代码安全 46
5.1.5 代码审查 54
5.2 镜像安全 59
5.2.1 镜像风险 59
5.2.2 镜像分层 60
5.2.3 镜像扫描 63
5.3 镜像仓库安全 66
5.3.1 Harbor简介 67
5.3.2 Harbor镜像扫描
和运营 68
第6章 运行时安全 74
6.1 入侵检测 74
6.1.1 基于规则的已知威胁
发现 75
6.1.2 基于行为的未知威胁
发现 83
6.2 准入控制 90
6.2.1 准入控制原理 90
6.2.2 策略引擎 92
6.2.3 椒图容器安全实践 96
6.3 API安全防护 99
6.3.1 API安全的挑战 100
6.3.2 API框架标准 105
6.4 网络微隔离 107
6.4.1 来自网络的安全威胁 107
6.4.2 Sidecar代理模式下
的流量管控 108
6.4.3 eBPF模式下的网络
控制 109
6.4.4 网络流量的可视化
和监控 111
6.4.5 三、四层网络访问
控制 116
6.4.6 七层容器WAF 120
第三部分 云原生安全攻防
第7章 云原生环境下常见的
攻防矩阵 127
7.1 CNCF K8s攻防矩阵 127
7.2 MITRE ATT&CK容器
安全攻防矩阵 131
7.3 Microsoft K8s攻防矩阵 131
7.4 奇安信云原生安全攻防
矩阵 133
7.5 攻防矩阵的战术点 133
第8章 云原生环境下的攻击
手法 137
8.1 云原生场景下的ATT&CK
框架 137
8.2 初始访问 139
8.2.1 kube-apiserver
未授权 139
8.2.2 kubelet未授权 144
8.2.3 etcd未授权 147
8.2.4 kubeconfig文件泄露 149
8.2.5 K8s Dashboard
未授权 151
8.2.6 kubectl proxy暴露 153
8.2.7 Docker Daemon
未授权 154
8.3 执行 155
8.3.1 通过kubectl exec进入
容器 155
8.3.2 创建后门Pod 156
8.3.3 利用服务账号连接
API Server执行指令 158
8.3.4 未开启RBAC策略 159
8.3.5 不安全的容器镜像 161
8.4 持久化 161
8.4.1 部署后门容器 161
8.4.2 在容器或镜像内植入
后门 163
8.4.3 修改核心组件的访问
权限 164
8.4.4 伪装系统Pod 164
8.4.5 部署静态Pod 164
8.4.6 创建Shadow API
Server 166
8.4.7 K8s集群内的Rootkit 168
8.5 权限提升 169
8.5.1 K8s RBAC权限滥用 170
8.5.2 利用特权容器逃逸 173
8.5.3 利用容器的不安全
配置提权 174
8.5.4 容器基础应用或容器
编排平台的软件漏洞 188
8.5.5 利用Linux内核漏洞
逃逸 190
8.6 防御绕过 191
8.7 凭证窃取 192
8.7.1 kubeconfig凭证或集群
Secret泄露 192
8.7.2 利用K8s准入控制器
窃取信息 192
8.8 发现探测 193
8.8.1 探测集群中常用的
服务组件 193
8.8.2 通过NodePort访问
Service 194
8.8.3 访问私有镜像库 194
8.9 横向移动 195
第9章 云原生环境下的攻击检测
与防御 197
9.1 初始访问的检测与防御 197
9.1.1 未授权的接口或暴露
的敏感接口 197
9.1.2 kubeconfig文件泄露 199
9.1.3 不安全的容器镜像 199
9.2 执行的检测与防御 199
9.2.1 通过kubectl进入容器 199
9.2.2 通过SSH服务进入
容器 200
9.2.3 部署后门容器 201
9.2.4 通过服务账号连接API Server执行指令 201
9.3 持久化的检测与防御 202
9.3.1 部署后门容器 202
9.3.2 挂载目录向宿主机
写入文件 202
9.3.3 创建Shadow API
Server 202
9.3.4 K8s CronJob持久化 203
9.3.5 K8s集群Rootkit利用 203
9.3.6 静态Pod 204
9.4 权限提升的检测与防御 205
9.4.1 RBAC权限滥用 205
9.4.2 特权容器逃逸 206
9.4.3 利用容器不安全的
挂载和权限逃逸 206
9.4.4 容器或容器编排工具
存在漏洞 206
9.5 防御绕过的检测与防御 207
9.5.1 清除容器日志 207
9.5.2 删除K8s事件 207
9.5.3 使用代理或匿名访问
K8s API Server 207
9.6 凭证窃取的检测与防御 208
9.6.1 K8s Secret泄露 208
9.6.2 服务账号凭证泄露 208
9.6.3 配置文件中的应用
程序凭证 209
9.6.4 恶意准入控制器窃取
信息 209
9.7 发现探测的检测与防御 209
9.7.1 访问 K8s API Server 209
9.7.2 访问 kubelet API 210
9.7.3 网络映射 210
9.7.4 暴露的敏感接口 211
9.8 横向移动的检测与防御 212
第四部分 云原生安全运营
第10章 云原生安全运营管理 217
10.1 云原生安全运营建设
的必要性 217
10.2 云原生安全运营的
重要性 218
10.3 云原生安全运营建设
过程 220
10.3.1 云原生安全运营
平台 221
10.3.2 云原生安全运营
人员 231
10.3.3 云原生安全运营
流程 232
10.4 云原生安全体系的
主要应用场景 234
10.4.1 云原生应用全生命
周期安全风险管控 234
10.4.2 云原生应用供应链
全流程安全 234
10.4.3 云原生安全事件
应急处置 235
了解更多
原文始发于微信公众号(Z2O安全攻防):如何学习云原生安全攻防与运营?
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论