

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 亚马逊 Linux 安全公告 AL2023
<a name="alas"></a>

 尽管我们努力确保 Amazon Linux 的安全，但有时会有一些安全问题需要修复。当有可用的修复程序时，我们就会发布*通告*。我们发布通告的主要位置是 Amazon Linux 安全中心（ALAS）。有关更多信息，请参阅 [Amazon Linux 安全中心](https://alas.aws.amazon.com/alas2023.html)。

**重要**  
 如果您想报告漏洞或对 AWS 云服务或开源项目有安全疑虑，请使用 “[漏洞报告” 页面](https://aws.amazon.com/security/vulnerability-reporting/)与 AWS 安全部门联系 

 Amazon Linux 团队在多个地点发布了有关问题和相关更新的信息。 AL2023 安全工具通常会从这些主要源代码中获取信息并将结果呈现给您。因此，您可能不会直接与 Amazon Linux 发布的主要源代码进行交互，而是与您的首选工具（例如 [Amazon Inspector](https://docs.aws.amazon.com/inspector/latest/user/what-is-inspector.html)）提供的界面进行交互。

## Amazon Linux 安全中心公告
<a name="alas-announcements"></a>

 Amazon Linux *公告*用于不适合放入通告的项目。这部分包含关于 ALAS 本身的公告，以及不适合放入通告的信息。有关更多信息，请参阅 [Amazon Linux Security Center（ALAS）公告](https://alas.aws.amazon.com/announcements.html)。

 例如，[2021-001 号关于 Apache Log4j 的 Amazon Linux 热补丁公告](https://alas.aws.amazon.com/announcements/2021-001.html)应归类为公告而非通告。在此公告中，Amazon Linux 添加了一个程序包以帮助客户缓解不属于 Amazon Linux 的软件中的安全问题。

 [Amazon Linux Security Center CVE Explorer](https://explore.alas.aws.amazon.com/) 也通过 ALAS 公告宣布推出。有关更多信息，请参阅[新网站 CVEs](https://alas.aws.amazon.com/announcements/2023-001.html)。

## Amazon Linux 安全中心常见问题解答
<a name="alas-faqs"></a>

 有关 ALAS 和 Amazon Linux 如何评估的一些常见问题的答案 CVEs，请参阅[亚马逊 Linux 安全中心 (ALAS) 常见问题解答](https://alas.aws.amazon.com/faqs.html) ()。FAQs

## ALAS 通告
<a name="alas-advisories"></a>

 Amazon Linux 通告包含与 Amazon Linux 用户相关的重要信息，通常是关于安全更新的信息。可以通过 [Amazon Linux 安全中心](https://alas.aws.amazon.com/alas2023.html)在网络上查看通告。通告信息也是 RPM 程序包存储库元数据的一部分。

## 通告和 RPM 存储库
<a name="advisory-and-repos"></a>

 Amazon Linux 2023 程序包存储库可能包含描述零个或多个更新的元数据。`dnf updateinfo` 命令以包含此信息的存储库元数据文件名 `updateinfo.xml` 命名。虽然命令名为 `updateinfo`，而元数据文件引用 `update`，但这些都指代属于通告一部分的程序包更新。

 Amazon Linux 通告发布在 [Amazon Linux 安全中心](https://alas.aws.amazon.com/alas2023.html)网站，同时信息也存在于 `dnf` 程序包管理器引用的 RPM 存储库元数据中。网站和存储库元数据最终会保持一致，但网站和存储库元数据中的信息可能存在暂时性不一致的情况。这通常发生在发布新版本时，在最新 AL2023 版本之后公告有更新时。 AL2023 

 虽然新通告通常与解决问题的程序包更新一起发布，但并非总是如此，也可以为已在已发布程序包中解决的新问题创建通告。现有公告也可以使用新公告进行更新 CVEs ，现有更新将解决这些问题。

 Amazon Linux 2023 的[通过版本控制的存储库进行确定性升级 AL2023](deterministic-upgrades.md)功能意味着特定 AL2023 版本的 RPM 存储库包含截至该版本的 RPM 存储库元数据的快照。这*包括*描述安全更新的元数据。特定 AL2023 版本*的 RPM 存储库在发布后不会更新*。*查看旧版本的 AL2023 RPM 存储库时，新的或更新的安全公告将不可见*。有关如何使用`dnf`软件包管理器查看`latest`存储库版本或特定 AL2023 版本的信息，请参阅[列出适用的通告](listing-applicable-advisories.md)部分。

## 咨询 IDs
<a name="advisory-ids"></a>

 每个通告由一个 `id` 引用。目前，这是亚马逊 Linux 的一个怪癖，[亚马逊 Linux 安全中心](https://alas.aws.amazon.com/alas2023.html)网站将[公 ALAS2023告列为 [ALAS-2024-581](https://alas.aws.amazon.com/AL2023/ALAS-2024-581.html)，而`dnf`软件包管理器会将该公告列为 -2024-581](listing-applicable-advisories.md)。当 [原地应用安全更新](security-inplace-update.md) 时，程序包管理器 ID 需要用于引用特定通告。

 对于 Amazon Linux，每个主要版本的操作系统都有自己的咨询命名空间 IDs。不应对 Amazon Linux 公告的格式做出任何假设 IDs。从历史上看，Amazon Linux Advisory IDs 一直遵循以下模式`NAMESPACE-YEAR-NUMBER`。`NAMESPACE` 的可能值范围未定义，但包括 `ALAS`、`ALASCORRETTO8`、`ALAS2023`、`ALAS2`、`ALASPYTHON3.8` 和 `ALASUNBOUND-1.17`。`YEAR` 是创建通告的年份，`NUMBER` 是命名空间内的唯一整数。

 尽管 IDs Ad *visory 通常*是按更新发布顺序排列的，但有许多原因不可能出现这种情况，因此不应假设这种情况。

 将通告 ID 视为对每个 Amazon Linux 主要版本唯一的不透明字符串。

 在 Amazon Linux 2 中，每个 Extra 在单独的 RPM 存储库中，通告元数据仅包含在相关的存储库中。一个存储库的通告*不适用于*另一个存储库。在 [Amazon Linux 安全中心](https://alas.aws.amazon.com/alas2.html)网站上，目前每个 Amazon Linux 主要版本都有一个通告列表，并未按存储库列表分开。

 由于 AL2023 不使用 Extras 机制来打包其他版本的软件包，因此目前只有两个 RPM 存储库，每个存储库都有咨询、`core`存储库和存储`livepatch`库。`livepatch` 存储库用于 [AL2023 上的内核实时修补](live-patching.md)。

## 通告发布日期和通告更新日期
<a name="advisory-dates"></a>

 Amazon Linux 通告的通告发布日期表示安全更新首次在 RPM 存储库中公开发布的时间。修复方案发布至 RPM 存储库可供安装后，相关通告会立即在 [Amazon Linux 安全中心](https://alas.aws.amazon.com/alas2023.html)网站发布。

 通告更新日期表示在先前发布后向通告添加新信息的时间。

 不应在 AL2023 版本号（例如 2023.6.20241031）和与该版本一起发布的公告公告发布日期之间做出任何假设。

## 通告类型
<a name="advisory-types"></a>

 RPM 存储库元数据支持不同类型的通告。虽然 Amazon Linux 几乎只发布安全更新的通告，但不应假设情况始终如此。可能发布用于错误修复、增强功能和新程序包等事件的通告，且通告标记为包含此类更新。

## 通告严重性
<a name="advisory-severities"></a>

 每份通告有自己的严重性，因为每个问题单独评估。在单个通告中 CVEs 可以解决多个问题，每个 CVE 可能有不同的评估，但该通告本身具有一个严重性。可能有多份通告引用单个程序包更新，因此特定程序包更新可能有多个严重性（每份通告一个）。

 按严重性递减顺序，Amazon Linux 使用严重、重要、中等和低来表示通告的严重性。Amazon Linux 通告也可能*没有严重性*，尽管这极其罕见。

 Amazon Linux 是使用术语“中等”的基于 RPM 的 Linux 发行版之一，而其他一些基于 RPM 的 Linux 发行版使用等效术语“中”。Amazon Linux 程序包管理器将两个术语视为等效，且第三方程序包存储库可能使用术语“中”。

 随着对通告中解决的相关问题了解更多，Amazon Linux 通告可以随时间*改变严重性*。

 通告的严重性*通常*会跟踪该公告所 CVEs 引用的 Amazon Linux 评估的最高 CVSS 分数。在某些情况下可能不是这样。例如，某些已修复但未分配 CVE 编号的问题便会采用此种处理方式。

 更多关于 Amazon Linux 如何使用通告严重性评级的信息，请参阅 [ALAS 常见问题解答](https://alas.aws.amazon.com/faqs.html)。

## 通告和程序包
<a name="advisory-packages"></a>

 单个程序包可能有多份通告，且并非所有程序包都会有通告发布。可以在多个公告中引用特定的软件包版本，每个公告都有自己的严重性和。 CVEs

 在一个新版本中可以同时发布多个针对同一个软件包更新的公告，也可以快速连续 AL2023 发布。

 像其他 Linux 发行版一样，从一个源程序包可以构建一个到多个不同的二进制程序包。例如，[ALAS-2024-698](https://alas.aws.amazon.com/AL2023/ALAS-2024-698.html) 是[亚马逊 Linux 安全中心网站AL2023 部分](https://alas.aws.amazon.com/alas2023.html)列出的适用于该`mariadb105`软件包的公告。这是*源*程序包名称，通告本身引用*二进制*程序包以及源程序包。在这种情况下，从一个 `mariadb105` 源程序包构建了十几个二进制程序包。虽然通常有一个与源程序包同名的二进制程序包，但这并不普遍。

 虽然 Amazon Linux 通告通常列出从更新的源程序包构建的所有二进制程序包，但不应假设情况始终如此。程序包管理器和 RPM 存储库元数据格式允许通告列出更新的二进制程序包子集。

 特定通告也可能仅适用于特定 CPU 架构。有些程序包可能不是为所有架构构建的，也可能存在不影响所有架构的问题。在程序包在所有架构上可用但问题仅适用于一个架构的情况下，Amazon Linux 通常不会发布仅引用受影响架构的通告，尽管不应假设情况始终如此。

 由于程序包依赖关系的性质，通常通告引用一个程序包，但安装该更新需要其他程序包更新，包括未在通告中列出的程序包。`dnf` 程序包管理器将处理安装所需的依赖项。

## 公告和 CVEs
<a name="advisory-cves"></a>

 一份公告可能涉及零个或多个 CVEs，并且可能有多个咨询引用同一 CVE。

 建议何时可能引用零的一个例子 CVEs 是尚未为问题分配 CVE（或从来没有）。

 多份通告可能引用同一 CVE 的例子是当 CVE 适用于多个程序包时。例如，[CVE-2024-21208](https://alas.aws.amazon.com/cve/html/CVE-2024-21208.html) 适用于 Corretto 8、11、17 和 21。[这些 Corretto 版本 AL2023中的每一个都是一个单独的软件包，每个软件包都有公告：[ALAS-2024-754](https://alas.aws.amazon.com/AL2023/ALAS-2024-754.html) 适用于 Corretto 8，ALAS-2024-753 适用于 Corretto 11，[ALAS-2024-752](https://alas.aws.amazon.com/AL2023/ALAS-2024-752.html) 适用于 Corretto 17[，](https://alas.aws.amazon.com/AL2023/ALAS-2024-753.html)ALAS-2024-752 适用于 Corretto 21。](https://alas.aws.amazon.com/AL2023/ALAS-2024-751.html)虽然这些 Corretto 版本都有相同的列表，但不应 CVEs假设这一点。

 对于不同的程序包，可以对特定 CVE 进行不同的评估。例如，如果特定 CVE 在通告中以“重要”严重性引用，可能发布另一份通告引用同一 CVE 但严重性不同。

 RPM 存储库元数据允许列出每份通告的参考文献。虽然 Amazon Linux 通常只引用 CVEs，但元数据格式确实允许其他参考类型。

 RPM 软件包存储库元数据将仅在 CVEs 有可用的修复程序时引用。[亚马逊 Linux 安全中心网站的 “浏览” 部分](https://explore.alas.aws.amazon.com) CVEs 包含有关亚马逊 Linux 评估过的信息。此评估可能导致针对各种 Amazon Linux 版本和程序包的 CVSS 基本分数、严重性和状态。特定 Amazon Linux 版本或程序包的 CVE 状态可能为“不受影响”、“待修复”或“无修复计划”。在公告发布之前，的状态和评估 CVEs 可能会多次*以任何方式*发生变化。这包括重新评估 CVE 对 Amazon Linux 的适用性。

 该公告首次发布后，该公 CVEs 告所引用的列表可能会发生变化。

## 通告文本
<a name="advisory-text"></a>

 通告还将包含描述导致创建通告的问题的文本。通常此文本是未修改的 CVE 文本。此文本可能引用上游版本号，其中修复程序可用，与 Amazon Linux 已应用修复程序的程序包版本不同。通常 Amazon Linux 会从较新的上游版本回溯修复程序。在通告文本提及的上游版本与 Amazon Linux 版本中提供的版本不同的情况下，通告中的 Amazon Linux 程序包版本对于 Amazon Linux 来说将是准确的。

 RPM 存储库元数据中的通告文本可能是占位符文本，详情请访问 [Amazon Linux 安全中心](https://alas.aws.amazon.com/alas2023.html)网站。

## 内核实时补丁通告
<a name="livepatch-advisories"></a>

 实时补丁通告的独特之处在于它们引用不同的程序包（Linux 内核）而不是通告针对的程序包（例如 `kernel-livepatch-6.1.15-28.43`）。

 [内核动态补丁](live-patching.md)公告将引用特定的 Live Patch 包可以针对该实时补丁包所适用的*特定*内核版本解决的问题（例如 CVEs）。

 每个实时补丁都适用于*特定*内核版本。为了应用 CVE 的实时补丁，需要安装适用于您内核版本的正确实时补丁程序包，并应用实时补丁。

 例如，可以针对 AL2023 内核版本、和 `6.1.56-82.125` `6.1.59-84.139``6.1.61-85.141`，对 [CVE-2023-6111](https://alas.aws.amazon.com/cve/html/CVE-2023-6111.html) 进行实时修补。还发布了包含此 CVE 修复程序的新内核版本，并有[单独的通告](https://alas.aws.amazon.com/AL2023/ALAS-2023-461.html)。要在等于或高于 [ALAS2023-2023-461](https://alas.aws.amazon.com/AL2023/ALAS-2023-461.html) 所指定版本的内核版本上 AL2023 解决 [CVE-2023-6111](https://alas.aws.amazon.com/cve/html/CVE-2023-6111.html) 问题，或者需要在应用适用的 livepatch 的情况下*运行*带有此 CVE 实时补丁的内核版本之一。

 当有新的实时补丁可用于特定内核版本时（该版本已有实时补丁可用），会发布新版本的 `kernel-livepatch-KERNEL_VERSION` 程序包。例如，发布公[https://alas.aws.amazon.com/AL2023/ALASLIVEPATCH-2023-003.html](https://alas.aws.amazon.com/AL2023/ALASLIVEPATCH-2023-003.html)告的`kernel-livepatch-6.1.15-28.43-1.0-1.amzn2023`软件包中包含了涵盖三个`6.1.15-28.43`内核的实时补丁 CVEs。后来，该`kernel-livepatch-6.1.15-28.43-1.0-2.amzn2023`软件包发布了公[https://alas.aws.amazon.com/AL2023/ALASLIVEPATCH-2023-009.html](https://alas.aws.amazon.com/AL2023/ALASLIVEPATCH-2023-009.html)告；这是对先前`6.1.15-28.43`内核的实时补丁包的更新，其中包含另外三个的实时补丁 CVEs。还有其他针对其他内核版本的实时补丁通告问题，程序包中包含针对那些特定内核版本的实时补丁。

 更多关于内核实时补丁的信息，请参阅 [AL2023 上的内核实时修补](live-patching.md)。

 对于任何围绕安全通告开发工具的人员，还建议查看 [通告和 `updateinfo.xml` 的 XML 模式](#advisory-schema) 部分以获取更多信息。

## 通告和 `updateinfo.xml` 的 XML 模式
<a name="advisory-schema"></a>

 `updateinfo.xml` 文件是程序包存储库格式的一部分。它是 `dnf` 程序包管理器解析以实现功能（如 [列出适用的通告](listing-applicable-advisories.md) 和 [原地应用安全更新](security-inplace-update.md)）的元数据。

 我们建议使用 `dnf` 程序包管理器的 API，而不是编写自定义代码来解析存储库元数据格式。`dnf`in 的版本 AL2023可以解析 AL2023 和 AL2 存储库格式，因此 API 可用于检查任一操作系统版本的咨询信息。

 [RPM 软件管理](https://github.com/rpm-software-management/)项目在 rpm 元数据存储库中记录了 [RPM 元数据](https://github.com/rpm-software-management/rpm-metadata)格式。 GitHub

 对于围绕直接解析 `updateinfo.xml` 元数据开发工具的人员，强烈建议仔细关注 [rpm-metadata 文档](https://github.com/rpm-software-management/rpm-metadata)。该文档涵盖了实际应用中遇到的情况，其中包含许多可能被您合理理解为元数据格式规则的例外情况。

 上的 [raw-historical-rpm-repository-examples 存储库中还有越来越多的真实`updateinfo.xml`文件示例](https://github.com/rpm-software-management/raw-historical-rpm-repository-examples)。 GitHub

 如果文档中有任何不清楚的地方，你可以在 GitHub 项目上打开一个问题，这样我们就可以回答问题并适当地更新文档。作为开源项目，我们也欢迎通过拉取请求来贡献文档更新。