ChartCenter ——為您的K8s之旅保駕護航
一、背景
Kubernetes(k8s)是一個基於容器技術的分散式架構領先方案,為容器化應用提供部署執行、資源排程、服務發現和動態伸縮等一系列完整功能,提高了大規模容器叢集管理的便捷性。近些年來,Kubernetes迅速成為了容器編排的事實上的開源標準,能夠實現應用程式部署流程的標準化和重用,提高了開發人員的生產力,並加快了雲原生應用程式的採用。
當然,隨著Kubernetes應用的複雜度越來越高,大家也需要新的工具來支援快速可靠的容器應用叢集的配置、部署與管理工作。Helm就是這樣的工具,也是CNCF官方推薦的專案,它為開發人員提供了將應用程式打包為Helm Chart的能力。透過一個命令或單擊幾下滑鼠,使用者就可以基於Helm Chart為開發測試或生產環境安裝Kubernetes應用程式。大多數流行的CI/CD工具集都可以透過Helm Chart獲得。
在我們之前的文章《重大福利,JFrog釋出面向社群的免費安全的HelmChart中央儲存庫ChartCenter》中,我們介紹了JFrog釋出的ChartCenter(),這是一個面向社群以及開發人員的免費的公共 Helm Charts中央儲存庫。 除了提供Helm Charts的公共服務之外,ChartCenter還能夠向使用者展示每個Helm Chart部署的容器映象中存在哪些已知的安全漏洞,從而揭示這些公共Chart中隱藏的風險,並提供減輕這些風險的建議。
二、 Kubernetes 應用中的安全漏洞
K8s應用作為一個整體,對外提供統一的服務,而Helm Chart為容器化叢集提供了一個整體的封裝,包含了其所有的容器映象、部署配置等等內容。通常,K8s應用的Helm Chart都引用了多個Docker映象,即包括應用本身,也可以是應用執行所需的init容器和sidecar容器。而每一個映象,其包含的映象層或依賴映象,都可能引入安全風險。如下圖所示:
在美國國家漏洞資料庫(NVD)中,透過公共常見漏洞和暴露(CVE)列表展示了很多容器映象中發現的安全漏洞。隨著容器和K8s的廣泛引用,我們發現,容器相關的漏洞和風險不但沒有下降,在NVD上註冊的CVE的數量和嚴重性反而急劇地增加,如下圖所示:
(圖片來源:美國國家標準技術研究院)
如何才能知道你的Kubernetes應用及Helm Chart中包含了哪些映象,以及這些映象是否包含已知的安全漏洞?ChartCenter為您提供了便捷的方法。
三、 ChartCenter 展示 CVE
JFrog的ChartCenter為社群提供了一個便利的途徑,可以透過UI在眾多公共儲存庫提供的數千個Helm Chart中進行搜尋。但是,ChartCenter不僅僅是這些Chart的目錄,而是由Artifactory提供支援,是一個包含了不可變版本的Helm Chart的儲存庫。使用者的Helm CLI可以從這個免費的單一可信源中獲取所需的公共Helm Chart。
除了提供不可變版本的Helm Chart,ChartCenter還基於JFrog Xray提供的深度遞迴安全掃描能力,對Helm Chart依賴的所有容器映象進行漏洞分析,並在UI中顯示了與這些映象相關的CVE。這樣,使用者在使用和部署任何K8s應用之前,都可以輕鬆瞭解並評估其安全風險。
ChartCenter預設顯示中、低和未知嚴重性的漏洞詳細資訊,而由維護人員控制為社群提供的高危嚴重性漏洞資訊的詳細程度。
四、減輕風險說明
雖然讓使用者知道其K8s應用中存在安全漏洞是件好事,但這還不是全部,大家還希望能夠了解如何減輕這些風險。比如,可以透過引用另一個元件來減輕某一依賴項的安全風險;可以透過建議的配置來消除危險;也可能您的應用並沒有使用到易受攻擊的功能,因此發現的風險並不是一個真正的威脅。
我們相信,在ChartCenter公開您的Helm Chart,也意味著您也可以公開發表自己的看法。因此,JFrog為Helm Chart的安全減輕說明提出了新規範,並邀請大家來提供內容。
為鼓勵大家的參與,在Helm Chart的維護者將至少一個高危級別CVE的減輕說明提交給ChartCenter之前,ChartCenter不會顯示該Chart的高危級別的安全漏洞。
這使得Helm Chart的作者可以在Chart加上有關CVE的註釋,從而使得使用者知道是否以及何時需要關注這些漏洞,或者是否可以減輕相關的風險。它可以幫助維護者在分析CVE時說“是,但是。。。”,並與Chart的使用者進行相應的交流。
五、如何註釋 Helm Charts
為了提供安全減輕說明,ChartCenter裡的Helm Charts包含了一個security-mitigation.yaml檔案,該檔案可以包含以下任何或所有資訊:
· Chart使用者的總體(摘要)減輕資訊
· 每個CVE,每個受影響的元件和版本的減輕資訊
· 在Wiki或網頁上外部託管的減輕資訊的網站URL
· 外部託管的減輕檔案的URL
例如,以下的security-mitigation.yaml檔案為Helm Chart rimusz/security-sample-chart提供了摘要和單獨的CVE減輕資訊:
schemaVersion: v1
summary: Security mitigation information for this application is tracked by the security-mitigation.yaml file that's part of this Helm chart.
mitigations:
- cves:
- CVE-2019-1010022
affectedPackageUri: helm://rimusz/security-sample-chart
affectedVersions: <= 0.1.5
description: This security mitigation information for CVE-2019-10100 applies to the specified affectedVersions of charts.
- cves:
- CVE-2019-11888
affectedPackageUri: docker://docker.io/rimusz/security-sample-app
affectedVersions: <= 0.1.1
description: This CVE is applicable for applications running on Windows. This application currently doesn't support Windows OS, hence this CVE does not impact our users.
當您向ChartCenter提供漏洞減輕註釋檔案時,至少要引用一個高危級別的CVE。該檔案將包含在ChartCenter中,並將高危級別CVE的資訊提供給Chart的使用者。
該檔案由ChartCenter處理,所關聯的CVE將顯示相應的減輕說明,如下圖:
單擊圖示,可以顯示全部的說明,如下圖:
六、總結
ChartCenter不但為廣大的K8s使用者提供了集中的不可變版本Helm Chart的儲存、查詢和使用能力,還能夠展示Chart中依賴的容器映象所包含的已知安全漏洞。除此之外,ChartCenter提供的風險減輕說明機制,也為Helm Charts的維護者和使用者提供了很好的途徑,來更好地描述和了解如何減輕Helm Charts的安全風險。
目前,該減輕說明系統還是一個提議,根據社群的反饋,仍會持續修訂。有關更多技術細節,請參考我們在GitHub上的規範( https://github.com/jfrog/chartcenter/blob/master/docs/securitymitigationspec.md )。
同時,我們也邀請您嘗試透過security-mitigation.yaml來維護您的公共Helm Charts,並提出寶貴意見。 提供反饋。
歡迎觀看JFrog傑蛙每週二線上課堂,點選報名:
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69954434/viewspace-2718863/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 面對runc逃逸漏洞,華為雲容器為您保駕護航
- EndNote 21:為您的學術研究保駕護航 mac/win版Mac
- 使用 KubeEye 為你的 K8s 叢集安全保駕護航K8S
- EndNote 21:為您的學術研究保駕護航 mac/win啟用版Mac
- 企業需要擴充出海業務?CRM為您保駕護航(上)
- 為 type 等欄位「保駕護航」
- Prometheus為你的SpringBoot應用保駕護航PrometheusSpring Boot
- 使用Jwt為.Net Core SignalR保駕護航JWTSignalR
- 為京東PLUS會員保駕護航的日子
- “兩會”重保,綠盟為您安全護航
- 華為雲等保方案,為企業上雲保駕護航
- 人工智慧為刷臉支付保駕護航人工智慧
- 區塊鏈溯源-為商品全程保駕護航區塊鏈
- 用Serverless Kubernetes為.NET (Core)應用保駕護航Server
- 華為雲網站安全解決方案:為您的企業保駕護航,助力安心創造未來!網站
- (中篇)中高階前端大廠面試祕籍,寒冬中為您保駕護航,直通大廠前端面試
- (下篇)中高階前端大廠面試祕籍,寒冬中為您保駕護航,直通大廠前端面試
- IM軟體,為企業工作資料保駕護航!
- 視訊通訊保障系統為‘救護車安全保駕護航’
- “四大高手”為你的 Vue 應用程式保駕護航Vue
- 為自動駕駛保駕護航—談談主流中介軟體設計自動駕駛
- 春運回家路,交通視覺化為你保駕護航視覺化
- 戴爾科技聯手VMware 為資料安全保駕護航
- 為資料安全保駕護航,華為雲助力企業快速安全過“等保”
- 華為雲網站安全方案為企業資料保駕護航網站
- 企業雲盤怎樣為設計行業保駕護航的行業
- Mysql 中寫操作時保駕護航的三兄弟!MySql
- 萬無一失 | 綠盟科技為軍運會保駕護航
- 平臺+生態,華為憑什麼為企業安全保駕護航?
- 華為雲資料災備,為企業資料安全保駕護航
- 智慧配時、圖片識別…AI為你的春運保駕護航!AI
- 形式化方法應該為複雜軟體工程保駕護航軟體工程
- 多卡聚合裝置為5G智慧安防保駕護航
- 嚴陣以待|綠盟科技為兩會網路安全保駕護航
- 守護夏日清涼:EasyCVR+AI影片管理方案為水上樂園安全保駕護航VRAI
- 你的應用安全嗎? ——用Xray和Synk保駕護航
- SACC2018:做好雲架構與CDN加速 為業務保駕護航架構
- 為大型活動保駕護航 巴可影像管理系統應用案例