CVE-2026-64089 batman-adv: tt: fix negative last_changeset_len

Critical 9.8 Published Updated

An integer overflow in the batman-adv kernel module can lead to uninitialized memory disclosure when handling translation table responses.

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

What is CVE-2026-64089?

CVE-2026-64089 is a critical vulnerability in Linux kernel, published on 19 Jul 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

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

batman-adv: tt: fix negative last_changeset_len

batadv_piv_tt::last_changeset_len len was declared as s16, but the field is never intended to hold a negative value. When a value greater than 32767 is assigned, it wraps to a negative signed integer.

In batadv_send_my_tt_response(), last_changeset_len is temporarily widened to s32. The incorrectly negative s16 value propagates into the s32, causing batadv_tt_prepare_tvlv_local_data() to allocate a full sized buffer but populates only a small portion of it with the collected changeset. All remaining bits are kept uninitialized.

Using an u16 avoids this type confusion and ensures that no (negative) sign extension is performed in batadv_send_my_tt_response().

Which versions are affected by CVE-2026-64089?

It affects 1 product.

Products include Linux kernel.

How do I fix CVE-2026-64089?

Apply the vendor's patch.

Is CVE-2026-64089 being exploited?

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

All Linux kernel vulnerabilities

Sources

Also known as BELL-CVE-2026-64089, DEBIAN-CVE-2026-64089, GHSA-7jfx-377j-9v79, UBUNTU-CVE-2026-64089.

Is CVE-2026-64089 in your software?

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

Check your SBOMs for free