卡巴斯基容器安全

关于卡巴斯基容器安全平台

卡巴斯基容器安全(以下称为“解决方案”)可发现安全问题,并为真个容器应用程序全生命周期(开发、部署控制至运行时)提供保护。

解决方案功能:

  • 与镜像仓库(例如,Docker Hub、JFrog Artifactory、Sonatype Nexus Repository OSS、GitLab 仓库、Harbor)集成,扫描仓库中的镜像以查找 NVD 和 数据安全威胁数据库(FSTEC) 发布的已知漏洞、秘密(密码、访问密钥、令牌)、错误配置和恶意软件。
  • 作为管道阶段集成入 流程,扫描 是否存在错误配置,以及扫描容器镜像是否存在漏洞、恶意软件和敏感数据(秘密)。
  • 检查集群节点是否符合信息安全基准。
  • 在构建和运行应用程序时监控已配置安全策略的合规情况,包括运行时中的容器启动控制。
  • 监控受控集群使用的资源。

您可以通过管理控制台配置和访问卡巴斯基容器安全的功能。控制台以 Web 界面的形式实现,可通过 Chromium(Google Chrome、Microsoft Edge)、Apple Safari 或者 Mozilla Firefox 浏览器访问。

本节帮助内容

最新功能

分发包

硬件和软件要求

缩放

基础镜像的系统软件包

扫描的应用软件包

在基于云的环境中运行

页首
[Topic 292907]

最新功能

卡巴斯基容器安全 2.0 提供以下新功能和改进:

  • 集中调查 CI/CD 构件、镜像仓库和运行时中的漏洞。
  • 增强了记录与网络流量(入站和出站)、文件操作、启动的进程和文件威胁防护防护相关的容器事件的功能。
  • 对包含多达数千个节点的基础设施进行不间断监控。
  • 与 HashiCorp Vault 外部机密存储集成
    • 读取为卡巴斯基容器安全组件预先创建的 Secret。
    • 使用 Vault PKI 创建用于跨服务交互的 TLS 证书。
  • 与安全信息与事件管理 (SIEM) 软件集成:
    • 在 UI 中配置与多种产品的集成。
    • 针对各种事件(管理、警报、CI/CD、策略、资源、扫描器、准入控制器、API)发送消息的参数规范。
    • 针对与与网络流量(入站和出站)、文件操作和启动进程相关的容器事件发送消息的参数规范。
  • 生成 .JSON 和 .XML 格式的报告。
  • 扫描基础架构以符合集群安全基准
  • 生成集群基准摘要报告。
  • 改进了与 LDAP(绑定 DN 方案)的集成。
  • 基于容器性能分析 (Autoprofiling) 的容器运行时配置文件生成。
  • OpenAPI 的改进:
    • 获取核心健康检查的数据
    • 管理扫描器策略、保障策略、响应策略和运行时策略。
    • 运行时配置文件管理。
    • 获取系统事件日志。
    • 获取容器事件日志
    • 风险管理。
    • 自动分析任务管理。
    • 获取有关与镜像签名验证器集成的信息
  • 支持与以下外部镜像仓库集成:
    • Amazon Elastic Container Registry
    • Red Hat Quay
  • 在 CI/CD 进程中扫描 OCI 目录。
页首
[Topic 290867]

分发包

有关购买应用程序的信息,请访问 https://www.kaspersky.com 或联系我们的合作伙伴。

分发包包括一个 Helm Chart 软件包,其中包含部署和安装卡巴斯基容器安全组件所需的容器化资源。下表列出了分发套件中的容器化组件。

卡巴斯基容器安全分发套件中的容器化组件

组件

镜像

Pod

ClickHouse DBMS

clickhouse

kcs-clickhouse

PostgreSQL DBMS

postgresql

kcs-postgres

Middleware

middleware

kcs-middleware

事件代理

event-broker

kcs-eb

镜像处理程序,客户端扫描器

image-handler

kcs-ih

扫描器

scanner-server

kcs-scanner

Licenses

licenses

kcs-licenses

文件存储(Minio)

minio

kcs-s3

多线程基于事件的键值缓存存储 (Memcached)

memcached

