第 10 章 检查漏洞的镜像


通过 Red Hat Advanced Cluster Security for Kubernetes,您可以分析镜像的漏洞。扫描程序通过将所有镜像层与常见漏洞和暴露(CVE)列表进行比较,以分析所有镜像层以检查已知漏洞。

当 Scanner 找到任何漏洞时,它:

扫描程序检查镜像,并根据镜像中的文件识别已安装的组件。如果最终镜像被修改为删除以下文件,则可能无法识别已安装的组件或漏洞:

Expand
组件文件

软件包管理器

  • /etc/alpine-release
  • /etc/apt/sources.list
  • /etc/lsb-release
  • /etc/os-release/usr/lib/os-release
  • /etc/oracle-release,/etc/centos-release,/etc/redhat-release, 或 /etc/system-release
  • 其他类似的系统文件。

语言级依赖项

  • package.json 用于 JavaScript.
  • 用于 Python 的 dist-infoegg-info
  • Java 存档(JAR)中的 MANIFEST.MF 用于 Java。

应用程序级别的依赖项

  • dotnet/shared/Microsoft.AspNetCore.App/
  • dotnet/shared/Microsoft.NETCore.App/

10.1. 扫描镜像

Central 将镜像扫描请求提交到 Scanner。在收到这些请求时,Scanner 从相关的 registry 中拉取镜像层,检查镜像,并识别每个层中安装的软件包。然后,它会将识别的软件包和特定于编程语言的依赖项与漏洞列表进行比较,并将信息发回到 Central。

您还可以将 Red Hat Advanced Cluster Security for Kubernetes 与其他漏洞扫描程序集成。

扫描程序识别以下漏洞:

  • 基础镜像操作系统
  • 软件包管理器安装的软件包
  • 特定于编程语言的依赖项
  • 编程运行时和框架

了解并解决常见的 Scanner 警告信息

当使用 Red Hat Advanced Cluster Security for Kubernetes (RHACS)扫描镜像时,您可能会看到 CVE DATA MAY BE INACCURATE 警告信息。当扫描程序无法检索有关操作系统或其他镜像中其他软件包的完整信息时,扫描程序会显示此消息。

下表显示了一些常见的 Scanner 警告信息:

Expand
表 10.1. 警告信息
消息描述

无法检索 OS CVE 数据,只有语言 CVE 数据可用

表示 Scanner 不支持镜像的基本操作系统,因此无法检索操作系统级别的软件包的 CVE 数据。

过时的操作系统 CVE 数据

表示镜像的基本操作系统已达到生命周期结束,这意味着漏洞数据已过时。例如,Debian 8 和 9。

有关识别镜像中组件所需的文件的更多信息,请参阅 检查漏洞的镜像

获取基础操作系统信息失败

表示 Scanner 会扫描镜像,但无法决定用于镜像的基本操作系统。

从 registry 检索元数据失败

表示目标 registry 在网络上无法访问。原因可能是防火墙阻止 docker.io 或阻止访问的身份验证问题。

要分析根本原因,请为私有 registry 或存储库创建一个特殊的 registry 集成,以获取 RHACS Central 的 pod 日志。有关如何进行此操作的说明,请参阅 与镜像 registry 集成

红帽漏洞扫描程序认证范围之外的镜像

表示 Scanner 扫描了镜像,但镜像旧且没有在 Red Hat Scanner 认证范围内。如需更多信息,请参阅 红帽漏洞扫描程序认证合作伙伴指南

重要

如果您使用红帽 容器镜像,请考虑使用比 2020 年 6 月更新的基础镜像。

支持的软件包格式

扫描程序可以检查镜像中使用以下软件包格式的漏洞:

  • yum
  • microdnf
  • apt
  • apk
  • dpkg
  • RPM

支持的编程语言

扫描程序可以检查依赖项中的漏洞,以了解以下编程语言:

  • Java
  • JavaScript
  • Python
  • Ruby

支持的运行时和框架

从 Red Hat Advanced Cluster Security for Kubernetes 3.0.50 (Scanner 版本 2.5.0)开始,Scanner 识别以下开发人员平台中的漏洞:

  • .NET Core
  • ASP.NET Core

支持的操作系统

本节中列出的支持的平台是 Scanner 识别漏洞的发行版本,它与您可以安装 Red Hat Advanced Cluster Security for Kubernetes 的支持的平台不同。

扫描程序识别包含以下 Linux 发行版本的镜像中的漏洞:

Expand
分发版本

alpine Linux

alpine:v3.2, alpine:v3.3, alpine:v3.4, alpine:v3.5, alpine:v3.6, alpine:v3.7, alpine:v3.8, alpine:v3.9, alpine:v3.10, alpine:v3.11, alpine:v3.12, alpine:v3.13, alpine:v3.14, alpine:v3.15, alpine:v3.16, alpine:edge

Amazon Linux

amzn:2018.03, amzn:2

CentOS

centos:6, centos:7, centos:8

Debian

Debian:9,debian:10,debian:11,debian:unstable

Red Hat Enterprise Linux (RHEL)

rhel:6, rhel:7, rhel:8, rhel:9

Ubuntu

Ubuntu:14.04,ubuntu:16.04,iwl:18.04,iwl:20.04,ubuntu:21.10,ubuntu:22.04

注意
  • 扫描程序不支持 Fedora 操作系统,因为 Fedora 不维护漏洞数据库。但是,Scanner 仍然检测基于 Fedora 的镜像中的特定语言漏洞。
  • 扫描程序还会识别以下镜像中的漏洞。但是,漏洞源不再被其供应商更新:

    Expand
    分发版本

    Debian

    debian:8

    Ubuntu

    ubuntu:12.04, ubuntu:12.10, ubuntu:13.04, ubuntu:14.10, ubuntu:15.04, ubuntu::15.10, ubuntu::16.10, ubuntu:17.04, ubuntu:17.10, ubuntu:18.10, ubuntu:19.04, ubuntu:19.10, ubuntu:20.10, ubuntu:21.04

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat