K8S新安全漏洞的應對之策:API Server拒絕服務漏洞

Kubernetes爆出中等嚴重性安全漏洞——Kubernetes API Server拒絕服務漏洞CVE-2019-1002100。git

本文將進行漏洞解讀和情景再現,並分享漏洞修復方案,Rancher用戶來看應對之策了!github


CVE-2019-1002100漏洞json

美國當地時間2019年3月2日,Kubernetes社區發佈了Kubernetes API server拒絕服務的漏洞(CVE-2019-1002100),即有API寫入權限的用戶在寫入資源時會致使Kubernetes API server過分消耗資源,此漏洞被評級爲【中等嚴重性】。安全

此漏洞表現爲用戶在向Kubernetes API server發送 json-patch規則的補丁包來更新資源對象時(例如kubectl patch xxx --type json 或者「Content-Type: application/json-patch+json」),Kubernetes API server會消耗極大的資源,最終致使API server拒絕鏈接。架構

https://github.com/kubernetes/kubernetes/issues/74534app

情景再現操作系統

一個json-patch的例子:代理

kubectl patch deployment test --type='json' -p '[{"op": "add", "path": "/metadata/labels/test", "value": "test"},{"op": "add", "path": "/metadata/labels/app", "value": "test"} ,{…} ]'code

當咱們向Kubernetes頻繁地發送多個json-patch請求來更新資源對象時,能夠發現Kubernetes API server會消耗不少資源來處理咱們的請求。server

此時會有一部分資源的patch請求失敗,沒法獲得Kubernetes API server的響應。

受此漏洞影響的Kubernetes API server的版本包括:

  • v1.0.0 – 1.10.x

  • v1.11.0 – 1.11.7

  • v1.12.0 – 1.12.5

  • v1.13.0 – 1.13.3

Kubernetes官方建議用戶在升級至修復版本以前,可針對此漏洞的採起的緩解措施爲:

  • 對不受信任用戶移除patch權限

漏洞修復

Kubernetes社區很快地修復了此漏洞,增長了對用戶json-patch操做數量的限制。

當用戶對某一資源對象修改的 json-patch 內容超過10000個操做時,Kubernetes API server會返回413(RequestEntityTooLarge)的錯誤。

錯誤信息以下:

Request entity too large: The allowed maximum operations in a JSON patch is 10000, got 10004

修復的Kubernetes版本包括:

  • v1.11.8

  • v1.12.6

  • v1.13.4

Rancher已發佈最新版本應對這次漏洞

這次也一如既往,在Kubernetes自身爆出漏洞以後,Rancher Labs團隊都第一時間響應,保障使用Rancher平臺管理Kubernetes集羣的用戶的安全。

若是你是使用Rancher平臺管理Kubernetes集羣,不用擔憂,Rancher已於今日發佈了最新版本,支持包含漏洞修復的Kubernetes版本,保障全部Rancher用戶的Kubernetes集羣不受這次漏洞困擾。

最新發布的Rancher版本爲:

  • v2.1.7(提供Kubernetes v1.11.8, v1.12.6, v1.13.4支持)

  • v2.0.12(提供Kubernetes v1.11.8支持)

  • 對於Rancher 1.6.x的用戶,能夠在Rancher v1.6.26的Catalog中使用Kubernetes發佈的修復版本 v1.11.8和v1.12.6

這次漏洞會影響的Kubernetes版本範圍較廣,建議中招的用戶儘快升級喲!

爲用戶的Docker & K8S之旅護航

Rancher Kubernetes平臺擁有着超過一億次下載量,咱們深知安全問題對於用戶而言的重要性,更遑論那些經過Rancher平臺在生產環境中運行Docker及Kubernetes的數千萬用戶。

2018年年末Kubernetes被爆出的首個嚴重安全漏洞CVE-2018-1002105,就是由Rancher Labs聯合創始人及首席架構師Darren Shepherd發現的。

2019年1月Kubernetes被爆出儀表盤和外部IP代理安全漏洞CVE-2018-18264時,Rancher Labs也是第一時間向用戶響應,確保全部Rancher 2.x和1.6.x的用戶都徹底不被漏洞影響。

2019年2月爆出的嚴重的runc容器逃逸漏洞CVE-2019-5736,影響到大多數Docker與Kubernetes用戶,Rancher Kubernetes管理平臺和RancherOS操做系統均在不到一天時間內緊急更新,是業界第一個緊急發佈新版本支持Docker補丁版本的平臺,還幫忙將修復程序反向移植到全部版本的Docker並提供給用戶,且提供了連Docker官方都不支持的針對Linux 3.x內核的修復方案。

負責、可靠、快速響應、以用戶爲中心,是Rancher始終不變的初心;在每一次業界出現問題時,嚴謹踏實爲用戶提供相應的應對之策,也是Rancher一如既往的行事之道。將來,Rancher也將一如既往支持與守護在用戶的K8S之路左右,確保你們安全、穩妥、無虞地繼續前進❤️

相關文章
相關標籤/搜索