kubernetes安全求生指南 - vmware vforum€¦ · vmware enterprise pks...

23
©2019 VMware, Inc. 1 ©2019 VMware, Inc. 唐資生 Jason Tang, VMware 資深架構師 Kubernetes安全求生指南

Upload: others

Post on 23-Jun-2020

8 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 1 ©2019 VMware, Inc.

唐資生 Jason Tang, VMware 資深架構師

Kubernetes安全求生指南

Page 2: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 2

您的Kubernetes環境夠安全嗎?

Kubernetes安全最佳實務

VMware Enterprise PKS平台如何實踐K8s與容器的安全強化

最困難的部分其實是....

總結

本日議程

Page 3: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

3 ©2019 VMware, Inc.

您的Kubernetes環境夠安全嗎?

Page 4: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 4

整個Kubernetes運作環境是相當不安全的....

原生Kubernetes在安全設計上就有許多改善空間

公版Kubernetes許多預設值是不適當的

關於網路層級的安全實際上還有許多地方並未涵蓋

設計上並不特別考慮企業多團隊/多應用的分工與隔離

有非常多層次例如: 容器/映像/作業系統/基礎架構也須涵蓋

您知道嗎?

Page 5: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 5

但是....

您知道所謂 “安全”的“標準”是什麼?

這些“標準”涵蓋範圍夠嗎? 足夠讓我們安心推上生產嗎?

我們具體該怎麼做來強化安全?

我們怎麼知道我們做強化安全以後有滿足這個標準...還是這些標準?

我們該如何確保安全性在未來開發/維運一直維持達標?

我們如何用最低的負荷與最快的速度完成上述任務?

隨便Google就可找到好幾卡車的Kubernetes安全最佳實務/指南....

Page 6: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

6 ©2019 VMware, Inc.

Kubernetes安全最佳實務 Kubernetes Security Best Practices

Page 7: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 7

關閉公開存取 (Disable public access)

實施角色型存取權控管 (Implement role-based access control)

將 Kubernetes密鑰加密 (Encrypt secrets at rest)

設置 Kubernetes 的許可控制器 (Configure admission controllers)

實施 Kubernetes 網路政策 (Implement networking policies)

對容器設置資安規則 (Configure secure context for containers)

分隔敏感的工作負載 (Segregate sensitive workloads)

掃描容器映像 (Scan container images)

開啟稽核日誌 (Enable audit logging)

跟上最新的 Kubernetes版本 (Keep your Kubernetes version up to date)

Kubernetes Security Best Practices

Kubernetes安全性的最佳實務指導

資料來源: https://blog.sqreen.com/kubernetes-security-best-practices/

Page 8: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 8

NIST在容器安全指南中揭露了五種容器應用最應關注的風險

映像風險

Image Risk

登錄風險

Registry Risk

容器調度平台風險

Orchestrator Risk

容器風險

Container Risk

實體作業系統風險

Host OS Risk

Page 9: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 9

針對Kubernetes的安全強化實作參考: CIS Benchmark

Source: https://www.cisecurity.org/benchmark/kubernetes/

控制措施

如何查核

如何查核

參考資訊

預設配置

原因理由

如何查核

1. 控制平面元件 (Control Plane Components)

2. etcd 狀態資料庫

3. 控制平面設置 (Control Plane Configuration)

4. 工作節點 (Worker Node)

5. 政策 (Policies)

Page 10: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 10

Use Cases: Security Architecture Guidance / Replacement for Checklist / Security Training

OWASP CSVS – 對Docker容器應用開發/調度平台的控制措施

組織面 基礎架構 容器 調度管理

V1 V2 V3 V4

映像散佈 密鑰&金鑰 網路 儲存

整合 日誌&監控 災難備援 測試

V5 V6 V7 V8

V9 V10 V11 V12

2/5/6 9/13/15 6/10/15 4/7/10

2/4/5 2/9/10 6/11/12 5/5/5

