IT SBIT Services
Schneeberger
DEEN
CVE tracker

Linux kernel: Improper validation in tracing histograms for synthetic stacktrace fields

CVE-2026-99163High 7.8

← All vulnerabilities

Summary

The Linux kernel tracing histogram code does not properly validate histogram fields used with synthetic stacktrace fields. An 8-byte signed scalar histogram field can pass the check and be treated as a kernel stacktrace pointer, which can lead to kernel memory corruption. An attacker needs a local account with low privileges and access to the tracing interface.

Affected

  • Linux kernel versions from 5.10.237 to before 5.10.273, 5.15.124 to before 5.15.224, and 6.1.43 to before 6.1.191 (per CNA record)
  • Mainline and other stable branches with the affected commits, as listed in the CNA record (affected from 6.3 per CNA ranges, default affected)
  • Distribution kernels: Unknown.

Fixed in

  • Linux stable kernels 5.10.273, 5.15.224, 6.1.191, 6.6.161, 6.12.115, 6.18.59 and 7.2.13 (per CNA record and OSV)
  • Distribution kernel fixed builds: Unknown.

Workaround

  • No vendor workaround known.
  • Restrict access to tracefs/debugfs to root (general hardening, not vendor-documented).

Exploitation

  • Not known to be exploited.
  • No public proof of concept known. Not listed in CISA KEV.

Our recommendation

  • Apply the kernel update from your distribution as part of the normal patch cycle and reboot when required.
  • Until patched, restrict tracefs/debugfs access to root and review local accounts on multi-user hosts.
  • Raise the priority for shared Linux hosts or systems with untrusted local users; monitor for unexpected kernel crashes.
  • Verify the fixed build for your distribution in its security tracker, as the version data is not yet confirmed.

Public exploits

PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.

Research sources

Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 1 Nov 2026, 22:01.

Original description (NVD)

In the Linux kernel, the following vulnerability has been resolved: tracing/histograms: Reject non-stacktrace fields for synthetic stacktrace fields In check_synth_field(), when a synthetic event field is a stacktrace (field->is_stack) and the histogram field is not a "long[" stacktrace array, validation falls through to the generic size and signedness comparison. Because parse_synth_field() sets a stacktrace field's type to "__data_loc unsigned long[]", its size is sizeof(u64) and synth_field_signed() marks it as signed. Consequently, any 8-byte signed scalar histogram field passes the fallback check, and its scalar value is subsequently dereferenced as a kernel stacktrace pointer in get_field_size() and trace_stack(). Furthermore, checking strstr(hist_field->type, "long[") is insufficient because tracepoint fields defined with __bitmask() or __rel_bitmask() also have type "__data_loc unsigned long[]" or "__rel_loc unsigned long[]", whilst create_hist_field() treats them as 4-byte scalar values without HIST_FIELD_FL_STACKTRACE. Propagate HIST_FIELD_FL_STACKTRACE to variable references and field variables (whilst excluding variable aliases from per-element stacktrace capture), and reject any mismatch between HIST_FIELD_FL_STACKTRACE and field->is_stack in check_synth_field().

NVD references (8)

Sources

The tracker combines official, freely usable data sources – updated continuously:

This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.

Affected? We can help.

We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.