CVE-2023-43635
Vault Key Sealed With SHA1 PCRs
Severity Score
Exploit Likelihood
Affected Versions
Public Exploits
0Exploited in Wild
-Decision
Descriptions
Vault Key Sealed With SHA1 PCRs
The measured boot solution implemented in EVE OS leans on a PCR locking mechanism.
Different parts of the system update different PCR values in the TPM, resulting in a unique
value for each PCR entry.
These PCRs are then used in order to seal/unseal a key from the TPM which is used to
encrypt/decrypt the “vault” directory.
This “vault” directory is the most sensitive point in the system and as such, its content should
be protected.
This mechanism is noted in Zededa’s documentation as the “measured boot” mechanism,
designed to protect said “vault”.
The code that’s responsible for generating and fetching the key from the TPM assumes that
SHA256 PCRs are used in order to seal/unseal the key, and as such their presence is being
checked.
The issue here is that the key is not sealed using SHA256 PCRs, but using SHA1 PCRs.
This leads to several issues:
• Machines that have their SHA256 PCRs enabled but SHA1 PCRs disabled, as well
as not sealing their keys at all, meaning the “vault” is not protected from an attacker.
• SHA1 is considered insecure and reduces the complexity level required to unseal the
key in machines which have their SHA1 PCRs enabled.
An attacker can very easily retrieve the contents of the “vault”, which will effectively render
the “measured boot” mechanism meaningless.
Vault Key Sealed With SHA1 PCRs La solución de arranque medido implementada en EVE OS se apoya en un mecanismo de bloqueo de PCR. Diferentes partes del sistema actualizan diferentes valores de PCR en el TPM, lo que da como resultado un valor único para cada entrada de PCR. Estos PCR se utilizan luego para sellar/abrir una clave del TPM que se utiliza para cifrar/descifrar el directorio "vault". Este directorio "vault" es el punto más sensible del sistema y, como tal, su contenido debe estar protegido. Este mecanismo está señalado en la documentación de Zededa como el mecanismo de “measured boot”, diseñado para proteger dicha “vault”. El código responsable de generar y obtener la clave del TPM asume que se utilizan PCR SHA256 para sellar/abrir la clave y, como tal, se verifica su presencia. El problema aquí es que la clave no se sella mediante PCR SHA256, sino mediante PCR SHA1. Esto genera varios problemas: • Máquinas que tienen sus PCR SHA256 habilitadas pero las PCR SHA1 deshabilitadas, además de que no sellan sus claves en absoluto, lo que significa que la “vault” no está protegida de un atacante. • SHA1 se considera inseguro y reduce el nivel de complejidad requerido para desbloquear la clave en máquinas que tienen sus PCR SHA1 habilitados. Un atacante puede recuperar muy fácilmente el contenido de la "vault", lo que efectivamente dejará sin sentido el mecanismo de "measured boot".
CVSS Scores
SSVC
- Decision:Track*
Timeline
- 2023-09-20 CVE Reserved
- 2023-09-20 CVE Published
- 2023-09-22 EPSS Updated
- 2024-09-25 CVE Updated
- ---------- Exploited in Wild
- ---------- KEV Due Date
- ---------- First Exploit
CWE
- CWE-327: Use of a Broken or Risky Cryptographic Algorithm
- CWE-328: Use of Weak Hash
- CWE-522: Insufficiently Protected Credentials
CAPEC
- CAPEC-115: Authentication Bypass
References (1)
URL | Tag | Source |
---|---|---|
https://asrg.io/security-advisories/cve-2023-43635 |
URL | Date | SRC |
---|
URL | Date | SRC |
---|
URL | Date | SRC |
---|
Affected Vendors, Products, and Versions
Vendor | Product | Version | Other | Status | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Vendor | Product | Version | Other | Status | <-- --> | Vendor | Product | Version | Other | Status |
Linuxfoundation Search vendor "Linuxfoundation" | Edge Virtualization Engine Search vendor "Linuxfoundation" for product "Edge Virtualization Engine" | < 9.5.0 Search vendor "Linuxfoundation" for product "Edge Virtualization Engine" and version " < 9.5.0" | - |
Affected
|