CVE-2024-45746 Memory corruption in n/a

Critical 9.8 Published Updated

An attacker can exploit unchecked pointer validation in mailbox messages to write arbitrary data to secure firmware, enabling remote code execution and control flow hijacking.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
None listed

What is CVE-2024-45746?

CVE-2024-45746 is a critical memory corruption vulnerability in n/a, published on 9 Oct 2024. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

An issue was discovered in Trusted Firmware-M through 2.1.0. User provided (and controlled) mailbox messages contain a pointer to a list of input arguments (in_vec) and output arguments (out_vec). These list pointers are never validated. Each argument list contains a buffer pointer and a buffer length field. After a PSA call, the length of the output arguments behind the unchecked pointer is updated in mailbox_direct_reply, regardless of the call result. This allows an attacker to write anywhere in the secure firmware, which can be used to take over the control flow, leading to remote code execution (RCE).

Weakness: CWE-120

Which versions are affected by CVE-2024-45746?

How do I fix CVE-2024-45746?

No fix has been published for CVE-2024-45746 yet. Limit exposure of the affected software until one is available.

Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.

Is CVE-2024-45746 being exploited?

There is no known exploitation of CVE-2024-45746 in the wild and no public exploit code.

Sources

Also known as GHSA-jwrv-68vx-g565.

Is CVE-2024-45746 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free