CVE-2024-26618 arm64/sme: Always exit sme_alloc() early with existing storage

Medium 5.5 Published Updated

A memory corruption vulnerability in the Linux kernel's ARM64 SME implementation allows attackers to cause state corruption and potential privilege escalation.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Local or same network only
Victim action needed
Not needed
Fix
Available

What is CVE-2024-26618?

CVE-2024-26618 is a medium-severity memory corruption vulnerability in Linux kernel, published on 29 Feb 2024. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

In the Linux kernel, the following vulnerability has been resolved:

arm64/sme: Always exit sme_alloc() early with existing storage

When sme_alloc() is called with existing storage and we are not flushing we will always allocate new storage, both leaking the existing storage and corrupting the state. Fix this by separating the checks for flushing and for existing storage as we do for SVE.

Callers that reallocate (eg, due to changing the vector length) should call sme_free() themselves.

Weakness: CWE-770

Which versions are affected by CVE-2024-26618?

It affects 1 product.

Products include Linux kernel.

How do I fix CVE-2024-26618?

Apply the vendor's patch.

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

Is CVE-2024-26618 being exploited?

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

All Linux kernel vulnerabilities

Sources

Also known as BELL-CVE-2024-26618, DEBIAN-CVE-2024-26618, GHSA-6fvm-vq2v-pwgq, ROOT-OS-DEBIAN-12-CVE-2024-26618, UBUNTU-CVE-2024-26618.

Is CVE-2024-26618 in your software?

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

Check your SBOMs for free