CVE-2026-63891
NoneCVSS
—
EPSS
0.3%
Published
Jul 19, 2026
CISA due date
—
Cloudanix analysis
A malicious Thunderbolt device can crash vulnerable Linux computers when it is plugged in or connected as a peer.
- Exploitation
- Adjacent Network
- Attacker needs
- None
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- OS kernel
- Class
- Denial of service
- Remediation
- Patch
- Effort
- Low
- Patch risk
- Low
What it actually does
This vulnerability is a Linux kernel denial-of-service flaw in the Thunderbolt XDomain property parser. A malicious or compromised Thunderbolt peer can send a crafted property directory structure containing recursive DIRECTORY entries that loop back on themselves. Because the vulnerable parser recurses without enforcing a maximum depth, the kernel stack can be exhausted, triggering the guard page and causing a kernel crash or system panic. Exploitation does not require authentication once an untrusted Thunderbolt XDomain peer can participate in the PROPERTIES_REQUEST control-plane exchange.
Why it matters to the business
An attacker with physical or adjacent Thunderbolt access, such as through a malicious cable, dock, inline device, or connected host, could crash affected Linux systems. The likely consequence is local service interruption, workstation or server downtime, failed jobs, and potential disruption to users relying on Thunderbolt-connected systems. The current EPSS score is low and the issue is not listed in CISA KEV, but systems that allow untrusted Thunderbolt devices or XDomain host-to-host discovery have higher operational risk because exploitation is unauthenticated once the peer connection is established.
How an attack unfolds
An attacker places or controls a Thunderbolt-capable peer device, dock, cable, inline inspection device, or adjacent host that can communicate with the target over the Thunderbolt XDomain control path. During the XDomain discovery or properties exchange, the malicious peer responds to a PROPERTIES_REQUEST with a crafted property block. The property block contains DIRECTORY entries whose value fields point back to earlier directory offsets or otherwise form a recursive chain. On vulnerable kernels, __tb_property_parse_dir() follows these DIRECTORY entries recursively without a depth limit. The recursion continues until the kernel stack is exhausted, causing the guard page to fire and the kernel to panic or crash. The result is denial of service rather than code execution based on the available vulnerability details.
How to fix it
Upgrade to a Linux kernel version that includes the Thunderbolt property parser fix introducing a recursion depth limit for tb_property_parse() and __tb_property_parse_dir(), rejecting property blocks deeper than TB_PROPERTY_MAX_DEPTH = 8. Where vendor package versions are used, apply the relevant distribution kernel security update as soon as it becomes available. If XDomain host-to-host Thunderbolt discovery is not required, disable the vulnerable path by adding thunderbolt.xdomain=0 to the kernel command line and rebooting. For higher-risk systems, restrict physical access to Thunderbolt ports, avoid untrusted docks/cables/adapters, and use platform Thunderbolt authorization/security controls where available.
How to confirm the fix worked
Confirm the running kernel contains the Thunderbolt parser fix from the vendor or upstream stable branch. Validate that the system has booted into the patched kernel, not merely installed it. If mitigation is used, verify the active kernel command line contains thunderbolt.xdomain=0 by checking /proc/cmdline. Confirm Thunderbolt XDomain functionality is disabled or no longer reachable where it is not required. Review recent kernel logs for Thunderbolt-related crashes, stack overflows, guard-page faults, or kernel panics after connecting Thunderbolt devices. Where feasible in a lab, use a controlled malformed XDomain peer test to confirm the system rejects excessive property nesting instead of crashing.
Typical attack path
- Obtain physical or adjacent access to the target through a Thunderbolt path, such as a malicious dock, cable, inline device, or connected host.
- Ensure Thunderbolt XDomain discovery or host-to-host communication is enabled on the target system.
- Initiate or wait for the Thunderbolt PROPERTIES_REQUEST control-plane exchange.
- Return a crafted property directory containing recursive DIRECTORY entries or a back-reference loop.
- Cause the vulnerable kernel parser to recursively process the directory structure without a depth limit.
- Exhaust the kernel stack and trigger a kernel guard-page fault, resulting in system crash or panic.
How to detect it
Post-exploitation detection should focus on evidence of kernel instability shortly after Thunderbolt device attachment or XDomain negotiation. Review kernel logs from journalctl, dmesg, /var/log/kern.log, /var/log/messages, and crash dump infrastructure for Thunderbolt events followed by stack exhaustion, guard-page faults, kernel oopses, panics, or reboots. Correlate timestamps with physical device connection events, Thunderbolt authorization logs, USB4/Thunderbolt enumeration, and user reports of sudden restarts. Look for repeated crashes triggered by the same dock, cable, adapter, or adjacent host. If kernel crash dumps are collected, inspect backtraces for thunderbolt property parsing functions such as tb_property_parse or __tb_property_parse_dir. Since the attack is likely physical or adjacent rather than remote over IP, network logs are generally less useful than endpoint kernel logs, hardware connection telemetry, and crash artifacts.
- thunderbolt.xdomain=0
- PROPERTIES_REQUEST
- __tb_property_parse_dir
- tb_property_parse
- TB_PROPERTY_MAX_DEPTH
- thunderbolt
- kernel stack overflow
- stack guard page
- guard page
- kernel panic
- BUG: kernel NULL pointer dereference
- Oops:
- general protection fault
- Kernel panic - not syncing
- /proc/cmdline
- /var/log/kern.log
- /var/log/messages
What your security team should do
- Prioritize patching Linux systems that expose Thunderbolt ports to users, visitors, shared workspaces, labs, kiosks, or other physically accessible environments.
- Disable Thunderbolt XDomain host-to-host discovery with thunderbolt.xdomain=0 on systems that do not explicitly require it.
- Apply vendor kernel security updates and reboot into the fixed kernel; track systems that have installed but not yet booted the patched kernel.
- Restrict use of untrusted Thunderbolt docks, cables, adapters, and peer hosts, especially on privileged workstations and operationally critical Linux systems.
- Enable firmware, BIOS, or OS-level Thunderbolt authorization controls where supported.
- Monitor kernel logs for Thunderbolt property parsing failures, kernel stack exhaustion, guard-page faults, and unexplained crashes following Thunderbolt device connection.
- Because EPSS is currently low and no KEV listing is present, treat this as highest priority for physically exposed or Thunderbolt-heavy environments rather than as an internet-scale emergency.
The record
In the Linux kernel, the following vulnerability has been resolved: thunderbolt: property: Cap recursion depth in __tb_property_parse_dir() A DIRECTORY entry's value field is used as the dir_offset for a recursive call into __tb_property_parse_dir() with no depth counter. A crafted peer that chains DIRECTORY entries into a back-reference loop drives the parser until the kernel stack is exhausted and the guard page fires. Any untrusted XDomain peer (cable, dock, in-line inspector, adjacent host) that reaches the PROPERTIES_REQUEST control-plane exchange can trigger this without authentication. Thread a depth counter through tb_property_parse() and __tb_property_parse_dir(), and reject blocks that exceed TB_PROPERTY_MAX_DEPTH = 8. That is comfortably larger than any observed legitimate XDomain layout. Operators who do not need XDomain host-to-host discovery can disable the path entirely with thunderbolt.xdomain=0 on the kernel command line.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|