CVE-2026-31680: Linux Kernel use-after-free in IPv6 flowlabel

CVE-2026-31680 · Severity: high · CVSS 7.8 · Published 2026-04-25

A vulnerability in the Linux kernel's networking component could allow a local user to crash the system. The issue occurs when the system attempts to read network flow information while that information is simultaneously being deleted. This can lead to a system instability or a complete crash, potentially disrupting operations or services running on the affected machine.

Technologies: Linux Kernel, Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP, Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP. Vendors: Linux, Siemens.

Quick answers

Is CVE-2026-31680 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-31680 being exploited in the wild.
How severe is CVE-2026-31680?
High severity, with a CVSS score of 7.8, published 25 April 2026.
Which products and versions are affected?
Linux Kernel Fixed in 6.14, 6.13, 6.12, 6.11, 6.6, 6.1, 5.15, 5.10, 5.4, 4.19; Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP V3.1.5, V3.1.6; Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP V3.1.5, V3.1.6.
Is there a fix for CVE-2026-31680?
A patch was published on 2026-04-18: Patched in various stable kernel branches Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-31680 attacked?
It is attacked with local access, in an operating system.
Am I affected by CVE-2026-31680?
Check whether you run Linux Kernel, Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP or Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Technical details

A use-after-free vulnerability exists in net/ipv6/ip6_flowlabel.c due to a race condition between flowlabel release and RCU-protected readers. The function fl_release() prematurely frees 'fl->opt' for exclusive flowlabels when the user count drops to zero, even though the parent 'struct ip6_flowlabel' remains visible in the global hash table until garbage collection. A concurrent reader of /proc/net/ip6_flowlabel (via ip6fl_seq_show) can dereference this freed memory, resulting in a kernel oops or crash. The fix defers the freeing of the option block until the final RCU teardown in fl_free_rcu(). This affects various Linux kernel versions and downstream products like Siemens SIMATIC S7-1500 CPUs.

Affected products

  • Linux Linux Kernel Fixed in 6.14, 6.13, 6.12, 6.11, 6.6, 6.1, 5.15, 5.10, 5.4, 4.19
  • Siemens SIMATIC S7-1500 CPU 1518-4 PN/DP MFP V3.1.5, V3.1.6
  • Siemens SIMATIC S7-1500 CPU 1518F-4 PN/DP MFP V3.1.5, V3.1.6

Timeline

  • 2026-04-25: disclosed
  • 2026-04-18: patched: Patched in various stable kernel branches

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.