KernelScan.io

HIGH Introduced in 4.15

thunderbolt RootSwitch UAF

CVE-2026-97508

CVSS 7.5 / 10.0 NVD

CVSS:3.1/AV:A/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H

KernelScan AI6.4MEDIUM

01

In the Linux kernel, the following vulnerability has been resolved: thunderbolt: Set tb->root_switch to NULL when domain is stopped Similarly what we do with the firmware connection manager. This makes tb_xdp_handle_request() return error to the remote host. However, we need to make sure we keep the uuid alive so that we can reply until the whole domain is released.

02

Engine v0.6.0

Risk summary

A use-after-free vulnerability in the Linux Thunderbolt driver can be triggered when a domain is stopped while cross-domain requests from a connected peer are being processed concurrently. An attacker with physical access to a Thunderbolt port could exploit the race window to cause kernel memory corruption, potentially leading to information disclosure, privilege escalation, or a system crash.

Affecteddrivers/thunderbolt/tb.c (thunderbolt)

Vulnerability analysis

When a Thunderbolt domain is shut down, the driver frees an internal switch object but leaves a reference to it in place. A concurrently running request from a connected peer can then access that freed object through the stale reference. The fix clears the reference as soon as the object is removed so incoming requests see the domain as stopped, duplicates the data needed to reply to peers while it is still safe to access, and guards the downstream path that walks switch ports. A malicious device plugged into a Thunderbolt port can send requests during the shutdown window to trigger the race.

03

BranchIntroducedFixed inPatch commit
5.104.155.10.271d9a638e7bc87
5.154.155.15.22266b0fe27e277
6.14.156.1.18954ad3415cc21
6.124.156.12.111f06e9fbae78a
6.184.156.18.5399f019d2e9eb
6.64.156.6.15883d1af5b1b6e
mainline4.157.2e56249d8a68e
cip/5.104.155.10.271-cip78d9a638e7bc87
cip/6.14.156.1.189-cip6154ad3415cc21
cip/6.1-rt4.156.1.189-cip61-rt3254ad3415cc21
cip/6.124.156.12.111-cip32f06e9fbae78a

04

State of the newest release of each Civil Infrastructure Platform SLTS tree, from CIP's own fix records.

CIP treeState
cip/6.12Fixed in 6.12.111-cip32
cip/6.1Fixed in 6.1.189-cip61
cip/6.1-rtFixed in 6.1.189-cip61-rt32
cip/5.10Fixed in 5.10.271-cip78
cip/5.10-rtAffected — no CIP fix yet (latest 5.10.268-cip77-rt34)
cip/4.19Affected — no CIP fix yet (latest 4.19.325-cip136)
cip/4.19-rtAffected — no CIP fix yet (latest 4.19.325-cip136-rt50)