0x00 背景
鏡像是容器的最基礎的載體,docker作爲最流行的容器runtime,其最大的貢獻就是把鏡像作爲容器應用的標準交付方式,鏡像包含了容器運行的所有基礎文件,可以說鏡像的安全就決定了容器安全。
但現實不樂觀,在docker官方鏡像中有超過30%的鏡像有高危漏洞,平均每一個鏡像有127箇中危漏洞,幾乎沒有鏡像沒有漏洞。鏡像在構建過程中會安裝依賴組件,這些組件存在大量漏洞,而這僅僅是基礎運行環境的軟件漏洞。
對於鏡像的安全控制可以在三個地方:
1、構建時,在使用持續集成平臺自動構建後,拿jenkins來舉例說明,當鏡像構建完成後,對構建的鏡像進行漏洞掃描,如果出現策略不允許出現的安全漏洞,中斷流程,達到安全控制。
2、存儲時,在鏡像倉庫中對上傳的鏡像進行漏洞掃描,發現安全問題,禁止拉取。
3、運行時,在鏡像拉取到主機節點,啓動時掃描鏡像漏洞,禁止鏡像運行。
所以,鏡像安全問題最好在持續集成過程中和鏡像倉庫中解決。
0x01 工具推薦
小佑科技免費掃描器harbor-scanner
- 簡介:小佑科技的Harbor-scanner是唯一支持中文漏洞庫掃描器,將其商業版的鏡像掃描部分功能免費出來,安裝包包含了在版本發佈時的全部最新漏洞庫,其中包括最新的CNNVD中文漏洞庫,用戶無需聯網也可以獲取到比較新的漏洞庫,同時產品支持實時在線更新漏洞庫。
- 工具連接:https://github.com/goharbor/harbor
- 使用成本:免費
CoreOS官方推出的容器靜態安全漏洞掃描工具Clair
- 簡介:Clair旨在識別和分析Docker和appc應用程序容器中的漏洞。定期從定製和配置的源組中提取容器漏洞元數據,以識別容器映像(包括上游的容器映像)中的威脅。
- 工具鏈接:https://github.com/quay/clair
- 使用成本:免費
Anchore以最早支持應用框架漏洞掃描聞名
- 簡介:Anchore以最早支持應用框架漏洞掃描聞名,Anchore Engine是一個開源項目,可爲容器圖像的檢查,分析和認證提供集中式服務。 Anchore Engine作爲Docker容器映像提供,可以獨立運行,也可以在業務流程平臺(例如Kubernetes,Docker Swarm,Rancher,Amazon ECS和其他容器業務平臺)中運行。
- 工具鏈接:https://github.com/anchore/anchore-engine
- 使用成本:免費
Docker Bench for Security
- 簡介:https://www.cnblogs.com/Hi-blog/p/docker-bench-security.html)Docker Bench for Security是一個可以在任何Docker主機上運行的預構建包裝容器。它是一組應該作爲root用戶運行的Bash shell腳本。在生產中常見的測試檢查部署Docker容器的最佳安全實踐。
- 工具鏈接:https://github.com/docker/docker-bench-security
- 使用成本:免費
Docker Notary
- 簡介:Notary是一個開源的Docker項目,提供數據收集的安全性。運行Notary服務來發布和管理任意內容。對發佈的集合進行數字簽名,並允許用戶驗證內容的完整性和來源。
- 工具鏈接:https://github.com/docker/notary
- 使用成本:免費
Twistlock
- 簡介:Twistlock Security Suite旨在解決基於容器的應用程序過程中的安全問題。這是一個端到端的安全解決方案,通過增加Docker容器工作方式的監控層來檢測漏洞。Twistlock使應用程序生命週期中的容器映像變得更加堅固。
- 工具鏈接:https://www.twistlock.com/
- 使用成本:軟件定價基於選定的訂閱和基礎設施選項
Aqua Security 以最早支持應用框架漏洞掃描聞名
- 簡介:Trivy 是一個簡單而且功能完整的容器漏洞掃描工具,特別使用用於持續集成,可以在任何平臺上運行,通過提供全堆棧安全來保護基於容器的應用程序。
- 工具鏈接:https://github.com/aquasecurity/trivy
- 使用成本:定價是選定軟件計劃費用加上所需虛擬機的Azure基礎架構成本的組合
0x02 docker安全架構
0x3 參考文章
https://blog.csdn.net/qq_29277155/article/details/88358863