CVE-2024-7883

CMSE secure state may leak from stack to floating-point registers

Published Oct 31, 2024 CVSS 3.1 · 3.7 Low EPSS < 1% KEV · Not listed
Description
When using Arm Cortex-M Security Extensions (CMSE), Secure stack
contents can be leaked to Non-secure state via floating-point registers
when a Secure to Non-secure function call is made that returns a
floating-point value and when this is the first use of floating-point
since entering Secure state. This allows an attacker to read a limited
quantity of Secure stack contents with an impact on confidentiality.
This issue is specific to code generated using LLVM-based compilers.

Remediation

Vendor Solution

Recompile affected code using a fixed compiler.

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
EUVD EUVD EUVD-2024-48728 When using Arm Cortex-M Security Extensions (CMSE), Secure stack contents can be leaked to Non-secure state via floating-point registers when a Secure to Non-secure function call is made that returns a floating-point value and when this is the first use of floating-point since entering Secure state. This allows an attacker to read a limited quantity of Secure stack contents with an impact on confidentiality. This issue is specific to code generated using LLVM-based compilers.
History
Type Values Removed Values Added
First Time appeared Arm
Arm arm Compiler For Embedded
Arm arm Compiler For Embedded Fusa
Arm arm Compiler For Functional Safety
Arm clang
CPEs cpe:2.3:a:arm:arm_compiler_for_embedded:*:*:*:*:*:*:*:*
cpe:2.3:a:arm:arm_compiler_for_embedded_fusa:6.16:*:*:*:lts:*:*:*
cpe:2.3:a:arm:arm_compiler_for_embedded_fusa:6.21:*:*:*:lts:*:*:*
cpe:2.3:a:arm:arm_compiler_for_functional_safety:6.6:*:*:*:*:*:*:*
cpe:2.3:a:arm:clang:*:*:*:*:*:*:*:*
Vendors & Products Arm
Arm arm Compiler For Embedded
Arm arm Compiler For Embedded Fusa
Arm arm Compiler For Functional Safety
Arm clang
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description When using Arm Cortex-M Security Extensions (CMSE), Secure stack contents can be leaked to Non-secure state via floating-point registers when a Secure to Non-secure function call is made that returns a floating-point value and when this is the first use of floating-point since entering Secure state. This allows an attacker to read a limited quantity of Secure stack contents with an impact on confidentiality. This issue is specific to code generated using LLVM-based compilers.
Title CMSE secure state may leak from stack to floating-point registers
Weaknesses CWE-226
References
Metrics cvssV3_1

{'score': 3.7, 'vector': 'CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
Arm
Published
Updated
Oct 31, 2024, 5:53 PM
Reserved
Aug 16, 2024, 3:09 PM
Status
Analyzed
Published
Oct 31, 2024, 5:15 PM
Modified
Jun 17, 2026, 8:21 AM
Severity
Low
Public date
Oct 31, 2024, 5:01 PM