Security Resilience

CVE-2023-37479

Openenclave ≤ 0.19.3

Published
17 July 2023
Modified
21 November 2024
Patch / advisory
CVSS Score v3.1 5.3
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:H/A:N
EPSS Score 0.0069 52th percentile
Risk Priority 43 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2023-37479 is a medium-severity Improper Initialization (CWE-665) vulnerability in Openenclave Openenclave. Its CVSS base score is 5.3 (Medium).

Operationally, ranked in the top 48% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog.

EU & UK References

Vulnerability Data

Open Enclave is a hardware-agnostic open source library for developing applications that utilize Hardware-based Trusted Execution Environments, also known as Enclaves. There are two issues that are mitigated in version 0.19.3. First, Open Enclave SDK does not properly sanitize the…

more

`MXCSR` register on enclave entry. This makes applications vulnerable to MXCSR Configuration Dependent Timing (MCDT) attacks, where incorrect `MXCSR` values can impact instruction retirement by at most one cycle, depending on the (secret) data operand value. Please find more details in the guidance from Intel in the references. Second, Open Enclave SDK does not sanitize x86's alignment check flag `RFLAGS.AC` on enclave entry. This opens up the possibility for a side-channel attacker to be notified for every unaligned memory access performed by the enclave. The issue has been addressed in version 0.19.3 and the current master branch. Users will need to recompile their applications against the patched libraries to be protected from this vulnerability. There are no known workarounds for this vulnerability.

CWE(s)

Related Threats

CVEs Like This One

CVE-2023-1048Shared CWE-665
CVE-2025-25058Shared CWE-665
CVE-2025-21906Shared CWE-665
CVE-2024-39301Shared CWE-665
CVE-2025-22834Shared CWE-665
CVE-2023-23555Shared CWE-665
CVE-2023-27325Shared CWE-665
CVE-2026-26958Shared CWE-665
CVE-2024-31157Shared CWE-665
CVE-2023-35061Shared CWE-665

Affected Assets

openenclave
openenclave
≤ 0.19.3

Mitigating Controls

Likely Mitigating Controls AI

Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.

addresses: CWE-665

Ensures shared resources are explicitly initialized or cleared on allocation, preventing exposure of prior contents to new users or processes.

addresses: CWE-665

Mandates that every instance begins in a known (presumably clean) state, eliminating reliance on residual or uninitialized state left by prior executions.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

blocks

A.8.25 mandates security requirements, checkpoints, secure coding, testing and developer capability in the SDLC which reaches improper initialization as a design/coding defect, but leaves a bounded remainder (e.g. initialization of third-party components or libraries chosen in procurement, and post-deployment configuration defaults).

blocks

A.8.27 mandates security-by-design principles (least privilege, default-deny, fail-securely, distrust-external-input, hardening) plus explicit design reviews that can catch and block many uninitialized-resource cases before they ship, but leaves a bounded remainder (e.g. vendor libraries, runtime-initialization bugs, or post-review code changes) that can still be present and exploitable.

prevents

Secure coding standards explicitly forbid uninitialized variables and mandate proper resource initialization before use.

finds

Security testing can detect uninitialized variables but does not itself enforce initialization practices.

blocks

defining, enforcing, and monitoring secure configuration templates (including defaults, disabled services, changed vendor passwords, minimized privileges) directly stops most improper-initialization cases from being exploitable; the bounded remainder is initialization logic inside custom application code that no configuration template reaches

Hardening callouts derived

DISA STIG baselines are authored against specific weaknesses. Where this CVE cites a broad weakness class, the mapping is not asserted at that abstraction (owner ruling, 2026-09-25: grade only at Base and below), so no rule is shown here rather than a rule shown against the wrong grain.

  • No fine-grained STIG row for CWE-665, a class-level weakness. Rules are authored against its narrower children: CWE-770.

References