Skip to main content
VulnerabilityPublished Updated

CVE-2026-43186: Linux kernel · ipv6: ioam: fix heap buffer overflow in __ioam6_fill_trace_data()

Affects Linux kernelSource CVE Database V5

0

Not known to be exploited · CVSS 9.8 Critical · fixed in fb3c662fafebc5b9d74417ed1de8759f6bb72143 : patch Linux kernel as a priority.

Data as of 26 Oct 2026, 14:18 UTC

CVSS 3.1 base score
9.8Critical
How severe the flaw is on the 0–10 CVSS scale.
EPSS
0.6% chance of exploitation in 30 days – higher than 50% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
CISA SSVC
Exploitation
No evidence of active exploitation and no public proof of concept
Automatable
Attackers can reliably automate steps 1–4 of the kill chain
Technical impact
Total control over the software or total information disclosure

CISA SSVC assessment, 2026-10-16.

Patch
Available – fixed in fb3c662fafebc5b9d74417ed1de8759f6bb72143, f4d9d4b8fd839719d564651671e24c62c545c23b, ea3632aefc04205436868541638e26f4a74d5637 +4
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

Exploitation evidence

  1. Disclosed: evidence found.

    CVE published 6 May 2026

  2. Detectable: no evidence on record.

    No public nuclei template indexed

  3. Weaponised: no evidence on record.

    No public exploit code indexed in Metasploit or Exploit-DB

  4. Exploited in the wild: no evidence on record.

    Not in CISA KEV and no source reports exploitation

  5. Observed by OffSeq Mirage: no evidence on record.

    No attack traffic recorded by OffSeq Mirage sensors

A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.

What to do

Upgrade to a fixed release listed under Affected software.

Affected software

ProductAffectedFixed in
LinuxLinuxAffected
  • ≥ 9ee11f0fff205b4b3df9750bff5e94f97c71b6a0, < fb3c662fafebc5b9d74417ed1de8759f6bb72143
Fixed in
  • fb3c662fafebc5b9d74417ed1de8759f6bb72143
LinuxLinuxAffected
  • ≥ 9ee11f0fff205b4b3df9750bff5e94f97c71b6a0, < f4d9d4b8fd839719d564651671e24c62c545c23b
Fixed in
  • f4d9d4b8fd839719d564651671e24c62c545c23b
LinuxLinuxAffected
  • ≥ 9ee11f0fff205b4b3df9750bff5e94f97c71b6a0, < ea3632aefc04205436868541638e26f4a74d5637
Fixed in
  • ea3632aefc04205436868541638e26f4a74d5637
LinuxLinuxAffected
  • ≥ 9ee11f0fff205b4b3df9750bff5e94f97c71b6a0, < e90346a2f1e8917d5760a44a1f61c44e3b36d96b
Fixed in
  • e90346a2f1e8917d5760a44a1f61c44e3b36d96b
LinuxLinuxAffected
  • ≥ 9ee11f0fff205b4b3df9750bff5e94f97c71b6a0, < 632d233cf2e64a46865ae2c064ae3c9df7c8864f
Fixed in
  • 632d233cf2e64a46865ae2c064ae3c9df7c8864f
LinuxLinuxAffected
  • ≥ 9ee11f0fff205b4b3df9750bff5e94f97c71b6a0, < 0591d6509c2ff13f09ea2998434aba0c0472e978
Fixed in
  • 0591d6509c2ff13f09ea2998434aba0c0472e978

Description

In the Linux kernel, the following vulnerability has been resolved: ipv6: ioam: fix heap buffer overflow in __ioam6_fill_trace_data() On the receive path, __ioam6_fill_trace_data() uses trace->nodelen to decide how much data to write for each node. It trusts this field as-is from the incoming packet, with no consistency check against trace->type (the 24-bit field that tells which data items are present). A crafted packet can set nodelen=0 while setting type bits 0-21, causing the function to write ~100 bytes past the allocated region (into skb_shared_info), which corrupts adjacent heap memory and leads to a kernel panic. Add a shared helper ioam6_trace_compute_nodelen() in ioam6.c to derive the expected nodelen from the type field, and use it: - in ioam6_iptunnel.c (send path, existing validation) to replace the open-coded computation; - in exthdrs.c (receive path, ipv6_hop_ioam) to drop packets whose nodelen is inconsistent with the type field, before any data is written. Per RFC 9197, bits 12-21 are each short (4-octet) fields, so they are included in IOAM6_MASK_SHORT_FIELDS (changed from 0xff100000 to 0xff1ffc00).

References

Community reviews

Loading reviews…