kcs-memcached

更新专用公司网络的文件服务器(更新)

updates

kcs-updates

解决方案界面(面板)

nginx

kcs-panel

代理中介

agent-broker

kcs-ab

代理

node-agent
kube-agent

node-agent
kube-agent

Helm 包还包括一个values.yaml配置文件,其中包含安装更新解决方案的设置值。

下载并保存 Helm 包到选定目录后,编排器会将镜像从 Helm 包中指定的源直接下载到编排平台节点。

激活应用程序所需的信息将通过电子邮件发送给您。

页首
[Topic 292932]

硬件和软件要求

要安装和运行卡巴斯基容器安全,必须满足以下基础设施要求:

  • 以下编排器平台之一:
    • Kubernetes 1.21 或更高版本
    • OpenShift 4.8、4.11 或更高版本
    • DeckHouse 1.52 或 1.53 (CNI: Flannel)
    • DropApp 2.1
  • 具备可在开发过程中扫描容器镜像的 CI 系统(如 GitLab CI)。
  • 安装了包管理器 Helm 3.10.0 或更高版本。

使用容器运行时配置文件实现运行时监控,编排器节点必须满足以下要求:

  • Linux 内核 4.18 或更高版本。

    Linux内核 5.8 或更高版本使用了一些在 Linux 内核级别管理进程权限的机制。如果 Linux 内核版本低于 5.8,则在安装卡巴斯基容器安全时,必须禁用 kcs-ih 组件的这些进程权限管理机制列表,并将其设置为特权模式。
    设置特权模式的示例

    default:
    kcs-ih:
    privileged: true

  • 容器运行时 (CRI):containerd、CRI-O。
  • 容器网络接口 (CNI) 插件:Flannel、Calico、Cilium。

架构要求:

卡巴斯基容器安全支持 x86 架构:

实现使用容器运行时配置文件进行运行时监控所需的 Linux 发行版和 Linux 内核的最低支持版本:

  • CentOS 8.2.2004 或更新版本 + 内核 4.18.0-193 或更新版本
  • Ubuntu 18.04.2 或更新版本 + 内核 4.18.0 或更新版本
  • Debian 10 或更新版本 + 内核 4.19.0 或更新版本
  • Astra Linux SE 1.7. * + 内核 6.1.50-1-generic

    如果使用 Astra Linux OS,内核配置必须具有 CONFIG_DEBUG_INFO_BTF=y 选项。

  • RHEL 9.4 或更高版本 + 内核 5.14 或更高版本
  • Red Hat Enterprise Linux CoreOS 416.94.202408200132-0 + kernel 5.14.0-427.33.1.el9_4.x86_64
  • RED OS 7.3 或更高版本 + 内核 6.1 或更高版本(CRI:CRI-O,CNI:Calico)。
  • Sber Linux 8.9、9.3 + 内核 5.14(CRI:CRI-O,CNI:Calico,Cilium)

    当使用 Cilium 1.16 时,您必须设置 enableTCXfalse

如果您的基础设施包含运行其他 Linux 发行版的主机服务器,我们建议联系技术支持。技术支持将检查解决方案与您的发行版的兼容性。如果不存在这种兼容性,则卡巴斯基容器安全的未来版本可能会支持这些发行版。

卡巴斯基容器安全可确保在 Istio 服务网格基础设施中使用时正确运行。

该解决方案支持与 Hashicorp Vault 1.7 或更高版本的集成。

卡巴斯基容器安全与 ClickHouse 22.6 或更高版本兼容。

使用外部数据库管理系统时,卡巴斯基容器安全支持以下 DBMS:

  • PostgreSQL 11.*, 13.*, 14.*, 15.*
  • Pangolin 6.2.0

卡巴斯基容器安全支持与以下镜像仓库的集成:

  • GitLab 14.2 或更高版本
  • Docker Hub V2 API
  • JFrog Artifactory 7.55 或更高版本
  • Sonatype Nexus Repository OSS 3.43 或更高版本
  • Harbor 2.х
  • Yandex Registry(使用 Yandex Container Registry API 进行集成)
  • Docker Registry(使用 Docker V2 API 进行集成)
  • Red Hat Quay 3.x

