CVE-2023-43631
Assigner: ASRG
Published: 2023-09-21T13:17:00.528Z
State: PUBLISHED
affected: defaultStatus: unaffected
packageName: EVE OS
product: EVE OS
programFiles: https://github.com/lf-edge/eve/tree/master/pkg/pillar/evetpm/tpm.go
https://github.com/lf-edge/eve/tree/master/pkg/grub/rootfs.cfg
repo: https://github.com/lf-edge/eve
vendor:  LF-Edge, Zededa
versions: lessThan: 8.6.0
status: affected
version: 0
versionType: release
lessThan: 9.5.0
status: affected
version: 9.0.0
versionType: release
credits: type: finder
user: 00000000-0000-4000-9000-000000000000
value: Ilay Levi
descriptions: supportingMedia: base64: no
type: text/html
value: 

On boot, the Pillar eve container checks for the existence and content of
“/config/authorized_keys”.
<br>If the file is present, and contains a supported public key, the container will go on to open
port 22 and enable sshd with the given keys as the authorized keys for root login.
<br>An attacker could easily add their own keys and gain full control over the system without
triggering the “measured boot” mechanism implemented by EVE OS, and without marking
the device as “UUD” (“Unknown Update Detected”).
<br>This is because the “/config” partition is not protected by “measured boot”, it is mutable, and
it is not encrypted in any way.
<br><br>

An attacker can gain full control over the device without changing the PCR values, thus not
triggering the “measured boot” mechanism, and having full access to the vault.

<br><br>Note:
<br>This issue was partially fixed in these commits (after disclosure to Zededa), where the config
partition measurement was added to PCR13:
<br>• aa3501d6c57206ced222c33aea15a9169d629141
<br>• 5fef4d92e75838cc78010edaed5247dfbdae1889.
<br>This issue was made viable in version 9.0.0 when the calculation was moved to PCR14 but it was not included in the measured boot.
value: 
On boot, the Pillar eve container checks for the existence and content of
“/config/authorized_keys”.

If the file is present, and contains a supported public key, the container will go on to open
port 22 and enable sshd with the given keys as the authorized keys for root login.

An attacker could easily add their own keys and gain full control over the system without
triggering the “measured boot” mechanism implemented by EVE OS, and without marking
the device as “UUD” (“Unknown Update Detected”).

This is because the “/config” partition is not protected by “measured boot”, it is mutable, and
it is not encrypted in any way.




An attacker can gain full control over the device without changing the PCR values, thus not
triggering the “measured boot” mechanism, and having full access to the vault.



Note:

This issue was partially fixed in these commits (after disclosure to Zededa), where the config
partition measurement was added to PCR13:

• aa3501d6c57206ced222c33aea15a9169d629141

• 5fef4d92e75838cc78010edaed5247dfbdae1889.

This issue was made viable in version 9.0.0 when the calculation was moved to PCR14 but it was not included in the measured boot.
impacts: capecId: CAPEC-115
descriptions: value: CAPEC-115 Authentication Bypass
metrics: cvssV3_1: attackComplexity: LOW
attackVector: LOCAL
availabilityImpact: HIGH
baseScore: 8.8
baseSeverity: HIGH
confidentialityImpact: HIGH
integrityImpact: HIGH
privilegesRequired: LOW
scope: CHANGED
userInteraction: NONE
vectorString: CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
version: 3.1
format: CVSS
scenarios: value: GENERAL
problemTypes: descriptions: cweId: CWE-522
description: CWE-522 Insufficiently Protected Credentials
type: CWE
descriptions: cweId: CWE-922
description: CWE-922 Insecure Storage of Sensitive Information
type: CWE
source: discovery: UNKNOWN
title: SSH as Root Unlockable Without Triggering Measured Boot
x_generator: engine: Vulnogram 0.1.0-dev