33個Kubernetes安全工具

Kubernetes鏡像掃描

Anchore

主頁:https://anchore.com/

許可證:免費(Apache)和商業服務

Anchore引擎分析容器鏡像並應用用戶定義的策略來實現自定義安全檢查。

除了針對CVE數據庫上已知漏洞的常規容器鏡像掃描之外,還有許多附加條件可以配置為使用Anchore掃描策略的一部分:Dockerfile檢查、憑證洩漏、特定於語言的包(npm、maven等)、軟件許可證等等。

Clair

主頁:https://coreos.com/clair

許可證:免費(Apache)

Clair是第一個開放源代碼圖像掃描項目之一,也因作為Docker鏡像註冊中心的安全掃描引擎而廣為人知。Clair能夠從大量的漏洞源中提取CVE信息,包括由Debian、RedHat或Ubuntu安全團隊編寫的特定於發行版的漏洞列表。

與Anchore不同,Clair主要關注漏洞掃描和CVE匹配部分,儘管它通過可插入驅動程序的實現為用戶提供了一定的可擴展性。

Dagda

主頁:https://github.com/eliasgranderubio/dagda

許可證:免費(Apache)

Dagda對已知的漏洞、木馬、病毒、惡意軟件和容器鏡像中的其他惡意威脅進行靜態分析。

有兩個顯著的特性使得Dagda不同於類似的Kubernetes安全工具:

  • 它與ClamAV集成在一起,不僅可以作為一個容器鏡像掃描器,還可以作為殺毒軟件。
  • Dagda還提供了運行時保護功能,從Docker守護進程收集實時事件,並與CNCF的Falco集成來收集運行時容器安全事件。

KubeXray

主頁:https://github.com/jfrog/kubexray

許可證:免費(Apache),但需要從JFrog Xray(商業產品)中檢索數據

KubeXray偵聽Kubernetes API服務器事件,並利用來自JFrog Xray(商業產品)的元數據,以確保只有符合當前策略的pod才能在Kubernetes上運行。

KubeXray不僅審計新的或升級的容器部署(類似於Kubernetes許可控制器),還可以根據配置的新安全策略動態檢查運行時容器,刪除指向脆弱鏡像的資源。

Snyk

主頁:https://snyk.io/

許可證:免費(Apache)和商業服務

Snyk是一種特殊的漏洞掃描器,在某種意義上,它特別關注開發工作流,並將其自身宣傳為開發人員優先的解決方案。

Snyk將直接連接到你的代碼庫,解析項目聲明並分析導入的代碼,以及它們的直接和間接庫依賴關係。Snyk支持許多流行的編程語言,也可以發現隱含的許可風險。

Trivy

主頁:https://github.com/knqyf263/trivy

許可證:免費(AGPL)

Trivy是一個簡單而全面的容器漏洞掃描器,易於與你的CI/CD集成。一個顯著的特點是安裝和操作簡單,只使用一個二進制文件,不需要安裝數據庫或其他庫。

Trivy簡單性的缺點是,你需要弄清楚如何解析和轉發JSON輸出,以便其他Kubernetes安全工具可以利用它。

Kubernetes運行時安全

Falco

主頁:https://falco.org/

許可證:免費(Apache)

Falco是一個雲原生運行時安全工具集,是CNCF家族的驕傲成員。

利用Sysdig的Linux內核檢測和系統調用分析,Falco深入瞭解了系統行為。它的運行時規則引擎可以檢測應用程序、容器、底層主機和Kubernetes協調器中的異常活動。

使用Falco,你將獲得完整的運行時可視性和威脅檢測,併為每個Kubernetes節點部署一個代理,不需要修改注入第三方代碼的容器或堆積邊車容器。

Linux運行時安全框架

這些本地Linux框架本身並不是Kubernetes安全工具,但是在這裡值得一提,因為它們是運行時安全上下文的一部分,可以包含在Kubernetes Pod安全策略(PSP)中。

AppArmor將安全配置文件附加到容器中運行的進程,定義文件系統特權、網絡訪問規則、庫鏈接等。它是一個強制訪問控制(或MAC)系統,這意味著它將阻止禁止的操作發生。

安全增強Linux(SELinux)是一個Linux內核安全模塊,在某些方面類似,並且經常與AppArmor相比較。SELinux比AppArmor更強大、更細粒度、更靈活,這是以學習曲線陡峭和複雜性增加為代價的。

Seccomp和seccomp -bpf允許過濾系統調用,阻止執行可能對底層主機OS有危險的系統調用,這些調用對於用戶域二進制文件的常規操作是不需要的。它與Falco有一些細微的相似之處,儘管seccomp不知道容器的存在。

Sysdig

主頁:https://sysdig.com/opensource/