卡巴斯基容器安全同时支持 IPv4 和 IPv6 网络。

镜像要求(操作系统、版本、扫描的软件包):

  • AlmaLinux,版本 8、9。扫描通过 dnf/yum/rpm 安装的软件包。
  • Alpine Linux,版本 2.2 - 2.7、3.0 - 3.20、Edge。扫描通过 apk 安装的软件包。
  • Amazon Linux,版本 1、2、2023。扫描通过 dnf/yum/rpm 安装的软件包。
  • Astra Linux SE,版本 1.6.x、1.7.x。扫描通过 apt/dpkg 安装的软件包。
  • CBL-Mariner,版本 1.0、2.0。扫描通过 dnf/yum/rpm 安装的软件包。
  • CentOS,版本 6、7、8。扫描通过 dnf/yum/rpm 安装的软件包。
  • Chainguard,所有版本。扫描通过 apk 安装的软件包。
  • Debian GNU/Linux,版本 7、8、9、10、11、12。扫描通过 apt/dpkg 安装的软件包。
  • openSUSE Leap,版本 42、15。扫描通过 zypper/rpm 安装的软件包。
  • openSUSE Tumbleweed,所有版本。扫描通过 zypper/rpm 安装的软件包。
  • Oracle Linux,版本 5、6、7、8。扫描通过 dnf/yum/rpm 安装的软件包。
  • Photon OS,版本 1.0、2.0、3.0、4.0。扫描通过 tdnf/yum/rpm 安装的软件包。
  • Red Hat Enterprise Linux,版本 6、7、8。扫描通过 dnf/yum/rpm 安装的软件包。
  • RedOS 版本 7.1、7.2、7.3.х、8.0。扫描通过 dnf/yum/rpm 安装的软件包。
  • Rocky Linux,版本 8、9。扫描通过 dnf/yum/rpm 安装的软件包。
  • SUSE Enterprise Linux,版本 11、12、15。扫描通过 zypper/rpm 安装的软件包。
  • SUSE Linux Enterprise Micro,版本 5、6。扫描通过 zypper/rpm 安装的软件包。
  • Ubuntu,Canonical 支持的所有版本。扫描通过 apt/dpkg 安装的软件包。
  • Wolfi Linux,所有版本。扫描通过 apk 安装的软件包。
  • 安装了具有 Conda 命令行工具的操作系统。通过 conda 安装的软件包得到扫描。

当在有三个工作节点、三个扫描器 Pod (kcs-ih) 和最大镜像扫描大小为 10 GB 的集群中配置卡巴斯基容器安全时,集群工作节点必须满足以下要求:

  • 至少 12 个处理器核心
  • 至少 20 GB 的 RAM
  • 40 GB 可用磁盘空间
  • 集群组件之间至少有 1 Gbps 的通信通道带宽

为了运行集群中的代理,必须为每个工作节点提供以下额外资源:

  1. 基本要求:
    • 0.2 个处理器核心
    • 200 MB 的 RAM
    • 15 GB 可用磁盘空间
  2. 启用以下代理功能时的要求(除了基线要求之外):
    • 网络和进程监控:
      • 2 个安装的处理器核心
      • 2 GB 的已添加 RAM
    • 反恶意软件保护:
      • 2 个安装的处理器核心
      • 2 GB 的已添加 RAM

当启用所有代理功能时,必须满足以下额外资源要求:

  • 2 个处理器核心
  • 4 GB 的 RAM

如果工作节点停止工作,工作节点上的代理也会停止运行。

您必须根据受监控节点的数量为 ClickHouse DBMS 分配可用磁盘空间。每个节点需要 1 GB 的可用磁盘空间用于 ClickHouse 持久卷。

上述要求仅适用于卡巴斯基容器安全部署;他们不考虑客户端资源上的其他负载。

