笔记。 翻译。:如果您想了解基于 Kubernetes 的基础设施的安全性,Sysdig 的这篇精彩概述是快速了解当前解决方案的一个很好的起点。 它既包括来自知名市场参与者的复杂系统,也包括解决特定问题的更为温和的公用事业。 在评论中,我们将一如既往地很高兴听到您使用这些工具的体验,并查看其他项目的链接。
Kubernetes 安全软件产品......有很多,每个都有自己的目标、范围和许可证。
这就是为什么我们决定创建此列表并包括来自不同供应商的开源项目和商业平台。 我们希望它能帮助您确定最感兴趣的内容,并根据您的特定 Kubernetes 安全需求为您指明正确的方向。
类别
为了使列表更易于导航,这些工具按主要功能和应用程序进行组织。 获得以下部分:
- Kubernetes镜像扫描和静态分析;
- 运行时安全;
- Kubernetes 网络安全;
- 图像分发和机密管理;
- Kubernetes安全审计;
- 综合商业产品。
让我们转到工作上:
扫描 Kubernetes 镜像
锚点
- 网址:
锚网 - 许可证:免费 (Apache) 和商业版本
Anchore 分析容器镜像并允许根据用户定义的策略进行安全检查。
除了通常从 CVE 数据库中扫描容器映像以查找已知漏洞之外,Anchore 还执行许多附加检查作为其扫描策略的一部分:检查 Dockerfile、凭证泄漏、所使用的编程语言的包(npm、maven 等) .)、软件许可证等等。
清除
- 网址:
coreos.com/clair (现师从红帽) - 许可证:免费(Apache)
Clair 是最早的图像扫描开源项目之一。 它被广泛称为 Quay 图像注册表背后的安全扫描仪 (也来自 CoreOS - 约。 翻译)。 Clair 可以从各种来源收集 CVE 信息,包括由 Debian、Red Hat 或 Ubuntu 安全团队维护的特定于 Linux 发行版的漏洞列表。
与 Anchore 不同,Clair 主要专注于查找漏洞并将数据与 CVE 进行匹配。 然而,该产品为用户提供了一些使用插件驱动程序扩展功能的机会。
达格达
- 网址:
github.com/eliasgranderubio/dagda - 许可证:免费(Apache)
Dagda 对容器映像执行已知漏洞、特洛伊木马、病毒、恶意软件和其他威胁的静态分析。
Dagda 与其他类似工具有两个显着特点:
- 它与
ClamAV的 ,不仅可以作为扫描容器镜像的工具,还可以作为防病毒工具。 - 还通过从 Docker 守护进程接收实时事件并与 Falco 集成来提供运行时保护 (见下文) 在容器运行时收集安全事件。
库贝X射线
- 网址:
github.com/jfrog/kubexray - 许可证:免费 (Apache),但需要 JFrog Xray(商业产品)的数据
KubeXray 侦听来自 Kubernetes API 服务器的事件并使用来自 JFrog Xray 的元数据来确保仅启动与当前策略匹配的 Pod。
KubeXray 不仅审核部署中的新容器或更新的容器(类似于 Kubernetes 中的准入控制器),还动态检查正在运行的容器是否符合新的安全策略,删除引用易受攻击的映像的资源。
斯尼克
- 网址:
snyk.io - 许可证:免费 (Apache) 和商业版本
Snyk 是一款不同寻常的漏洞扫描器,因为它专门针对开发过程,并被宣传为开发人员的“基本解决方案”。
Snyk 直接连接到代码存储库,解析项目清单并分析导入的代码以及直接和间接依赖项。 Snyk支持多种流行的编程语言,并且可以识别隐藏的许可风险。
特里维
- 网址:
github.com/knqyf263/trivy - 许可证:免费(AGPL)
Trivy 是一个简单但功能强大的容器漏洞扫描器,可以轻松集成到 CI/CD 管道中。 其显着特点是易于安装和操作:该应用程序由单个二进制文件组成,不需要安装数据库或其他库。
Trivy 简单性的缺点是您必须弄清楚如何解析和转发 JSON 格式的结果,以便其他 Kubernetes 安全工具可以使用它们。
Kubernetes 中的运行时安全
法尔科
- 网址:
falco.org - 许可证:免费(Apache)
Falco 是一组用于保护云运行时环境的工具。 项目家族的一部分
使用 Sysdig 的 Linux 内核级工具和系统调用分析,Falco 允许您深入了解系统行为。 其运行时规则引擎能够检测应用程序、容器、底层主机和 Kubernetes 编排器中的可疑活动。
Falco 通过在 Kubernetes 节点上部署特殊代理来实现运行时和威胁检测的完全透明性。 因此,无需通过引入第三方代码或添加 sidecar 容器来修改容器。
Linux 运行时安全框架
这些 Linux 内核的原生框架不是传统意义上的“Kubernetes 安全工具”,但它们值得一提,因为它们是运行时安全上下文中的重要元素,包含在 Kubernetes Pod 安全策略(PSP)中。
安全增强型 Linux (
Sysdig开源
- 网址:
www.sysdig.com/opensource - 许可证:免费(Apache)
Sysdig 是一个用于分析、诊断和调试 Linux 系统的完整工具(也适用于 Windows 和 macOS,但功能有限)。 它可用于详细信息收集、验证和取证分析。 (法医) 基本系统以及在其上运行的任何容器。
Sysdig 还原生支持容器运行时和 Kubernetes 元数据,为其收集的所有系统行为信息添加额外的维度和标签。 使用 Sysdig 分析 Kubernetes 集群有多种方法:您可以通过以下方式执行时间点捕获:
Kubernetes 网络安全
阿波雷托
- 网址:
www.aporeto.com - 许可:商业
Aporeto 提供“与网络和基础设施分离的安全性”。 这意味着 Kubernetes 服务不仅接收本地 ID(即 Kubernetes 中的 ServiceAccount),而且还接收通用 ID/指纹,可用于与任何其他服务(例如在 OpenShift 集群中)安全地相互通信。
Aporeto 不仅能够为 Kubernetes/容器生成唯一 ID,还能够为主机、云功能和用户生成唯一 ID。 根据这些标识符和管理员设置的网络安全规则集,将允许或阻止通信。
印花布
- 网址:
www.projectcalico.org - 许可证:免费(Apache)
Calico 通常在容器编排器安装期间部署,允许您创建互连容器的虚拟网络。 除了这个基本的网络功能之外,Calico 项目还与 Kubernetes 网络策略及其自己的一组网络安全配置文件配合使用,支持端点 ACL(访问控制列表)以及针对入口和出口流量的基于注释的网络安全规则。
柠檬
- 网址:
www.cilium.io - 许可证:免费(Apache)
Cilium 充当容器的防火墙,并提供针对 Kubernetes 和微服务工作负载原生定制的网络安全功能。 Cilium 使用一种名为 BPF(伯克利数据包过滤器)的新 Linux 内核技术来过滤、监控、重定向和纠正数据。
Cilium 能够使用 Docker 或 Kubernetes 标签和元数据基于容器 ID 部署网络访问策略。 Cilium 还可以理解和过滤各种第 7 层协议,例如 HTTP 或 gRPC,允许您定义一组在两个 Kubernetes 部署之间允许的 REST 调用。
Istio
- 网址:
istio.io - 许可证:免费(Apache)
Istio 因通过部署独立于平台的控制平面并通过动态可配置的 Envoy 代理路由所有托管服务流量来实现服务网格范例而闻名。 Istio 利用所有微服务和容器的高级视图来实施各种网络安全策略。
Istio 的网络安全功能包括透明的 TLS 加密(用于自动将微服务之间的通信升级为 HTTPS),以及专有的 RBAC 识别和授权系统(用于允许/拒绝集群中不同工作负载之间的通信)。
笔记。 翻译。:要了解有关 Istio 以安全为中心的功能的更多信息,请阅读
老虎
- 网址:
www.tigera.io - 许可:商业
该解决方案称为“Kubernetes 防火墙”,强调网络安全的零信任方法。
与其他原生 Kubernetes 网络解决方案类似,Tigera 依靠元数据来识别集群中的各种服务和对象,并为多云或混合整体容器化基础设施提供运行时问题检测、持续合规性检查和网络可见性。
三重奏
- 网址:
www.aporeto.com/opensource - 许可证:免费(Apache)
Trireme-Kubernetes 是 Kubernetes 网络策略规范的简单直接实现。 最显着的特点是,与类似的 Kubernetes 网络安全产品不同,它不需要中央控制平面来协调网格。 这使得该解决方案具有一定的可扩展性。 在 Trireme 中,这是通过在直接连接到主机的 TCP/IP 堆栈的每个节点上安装代理来实现的。
图像传播和秘密管理
格拉菲亚斯
- 网址:
grafeas.io - 许可证:免费(Apache)
Grafeas 是一个用于软件供应链审计和管理的开源 API。 从根本上讲,Grafeas 是一个用于收集元数据和审计结果的工具。 它可用于跟踪组织内安全最佳实践的合规性。
这种集中的事实来源有助于回答以下问题:
- 谁收集并签署了特定集装箱?
- 它是否通过了安全策略要求的所有安全扫描和检查? 什么时候? 结果如何?
- 谁将其部署到生产中? 部署过程中使用了哪些具体参数?
整体
- 网址:
in-toto.github.io - 许可证:免费(Apache)
In-toto 是一个旨在提供整个软件供应链的完整性、身份验证和审计的框架。 在基础设施中部署 In-toto 时,首先定义一个计划,描述管道中的各个步骤(存储库、CI/CD 工具、QA 工具、工件收集器等)以及允许执行以下操作的用户(负责人):发起他们。
In-toto 监控计划的执行情况,验证链中的每项任务仅由授权人员正确执行,并且在运输过程中没有对产品进行未经授权的操作。
波蒂里斯
- 网址:
github.com/IBM/portieris - 许可证:免费(Apache)
Portieris 是 Kubernetes 的准入控制器; 用于强制内容信任检查。 Portieris 使用服务器
在 Kubernetes 中创建或修改工作负载时,Portieris 会下载所请求容器映像的签名信息和内容信任策略,并在必要时对 JSON API 对象进行即时更改以运行这些映像的签名版本。
拱顶
- 网址:
www.vaultproject.io - 许可证:免费(MPL)
Vault 是用于存储私人信息的安全解决方案:密码、OAuth 令牌、PKI 证书、访问帐户、Kubernetes 机密等。 Vault 支持许多高级功能,例如租赁临时安全令牌或组织密钥轮换。
使用 Helm 图表,Vault 可以作为新部署部署在 Kubernetes 集群中,并以 Consul 作为后端存储。 它支持原生 Kubernetes 资源,例如 ServiceAccount 令牌,甚至可以充当 Kubernetes 机密的默认存储。
笔记。 翻译。:顺便说一句,就在昨天,开发 Vault 的 HashiCorp 公司宣布了在 Kubernetes 中使用 Vault 的一些改进,特别是与 Helm 图表相关的改进。 阅读更多内容
Kubernetes 安全审计
Kube-长凳
- 网址:
github.com/aquasecurity/kube-bench - 许可证:免费(Apache)
Kube-bench 是一个 Go 应用程序,它通过运行列表中的测试来检查 Kubernetes 是否安全部署
Kube-bench 查找集群组件(etcd、API、控制器管理器等)之间不安全的配置设置、可疑的文件访问权限、不受保护的帐户或开放端口、资源配额、限制 API 调用数量以防止 DoS 攻击的设置, ETC。
库贝猎人
- 网址:
github.com/aquasecurity/kube-hunter - 许可证:免费(Apache)
Kube-hunter 寻找 Kubernetes 集群中的潜在漏洞(例如远程代码执行或数据泄露)。 Kube-hunter 可以作为远程扫描器运行 - 在这种情况下,它将从第三方攻击者的角度评估集群 - 或作为集群内的 Pod 运行。
Kube-hunter 的一个显着特征是其“主动狩猎”模式,在此模式下,它不仅报告问题,还尝试利用目标集群中发现的可能损害其运行的漏洞。 所以要谨慎使用!
库贝审计
- 网址:
github.com/Shopify/kubeaudit - 许可证:免费(麻省理工学院)
Kubeaudit 是最初在 Shopify 开发的控制台工具,用于审核 Kubernetes 配置是否存在各种安全问题。 例如,它有助于识别不受限制运行、以 root 身份运行、滥用特权或使用默认 ServiceAccount 的容器。
Kubeaudit 还有其他有趣的功能。 例如,它可以分析本地 YAML 文件,识别可能导致安全问题的配置缺陷,并自动修复它们。
库贝塞克
- 网址:
kubesec.io - 许可证:免费(Apache)
Kubesec 是一个特殊的工具,它直接扫描描述 Kubernetes 资源的 YAML 文件,寻找可能影响安全性的薄弱参数。
例如,它可以检测授予 pod 的过多特权和权限、以 root 作为默认用户运行容器、连接到主机的网络命名空间或危险的挂载 /proc
主机或 Docker 套接字。 Kubesec 的另一个有趣的功能是在线提供的演示服务,您可以将 YAML 上传到其中并立即对其进行分析。
开放策略代理
- 网址:
www.openpolicyagent.org - 许可证:免费(Apache)
OPA(开放策略代理)的概念是将安全策略和安全最佳实践与特定的运行时平台解耦:Docker、Kubernetes、Mesosphere、OpenShift 或其任意组合。
例如,您可以将 OPA 部署为 Kubernetes 准入控制器的后端,将安全决策委托给它。 这样,OPA 代理就可以即时验证、拒绝甚至修改请求,确保满足指定的安全参数。 OPA 的安全策略是用其专有的 DSL 语言 Rego 编写的。
笔记。 翻译。:我们在中写了更多关于 OPA(和 SPIFFE)的内容
用于 Kubernetes 安全分析的综合商业工具
我们决定为商业平台创建一个单独的类别,因为它们通常涵盖多个安全领域。 从表中可以大致了解它们的能力:
* 完整的高级检查和事后分析
水上安全
- 网址:
www.aquasec.com - 许可:商业
该商业工具专为容器和云工作负载而设计。 它提供:
- 与容器注册表或 CI/CD 管道集成的图像扫描;
- 运行时保护,搜索容器中的更改和其他可疑活动;
- 容器原生防火墙;
- 云服务中无服务器的安全性;
- 合规性测试和审核与事件记录相结合。
笔记。 翻译。: 另外值得注意的是 产品的免费组件称为
胶囊8
- 网址:
胶囊8.com - 许可:商业
Capsule8 通过在本地或云 Kubernetes 集群上安装检测器来集成到基础设施中。 该检测器收集主机和网络遥测数据,并将其与不同类型的攻击相关联。
Capsule8 团队将其任务视为使用新的技术及早检测和预防攻击 (0 天) 漏洞。 Capsule8可以将更新的安全规则直接下载到检测器,以响应新发现的威胁和软件漏洞。
卡维林
- 网址:
www.cavirin.com - 许可:商业
Cavirin 是涉及安全标准的各个机构的公司方承包商。 它不仅可以扫描图像,还可以集成到 CI/CD 管道中,在非标准图像进入封闭存储库之前对其进行阻止。
Cavirin 的安全套件使用机器学习来评估您的网络安全状况,提供提高安全性和提高对安全标准合规性的提示。
Google 云安全指挥中心
- 网址:
cloud.google.com/security-command-center - 许可:商业
云安全指挥中心帮助安全团队收集数据、识别威胁并在威胁对公司造成损害之前将其消除。
顾名思义,Google Cloud SCC 是一个统一的控制面板,可以从单一集中源集成和管理各种安全报告、资产会计引擎和第三方安全系统。
Google Cloud SCC 提供的可互操作 API 可以轻松集成来自各种来源的安全事件,例如 Sysdig Secure(云原生应用程序的容器安全性)或 Falco(开源运行时安全性)。
分层洞察(Qualys)
- 网址:
分层洞察网 - 许可:商业
Layered Insight(现属于 Qualys Inc 的一部分)建立在“嵌入式安全”的概念之上。 在使用统计分析和 CVE 检查扫描原始映像中的漏洞后,Layered Insight 将其替换为包含二进制代理的检测映像。
该代理包含运行时安全测试,用于分析容器网络流量、I/O 流和应用程序活动。 此外,它还可以执行基础设施管理员或 DevOps 团队指定的其他安全检查。
神经向量
- 网址:
neuvector.com - 许可:商业
NeuVector 通过分析网络活动和应用程序行为来检查容器安全性并提供运行时保护,为每个容器创建单独的安全配置文件。 它还可以自行阻止威胁,通过更改本地防火墙规则来隔离可疑活动。
NeuVector 的网络集成称为安全网格,能够对服务网格中的所有网络连接进行深度数据包分析和第 7 层过滤。
堆栈Rox
- 网址:
www.stackrox.com - 许可:商业
StackRox容器安全平台致力于覆盖集群中Kubernetes应用程序的整个生命周期。 与此列表中的其他商业平台一样,StackRox 根据观察到的容器行为生成运行时配置文件,并针对任何偏差自动发出警报。
此外,StackRox 使用 Kubernetes CIS 和其他规则手册来分析 Kubernetes 配置,以评估容器合规性。
系统安全
- 网址:
sysdig.com/products/secure - 许可:商业
Sysdig Secure 在整个容器和 Kubernetes 生命周期中保护应用程序。 他
Sysdig Secure 与 Jenkins 等 CI/CD 工具集成,并控制从 Docker 注册表加载的映像,防止危险映像出现在生产中。 它还提供全面的运行时安全性,包括:
- 基于机器学习的运行时分析和异常检测;
- 基于系统事件、K8s-audit API、联合社区项目(FIM - 文件完整性监控;加密劫持)和框架的运行时策略
斜接 ; - 事件的响应和解决。
Tenable 容器安全
在容器出现之前,Tenable 作为 Nessus(一种流行的漏洞搜寻和安全审计工具)背后的公司而在业界广为人知。
Tenable Container Security 利用公司的计算机安全专业知识将 CI/CD 管道与漏洞数据库、专门的恶意软件检测包以及解决安全威胁的建议集成在一起。
扭锁(帕洛阿尔托网络)
- 网址:
www.twistlock.com - 许可:商业
Twistlock 将自己宣传为专注于云服务和容器的平台。 Twistlock 支持各种云提供商(AWS、Azure、GCP)、容器编排器(Kubernetes、Mesospehere、OpenShift、Docker)、无服务器运行时、网格框架和 CI/CD 工具。
除了 CI/CD 管道集成或图像扫描等传统企业级安全技术之外,Twistlock 还使用机器学习来生成特定于容器的行为模式和网络规则。
不久前,Twistlock 被 Palo Alto Networks 收购,后者拥有 Evident.io 和 RedLock 项目。 目前尚不清楚这三个平台具体将如何整合到
帮助构建 Kubernetes 安全工具的最佳目录!
我们努力使该目录尽可能完整,为此我们需要您的帮助! 联系我们 (
您还可以订阅我们的
译者PS
另请阅读我们的博客:
- «
面向安全专业人员的 Kubernetes 网络策略简介 “; - «
安全要求高的环境中的 Docker 和 Kubernetes “; - «
Kubernetes 安全的 9 个最佳实践 “; - «
(不)成为 Kubernetes 黑客受害者的 11 种方法 “; - «
OPA 和 SPIFFE 是 CNCF 的两个新项目,用于云应用程序安全 “。
来源: habr.com