許可證:免費(Apache)

Sysdig是一個針對Linux系統(也適用於Windows和Mac OSX,功能有限)的全系統探索、故障排除和調試工具,可用於獲得託管OS和運行於其上的任何容器的細粒度可視性、檢查和取證。

Sysdig還支持容器運行時和Kubernetes元數據,將這些額外的維度和標籤添加到收集的任何系統活動中。有幾種方法可以使用Sysdig探索Kubernetes集群:你可以使用kubectl capture創建一個時間點捕獲,或者使用kubectl dig插件生成一個交互式ncurses接口。

Kubernetes網絡安全

Aporeto

主頁:https://www.aporeto.com/

許可證:商業

Aporeto提供“與網絡和基礎設施分離的安全性”。這意味著你的Kubernetes服務不僅會獲得本地標識(即Kubernetes服務帳戶),還會獲得通用標識/指紋,可用於以安全且可相互驗證的方式與任何其他服務進行通信,例如在OpenShift集群中。

Aporeto不僅可以為Kubernes/容器,還可以為主機、雲功能和用戶生成唯一的身份指紋。根據這些身份和運營商配置的一組網絡安全規則,將允許或阻止通信。

Calico

主頁:https://www.projectcalico.org/

許可證:免費(Apache)

Calico通常在容器編制器安裝期間部署,以實現連接容器的虛擬網絡。在這個基本的網絡功能之上,Calico項目實現了Kubernetes網絡策略規範和它自己的一組網絡安全概要文件,這些概要文件實現了端點acl和基於註釋的網絡安全規則,用於入口和出口流量。

Cilium

主頁:https://www.cilium.io/

許可證:免費(Apache)

Cilium提供容器防火牆和網絡安全功能,本機適應於Kubernetes和微服務工作負載。Cilium利用一種名為BPF(Berkeley Packet Filter, Berkeley Packet Filter)的Linux內核新技術來執行核心數據路徑過濾、篡改、監視和重定向。

Cilium可以使用Docker或Kubernetes標籤和元數據基於容器標識部署網絡訪問策略。Cilium還可以理解和過濾幾個第7層協議,比如HTTP或gRPC,允許您定義一組REST調用,這些調用將允許在兩個給定Kubernetes部署之間進行。

Istio

主頁:https://istio.io/

許可證:免費(Apache)

Istio以實現服務網格範式而聞名,它部署一個平臺無關的控制平面,並通過動態配置的特使代理路由所有託管的服務流量。Istio將利用所有微服務和容器的這種優勢視圖來實現幾種網絡安全策略。

Istio網絡安全功能包括:透明的TLS加密,自動將微服務通信升級到HTTPS,以及它自己的RBAC身份和授權框架,以接受或拒絕不同工作負載之間的通信。

Tigera

主頁:https://www.tigera.io/

許可證:商業

Tigera Kubernetes防火牆技術強調對你的Kubernetes網絡安全的零信任方法。

與其他Kubernetes本機網絡解決方案類似,Tigera利用Kubernetes元數據來標識集群中的不同服務和實體,提供跨多雲或混合的單一容器基礎設施的運行時檢測、持續的遵從性檢查和網絡可見性。

Trireme

主頁:https://www.aporeto.com/opensource/

許可證:免費(Apache)

Trireme-Kubernetes是Kubernetes網絡策略規範的簡單、直接的實現。它最顯著的特點之一是,與類似的Kubernetes網絡安全解決方案不同,它不需要一箇中央控制平面來協調網格,使得該解決方案的可擴展性非常低。Trireme實現了這一點,即每個節點安裝一個代理,該代理將直接接入主機的TCP/IP堆棧。

鏡像分發和密鑰管理

Grafeas

主頁:https://grafeas.io/

許可證:免費(Apache)

Grafeas是一個開源API,用於審計和管理您的軟件供應鏈。在基本級別上,Grafeas是一個元數據和審計日誌收集工具,你可以使用它來跟蹤整個組織的安全最佳實踐的遵從性。

這個集中的事實來源可以幫助你回答與安全性相關的問題,比如:

  • 誰構建並簽署了一個特定的容器?
  • 它是否通過了所有的安全掃描和策略檢查?什麼時候?這個工具的輸出是什麼?
  • 誰在生產中部署了它?用於部署的具體參數是什麼?

Portieris

主頁:https://github.com/IBM/portieris

許可證:免費(Apache)

Portieris是一個Kubernetes許可控制器,用於強制內容信任。它依賴Notary服務器作為可信和簽名工件(即已批准的容器鏡像)的真相來源。

無論何時創建或修改Kubernetes工作負載,Portieris都會為請求的容器鏡像提取簽名信息和內容信任策略,如果需要,還會動態修改API JSON對象,以運行這些鏡像的簽名版本。