卡巴斯基容器安全用户工作站要求:

  • 在公共公司网络中部署时,可永久连接互联网。
  • 可访问卡巴斯基容器安全管理控制台页面(需使用客户企业内部网络地址,在安装期间指定)。
  • 带宽至少为 10 Mbit/s 的通信信道。
  • 以下浏览器之一:
    • Google Chrome 版本 73 或更高版本。
    • Microsoft Edge 版本 79 或更高版本。
    • Mozilla Firefox 版本 63 或更高版本。
    • Apple Safari 版本 12.1 或更高版本。
    • Opera 版本 60 或更高版本。
页首
[Topic 287165]

缩放

为了在扫描卡巴斯基容器安全镜像的传入卷时实现并保持最佳性能,您必须考虑解决方案支持的扫描 Pod 和集群节点的数量。

本节内容

缩放扫描 Pod 的数量

缩放时考虑所服务的集群节点数量

页首
[Topic 287063]

缩放扫描 Pod 的数量

卡巴斯基容器安全支持缩放扫描 Pod 数量,以确保可以扫描传入的镜像量。您可以在解决方案运行时随时缩放扫描 Pod 数量。

添加扫描 Pod 时,系统资源有如下增加:

  • 节点处理器的数量 – 增加 2。
  • 节点上的 RAM 量 – 增加 2 GB。
  • 节点硬盘驱动器上的可用磁盘空间量 – 增加 12 GB。

为扫描大于 10 GB 的镜像,对于每个扫描 Pod,每增加 1 GB,都必须按如下方式增加 kcs-ih 服务资源。

  • 节点上的 RAM 量 – 增加 300 MB。
  • 节点硬盘驱动器上的可用磁盘空间量 – 增加 1 GB。

在标准操作模式下,如果没有扫描镜像以查找配置文件中的错误,则无需增加扫描 Pod 上的 RAM。

为了更快地处理许多大型对象的扫描结果,您可以通过更新 Helm 包中的变量来为作业处理程序服务分配更多资源。

要添加更多扫描作业处理资源:

  1. 打开 Helm 包,并在default部分的 scanWorkers 变量中为 kcs-middleware 参数指定所需的处理程序数量。
  2. requestslimits变量中,指定根据以下公式确定的 RAM 大小:

    memory = X * scanWorkers / 2,其中

    memory是分配给镜像处理程序服务的 RAM 大小。

    X 是表示 RAM 大小的变量的原始值。

    scanWorkers 是步骤 1 中所指定的处理程序的数量。

    scanWorkers/2 的结果不能为零。

  3. requestslimits变量中,指定根据以下公式计算的 CPU 资源:

    cpu = X*scanWorkers,其中

    cpu 是分配给镜像处理程序服务的 CPU 资源。

    X 是表示 CPU 资源的变量的原始值。

    scanWorkers 是步骤 1 中所指定的处理程序的数量。

添加更多扫描作业处理资源的示例

添加更多扫描作业处理资源

初始值

default:

# kcs-middleware:

#scanWorkers: 1

## “资源”的默认值

# resources:

# requests:

# memory: "2Gi"

# cpu: "400m"

# limits:

# memory: "4Gi"

# cpu: "800m"

 

增加后的值

default:

kcs-middleware:

scanWorkers: 4

## “资源”的默认值

resources:

requests:

memory: "4Gi"

cpu: "1600m"

limits:

memory: "8Gi"

cpu: "3200m"

 

页首
[Topic 287064]

缩放时考虑所服务的集群节点数量

卡巴斯基容器安全的一个实例支持最多 600 个受监控集群。每个集群的服务节点数量可通过更改以下组件来扩展:

  • kcs-ab可增加或减少组件副本的数量。
  • kcs-memcached可增加或减少组件的资源分配要求。

默认情况下,卡巴斯基容器安全附带为这些组件设置的以下值:

  • kcs-ab:
    • 每个副本 1 个 pod,可为 2000 个节点提供服务。
    • 请求的资源量:节点 0.5 个 CPU 核心;节点 512 MB RAM。
    • 最大资源使用量:节点 1 个 CPU 核心;节点 1 GB RAM。
  • kcs-memcached:
    • 请求的资源量:节点 2 个 CPU 核心;节点 2 GB RAM。
    • 最大资源使用量:节点 4 个 CPU 核心;节点 4 GB RAM。

