CVE Vulnerabilities

CVE-2023-3674

Mutable Attestation or Measurement Reporting Data

Published: Jul 19, 2023 | Modified: Nov 21, 2024
CVSS 3.x
2.8
LOW
Source:
NVD
CVSS:3.1/AV:L/AC:L/PR:L/UI:R/S:U/C:N/I:L/A:N
CVSS 2.x
RedHat/V2
RedHat/V3
2.3 LOW
CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:N/I:L/A:N
Ubuntu

A flaw was found in the keylime attestation verifier, which fails to flag a devices submitted TPM quote as faulty when the quotes signature does not validate for some reason. Instead, it will only emit an error in the log without flagging the device as untrusted.

Weakness

The register contents used for attestation or measurement reporting data to verify boot flow are modifiable by an adversary.

Affected Software

Name Vendor Start Version End Version
Keylime Keylime * 7.2.5 (excluding)
Red Hat Enterprise Linux 9 RedHat keylime-0:7.3.0-13.el9_3 *

Extended Description

A System-on-Chip (SoC) implements secure boot or verified boot. During this boot flow, the SoC often measures the code that it authenticates. The measurement is usually done by calculating the one-way hash of the code binary and extending it to the previous hash. The hashing algorithm should be a Secure One-Way hash function. The final hash, i.e., the value obtained after the completion of the boot flow, serves as the measurement data used in reporting or in attestation. The calculated hash is often stored in registers that can later be read by the party of interest to determine tampering of the boot flow. A common weakness is that the contents in these registers are modifiable by an adversary, thus spoofing the measurement.

Potential Mitigations

  • Measurement data should be stored in registers that are read-only or otherwise have access controls that prevent modification by an untrusted agent.

References