1/6/6 0/5/6 2/4/5 3/10/11

Page 11: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

11 ©2019 VMware, Inc.

VMware Enterprise PKS平台如何實踐K8s與容器的安全強化 How PKS Enterprise PKS Implement Kubernetes & Container Security

Page 12: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 12

VMware Enterprise PKS對於NIST容器安全指南有完整的實作

White Paper: CLOUD-NATIVE STACK SECURITY: How VMware Enterprise PKS Secures Containers and Kubernetes, Feb, 2019

https://assets.contentstack.io/v3/assets/blt58b49a8a0e43b5ff/blt2218fac49ab28d5f/5c742622670387985f9fd09d/vmware-enterprise-pks-security-white-paper.pdf

Page 13: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 13

企業可依照自己的團隊分工選擇各種角色隔離或者指派到相同對象

PKS對於平台各租戶/層級都有明確角色存取控管 (RBAC)設計

Master Worker Worker

Pod Pod

kube-cluster

Master Worker Worker

Pod Pod

kube-cluster

PKS

API

BOSH

Ops

Manager

BOSH

Director

IaaS

K8s API K8s API

Platform Reliability Engineer

Ops Manager / BOSH Admin

Manages OpsMan Tiles

Developer

Consumes K8s API/kubectl

Ci/CD

Application DevOPS Owner

Consumes PKS API/CLI

Day 1 & Day 2 for k8s clusters

Manages access to k8s API for developers

IT Operator

IaaS Management

Internet User

Application User

Trust Boundary Trust Boundary

Trust Boundary

Trust Boundary

Page 14: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc.

PKS把原生K8s欠缺的帳號/存取權限/API呼叫/密碼保護補好補滿

解決方案

• 對VMware PKS CLI控制平面提供認證與角色權限控管(RBAC)

• 對原生Kubernetes API提供認證與角色權限控管(RBAC)

• 集中帳號權限管理-可整合外部Active Directory/LDAP

如何實踐

• 透過User Account & Authentication (UAA) 服務達成PKS API 呼叫認證

• 透過 CredHub服務安全地自動化產生與保存帳號權限

• 這幾項服務可以針對多個 Kubernetes

叢集個別指派授權

Centralized Authentication with RBAC

Operator admin

Developers Developers

Kubernetes

NameSpace NameSpace

NameSpace NameSpace Kubernetes

NameSpace NameSpace

NameSpace NameSpace

VMware PKS Broker

UAA VMware PKS API

BOSH CredHub

Page 15: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 15

PKS已經做好11大領域超過百項的安全強化措施

PKS對於容器底層核心(Stemcell)就做了非常多的安全強化並驗證

https://docs.pivotal.io/pivotalcf/2-7/security/pcf-infrastructure/stemcell-hardening.html

a. Maintenance, Updates, and Patching b. File System Hardening c. Boot Security d. Process Security e. Minimization of Attack Surface f. Network Security g. Auditing h. Authentication and Authorization i. Compliance j. File System Permissions k. User Account Management

所有強化在發佈前都經過測試驗證 您不再需要每回合升級都從頭來過 若發現CVE漏洞官方立刻提供修補

•The following servers are not used on stemcells and are disabled: •talk server •telnet server •tftp-server •Avahi •print •DHCP •DNS •FTP •IMAP •POP •HTTP •SNMP

Page 16: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 16

PKS內的NSX-T提供了可外部設定的分散式防火牆與視覺化工具 Kubernetes的網路政策只能規範容器,無法規範虛擬機與實體機,也無法看見資料流

PKS的 NSX-T可提供:

容器-容器之間, 或者

容器-虛擬機之間, 或

容器-實體機之間

虛擬機-虛擬機之間

虛擬機-實體機之間

資料流與封包都提供

標準防火牆管控與

完整的視覺化能見度!

Page 17: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 17

Harbor對於容器映像的安全防護措施

Development Team

RBAC

UAA AUTH REPL

Image Pull

K8s Cluster deployed by PKS

Build Image Push Image Scan Image For CVEs

Sign Trusted Image

kubectl run

Image Registry

Image Scanning

Image Signing

Harbor Projects

AUDIT LOGGING

如果沒有企業私有的映像倉庫而只用Internet上的映像,您真的知道裡面有什麼嗎?

只有經過簽章的受信任映像才能被部署

即時弱點掃描並標示弱點,可限制有弱點映像無法存取

Notary Clair

所有映像的存取與異動都應有稽核軌跡

多個Harbor映像倉庫可同步抄寫

Page 18: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 18

部門的藩籬

角色與分工

人員知識技能

安全政策

網路政策

開發政策

合規

負載/網路隔離

打包流程

過版流程

稽核流程

監控 & 除錯

最困難的部分其實是..... 3P: People, Policy, Process

人 (People) 政策 (Policy) 流程 (Process)

Page 19: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 19

導入新數位技術典範須組織架構與流程分工的配套才能順利前進 傳統的AP/SP/Security分工的架構需要跟著新技術典範轉型才能順暢運作

監控設計

安全設計

帳號權限

安全維運

監控維運

所需技能: Shell Script, Python, VMware API, CI/CD Tooling

所需技能: Java, .NET, SQL, Web

所需技能: vSphere/vSAN, NSX, OS, PowerCLI, Shell Script

建立平台自動化 能力與服務

將業務需求轉化成應用程式快速上線

降低基礎架構複雜度 快速調度基礎架構

應用開發 測試品管

基礎架構 監控維運

平台工程

Page 20: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 20

Kubernetes.平台只是最後一站,前面各站也都要安全管控才不會前功盡棄

在整個CI/CD管線的各個環節都需要各種控制措施涵蓋

靜態應用安全測試 (白箱測試): Static Application Security Test (SAST)

靜態應用安全測試 : Interactive Application Security Test (IAST)

動態應用安全測試 (黑箱測試): Dynamic Application Security Test (DAST)

軟體元件分析: Software Component Analysis (SCA)

測試 提交 部署 生產

持續整合 持續交付與部署

預提交 提交

監控

滲透測試

紅隊測試

互動應用安全測試

動態應用安全測試

安全強化檢查

軟體元件分析

深度白箱測試

異動白箱測試

靜態應用安全測試

(程式碼提交前檢測

Page 21: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 21

安全團隊的角色十分重要! 更應該從一開始設計時就加入

企業所有團隊的思維都需要從DevOps進化為DevSecOps

方法論: DevOps DevSecOps

DevSecOps的指導原則:

• 團隊/社群而非個人 (Team/Community, not a person)

• (自動化與自主性安全 (Automated and Autonomous Security)

• 規模化安全管控 (Security at Scale)

Dev: 敏捷開發 敏捷 & 安全開發

Ops: 基礎架構維運 基礎架構 & 安全維運

Sec: 安全審批者 安全設計者

唯有所有團隊密切協同合作才能比競爭對手快抵達目標!

Page 22: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 22

Kubernetes本身設計與週邊運作體系安全性有非常多的改善空間 – 千萬不要掉以輕心!

Kubernetes體系內網路層級的隔離與防護依然是最困難的一塊

有非常多的Kubernetes安全指南與標準,但我們真正需要的是端到端的整體安全

VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本

您的開源 Kubernetes 環境當然可以按照優秀範本做 – 當然我們建議是讓 VMware 幫您做

最困難的部分是 3個P,最理想的境界是DevSecOps,這個實在沒有辦法單靠產品了...

Key Take-Aways

總結

Page 23: Kubernetes安全求生指南 - VMware vForum€¦ · VMware Enterprise PKS 的安全強化即使不敢稱完美,但確實也是相當值得參考的範本 您的開源 Kubernetes

©2019 VMware, Inc. 23 ©2019 VMware, Inc.

Thank You!