卡巴斯基容器安全通过增加以下参数进行缩放:

  • 对于 kcs-ab,向副本添加一个 Pod 会使支持的节点数量增加 2000 个。
  • 对于 kcs-memcached,向 kcs-ab 组件添加一个 Pod 需要按以下数量增加 kcs-memcached 组件的请求资源和最大资源使用量:
    • 请求的资源量:节点 0.5 个 CPU 核心;节点 2 GB RAM。
    • 最大资源使用量:节点 0.5 个 CPU 核心;节点 2 GB RAM。

例如,如果卡巴斯基容器安全实例为用户集群中的 10,000 个节点提供服务,则适用以下参数:

  • kcs-ab:
    • 每个副本有 5 个 Pod。
    • 请求的资源量:每个节点 0.5 个 CPU 核心;每个节点 512 MB RAM。
    • 最大资源使用量:节点 1 个 CPU 核心;节点 1 GB RAM。
  • kcs-memcached:
    • 请求的资源量:节点 4 个 CPU 核心;节点 10 GB RAM。
    • 最大资源使用量:节点 6 个 CPU 核心;节点 12 GB RAM。

给出的值是近似值,因为部署需要考虑虚拟化设置的细节和给定基础设施中主机服务器(节点)的性能。

页首
[Topic 295413]

基础镜像的系统软件包

卡巴斯基容器安全使用以下操作系统镜像作为基础镜像:

  • Alpine 3.18.4。
  • Ubuntu 23.10。
  • Oracle Linux 9.2。

软件包管理系统(“软件包管理器”)用于管理各种软件组件的安装、删除、配置和更新。卡巴斯基容器安全对其基础操作系统中使用以下软件包管理器:

  • 对于 Alpine,使用 apk
  • 对于 Ubuntu,使用 apt
  • 对于 Oracle Linux,使用 rpm

要获取有关已安装的系统软件包的信息,

请使用标准编排器工具访问正在运行的容器,并(根据所使用的软件包管理器)输入以下 bash 命令:

  • 对于 apk:

    apk -q list | grep "installed"

  • 对于 apt:

    apt list --installed

  • 对于 rpm:

    yum list installed

页首
[Topic 265976]

扫描的应用软件包

卡巴斯基容器安全支持指定编程语言的以下扫描应用程序软件包:

  • Ruby:
    • gemspec(镜像已扫描)。
    • Gemfile.lock(CI/CD 中的仓库已扫描)。
  • Python:
    • egg 包、wheel 包、conda 包(镜像已扫描)。
    • Pipfile.lock、poetry.lock、requirements.txt(CI/CD 中的仓库已扫描 )。
  • PHP的:
    • installed.json(镜像已扫描)。
    • composer.lock(CI/CD 中的仓库已扫描)。
  • Node.js:
    • package.json(镜像已扫描)。
    • package-lock.json、yarn.lock、pnpm-lock.yaml(CI/CD 中的仓库已扫描)。
  • .NET:packages.lock.json、packages.config、.deps.json、Packages.props(CI/CD 中的镜像和仓库已扫描)。
  • Java:
    • *.jar、*.war、*.par 和 *.ear(镜像已扫描)。
    • pom.xml、* gradle.lockfile、* .sbt.lock(CI/CD 中的仓库已扫描)。
  • Go:
    • 二进制文件(镜像已扫描)。
    • go.mod(CI/CD 中的仓库已扫描)。
  • Rust:
    • Cargo 检查的二进制文件(镜像已扫描)。
    • Cargo.lock(CI/CD 中的镜像和仓库已扫描)。
  • C/C++: conan.lock(CI/CD 中的仓库已扫描)。
  • Elixir: mix.lock(CI/CD 中的仓库已扫描)。
  • Dart: pubspec.lock(CI/CD 中的仓库已扫描)。
  • Swift: Podfile.lock、Package.resolved(CI/CD 中的仓库已扫描)。
  • Julia:Manifest.toml(CI/CD 中的镜像和仓库已扫描)。
页首
[Topic 283462]

在基于云的环境中运行

卡巴斯基容器安全可以在各种云环境中运行。要了解有关在云环境中启动解决方案的更多信息,请联系您的售前经理。

页首
[Topic 295358]