Vault

主頁:https://www.vaultproject.io/

許可證:免費(MPL)

Vault是針對密碼、oauth令牌、PKI證書、訪問憑證、Kubernetes秘密等機密的高安全性存儲解決方案。它支持許多高級特性,比如臨時安全令牌租約或編排的密鑰滾轉。

你可以將vault本身部署為Kubernetes集群中的新部署,使用Helm chart和領事作為其後端存儲。它支持Kubernetes本地資源,比如serviceaccount令牌,甚至可以配置為默認的Kubernetes密鑰存儲。

Kubernetes安全審計

Kube-bench

主頁:https://github.com/aquasecurity/kube-bench

許可證:免費(Apache)

kube-bench是一個Go應用程序,它通過運行CIS Kubernetes基準測試中記錄的檢查來檢查Kubernetes是否安全部署。

Kube-bench將在你的Kubernetes集群組件(etcd、API、controller manager等)上查找不安全的配置參數、敏感的文件權限、不安全的帳戶或公開端口、資源配額、保護你免受DoS攻擊的API速率限制的配置,等等。

Kube-hunter

主頁:https://github.com/aquasecurity/kube-hunter

許可證:免費(Apache)

Kube-hunter在你的Kubernetes集群中尋找安全弱點(比如遠程代碼執行或信息公開)。你可以將kube-hunter作為遠程掃描器運行,它將提供外部攻擊者的視角,或者作為Kubernetes集群中的一個Pod。

kube-hunter提供的一個獨特特性是,它可以使用active hunting運行,這意味著不僅要報告,而且要實際利用目標Kubernetes中發現的漏洞,這些漏洞可能對集群的操作有害。小心處理:)。

Kubeaudit

主頁:https://github.com/Shopify/kubeaudit

許可證:免費(MIT)

Kubeaudit是一個免費的命令行工具,最初是在Shopify上創建的,用於審計Kubernetes的配置,以解決各種不同的安全問題。你可以無限制地運行容器鏡像、以root身份運行、使用特權功能或缺省serviceaccount等等。

Kubeaudit還有其他幾個值得注意的特性,例如,它可以處理本地YAML文件來檢測配置缺陷,這些缺陷將導致該工具所涵蓋的任何安全問題,並自動為你修復它們。

Kubesec

主頁:https://kubesec.io/

許可證:免費(Apache)

Kubesec是一個非常特殊的Kubernetes安全工具,因為它將直接掃描聲明Kubernetes資源的YAML文件,以找到薄弱的安全參數。

例如,它可以檢測授予pod的過多功能和權限,使用root作為默認容器用戶,連接到主機網絡命名空間,或者像host /proc或docker套接字這樣的危險裝載。Kubesec的另一個不錯的特性是他們的在線演示鏈接,你可以在那裡發佈一個YAML並立即開始嘗試。

Open策略代理

主頁:https://www.openpolicyagent.org/

許可證:免費(Apache)

OPA(Open Policy Agent)的願景是將你的安全策略和安全最佳實踐與特定的運行時平臺解耦:Docker、Kubernetes、Mesosphere、OpenShift或它們的任何組合。

例如,你可以將OPA部署為Kubernetes承認控制器的後端,委託安全決策,這樣OPA代理就可以動態地驗證、拒絕甚至修改請求,以強制執行定製的安全約束。OPA安全策略是使用其特定於域的語言Rego編寫的。

端到端的Kubernetes安全商業產品

我們決定為商業Kubernetes安全平臺創建一個單獨的類別,因為它們通常覆蓋幾個安全領域。這裡有一個表格可以看到一個整體的概況:

33個Kubernetes安全工具

AquaSec

主頁:https://www.aquasec.com/

許可證:商業

AquaSec是一款針對容器和雲工作負載的商業安全工具,包括:

  • 鏡像掃描,與你的容器註冊表或CI/CD集成;
  • 檢測容器修改或可疑活動的運行時保護;
  • 容器本地應用防火牆;
  • 雲服務的無服務器安全性;
  • 合規性和審計報告,與事件記錄集成。

Capsule8

主頁:https://capsule8.com/

許可證:商業

Capsule8與在on-prem或cloud Kubernetes集群上部署傳感器的基礎設施集成。該傳感器將收集主機和網絡遙測數據,根據不同的攻擊模式匹配此活動。

Capsule8團隊負責在他們設法通過你的系統之前檢測和中斷0-day的攻擊。他們的安全操作團隊可以向你的傳感器推送有針對性的規則,作為對最近發現的軟件漏洞威脅的響應。

Cavirin

主頁:https://www.cavirin.com/

許可證:商業

Cavirin解決方案的重點是為不同的安全標準化機構提供一個企業對應方。除了鏡像掃描功能,它還可以與你的CI/CD集成,在不符合要求的鏡像被推送到你的私有存儲庫之前阻止它們。

Cavirin security suite使用機器學習來為你的網絡安全狀態提供一個類似於信用的評分,提供一些補救技巧來改進你的安全狀態或安全標準遵從性。

谷歌雲安全命令中心

主頁:https://cloud.google.com/security-command-center/

許可證:商業

雲安全指揮中心幫助安全團隊收集數據,識別威脅,並在它們導致業務破壞或損失之前對其採取行動。

正如其名稱所示,谷歌雲SCC是一個統一的控制面板,你可以在其中集成不同的安全報告、資產清單和第三方安全引擎,所有這些都來自一個集中的儀表板。

谷歌Cloud SCC提供的可互操作API有助於集成來自不同來源的Kubernetes安全事件,比如:Sysdig Secure(雲本地應用程序的容器安全)或Falco(開源運行時安全引擎)。

Qualys

主頁:https://layeredinsight.com/

許可證:商業

分層洞察(現在是qualys的一部分)是圍繞嵌入式安全的概念設計的。一旦使用靜態分析技術掃描原始圖像以發現漏洞,並通過CVE檢查,分層洞察就會用注入二進制代理的儀表化圖像替換它。

該二進制文件包括docker網絡流量、輸入/輸出流和應用程序活動的運行時安全探測,以及基礎設施運營商或開發團隊提供的任何自定義安全檢查。

Neuvector

主頁:https://neuvector.com/

許可證:商業

NeuVector通過分析網絡活動和應用程序行為來執行容器安全基線化和運行時保護,從而為每個鏡像創建一個定製的安全概要文件。它還可以主動阻止威脅,通過修改本地網絡防火牆隔離可疑活動。

NeuVector網絡集成,標籤為安全網格,能夠執行深入包檢查和過濾你的服務網格中的所有網絡連接的第7層。

StackRox

主頁:https://www.stackrox.com/

許可證:商業

StackRox容器安全平臺的目標是覆蓋集群中Kubernetes應用程序的整個生命週期。與此列表中的其他商業容器安全平臺一樣,它根據觀察到的容器行為生成運行時概要文件,並將在任何異常時自動發出警報。

StackRox平臺還將使用CIS Kubernetes基準和其他容器遵從性基準評估Kubernetes配置。

Sysdig

主頁:https://sysdig.com/products/secure/

許可證:商業

Sysdig Secure在整個容器生命週期中保護你的雲本地應用程序。它集成了容器鏡像掃描、運行時保護和取證功能,以識別漏洞、阻止威脅、強制遵從性和跨微服務的審計活動。

它的一些相關的功能包括:

  • 掃描註冊表中的鏡像或作為CI/CD流水線的一部分,以發現易受攻擊的庫、包和配置;
  • 運行時檢測通過行為特徵保護生產中的容器;
  • 通過微秒級粒度的系統調用記錄攻擊前和攻擊後的活動;
  • 250多項開箱即用合規性檢查,確保你的配置安全。

Tenable Container Security

主頁:https://www.tenable.com/products/tenable-io/container-security

許可證:商業

Tenable在容器出現之前,作為Nessus(一種流行的漏洞掃描和安全聽覺工具)背後的公司,在安全行業廣為人知。

“可維護的容器安全”利用他們在計算機安全領域的經驗,將你的CI/CD流水線與漏洞數據庫、專門的惡意軟件檢測引擎和安全威脅補救建議相集成。

Twistlock(Palo Alto Networks)

主頁:https://www.twistlock.com/

許可證:商業

Twistlock宣稱自己是雲第一、容器第一的平臺,提供與雲提供商(AWS、Azure、GCP)、容器編排者(Kubernetes、Mesospehere、OpenShift、Docker)、無服務器運行時、網格框架和CI/CD工具的特定集成。

除了通常的容器安全企業特性,如CI/CD集成或鏡像掃描,Twistlock使用機器學習技術來生成行為模式和容器感知網絡規則。

Twistlock被同樣擁有該公司的帕洛阿爾託網絡公司(Palo Alto Networks)收購,io和Redlock安全解決方案。尚不清楚這三個平臺如何集成到帕洛阿爾託的PRISMA的。

幫助我們建立最好的Kubernetes安全工具目錄

我們努力使這個頁面成為Kubernetes安全工具的首選目錄,但我們不能單獨完成它!你知道的Kubernetes安全工具應該包括在這個列表中嗎?你發現什麼錯誤或過時的信息了嗎?可以在下面留言。

原文鏈接:https://sysdig.com/blog/33-kubernetes-security-tools/


分享到:


相關文章: