---
id: CVE-2026-98687
title: 'thunderbolt: Reject oversized XDomain properties responses'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  thunderbolt: Reject oversized XDomain properties responses

  tb_xdp_properties_request() allocates room for 45 data dwords in its
  252-byte response buffer.  The XDomain …
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= d1ff70241a275133e1a0258b7c23588b122276c8 <
    a766a86ff48acee76aeb8e2575771040749e509d
  - >-
    Linux >= d1ff70241a275133e1a0258b7c23588b122276c8 <
    2f97f929dad9eb3e1f63b721d2dd49bf9bc68efa
  - >-
    Linux >= d1ff70241a275133e1a0258b7c23588b122276c8 <
    737a1d2e9642d5f718bd29aa4a98b9eef3832f0a
  - >-
    Linux >= d1ff70241a275133e1a0258b7c23588b122276c8 <
    80756e263846ab694984e749e8c626897331438f
  - Linux 4.15
published: '2026-10-18'
updated: '2026-10-18'
sourceUpdated: '2026-10-18T15:45:58.719Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-98687'
references:
  - url: 'https://git.kernel.org/stable/c/a766a86ff48acee76aeb8e2575771040749e509d'
  - url: 'https://git.kernel.org/stable/c/2f97f929dad9eb3e1f63b721d2dd49bf9bc68efa'
  - url: 'https://git.kernel.org/stable/c/737a1d2e9642d5f718bd29aa4a98b9eef3832f0a'
  - url: 'https://git.kernel.org/stable/c/80756e263846ab694984e749e8c626897331438f'
tags:
  - cve.org
ingestedAt: '2026-10-18T16:47:32.527Z'
---

## Overview

In the Linux kernel, the following vulnerability has been resolved:

thunderbolt: Reject oversized XDomain properties responses

tb_xdp_properties_request() allocates room for 45 data dwords in its
252-byte response buffer.  The XDomain length field is six bits wide,
however, and a malicious peer can set it to 63.  After the fixed response
fields are subtracted, the driver treats this as 48 data dwords.

Commit 322e93448d90 ("thunderbolt: Clamp XDomain response data copy to
allocation size") only bounds the copy against data_len.  If data_len is
at least 48, memcpy() reads 192 bytes from the 180-byte res->data array,
causing a 12-byte heap out-of-bounds read.  Commit 4db2bd2ed478
("thunderbolt: Limit XDomain response copy to actual frame size") limits
the earlier copy but does not constrain this header-derived length.

Reject response data lengths that exceed the allocated source buffer
before copying them into the assembled property block.

## Affected

- `Linux >= d1ff70241a275133e1a0258b7c23588b122276c8 < a766a86ff48acee76aeb8e2575771040749e509d`
- `Linux >= d1ff70241a275133e1a0258b7c23588b122276c8 < 2f97f929dad9eb3e1f63b721d2dd49bf9bc68efa`
- `Linux >= d1ff70241a275133e1a0258b7c23588b122276c8 < 737a1d2e9642d5f718bd29aa4a98b9eef3832f0a`
- `Linux >= d1ff70241a275133e1a0258b7c23588b122276c8 < 80756e263846ab694984e749e8c626897331438f`
- `Linux 4.15`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
