CVE Catalog

CVE-2026-31659

CriticalCVSS 9.8
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.42%

35th percentile - higher than 35% of all known CVEs

Summary

In the Linux kernel, batman-adv's batadv_tt_prepare_tvlv_global_data() builds the allocation length for a global TT response in 16-bit temporaries. When a remote originator advertises a large enough global TT, the TT payload length plus the VLAN header offset can exceed 65535 and wrap before kmalloc(). The wrapped allocation is too small, so the function writes past the end of the heap object before the later packet-size check runs.

Risk Assessment

This allows a heap out-of-bounds write in the kernel, which can lead to a crash or potentially code execution. Systems running batman-adv that process TT advertisements from remote nodes are exposed.

Recommendation

Update the Linux kernel to a version containing the fix that rejects TT responses whose TVLV value length cannot fit in the 16-bit TVLV payload length field. Until patched, consider limiting trust in remote TT originators on the batman-adv network.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: batman-adv: reject oversized global TT response buffers batadv_tt_prepare_tvlv_global_data() builds the allocation length for a global TT response in 16-bit temporaries. When a remote originator advertises a large enough global TT, the TT payload length plus the VLAN header offset can exceed 65535 and wrap before kmalloc(). The full-table response path still uses the original TT payload length when it fills tt_change, so the wrapped allocation is too small and batadv_tt_prepare_tvlv_global_data() writes past the end of the heap object before the later packet-size check runs. Fix this by rejecting TT responses whose TVLV value length cannot fit in the 16-bit TVLV payload length field.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS