CVE-2026-98687
Description
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.
How to fix
- Linux Linux9fba032802b5858bc6186b34f8e966429ff155ab, 7c028d2ae85eca86b82cab1163a9ac1187a2e666, 37ea4304bd9f57ebe719409f010915495467f05c, b270c1074860de74da0d6b5250fb06b359b9d509, a766a86ff48acee76aeb8e2575771040749e509d, 2f97f929dad9eb3e1f63b721d2dd49bf9bc68efa, 737a1d2e9642d5f718bd29aa4a98b9eef3832f0a, 80756e263846ab694984e749e8c626897331438f or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| Linux Linux | d1ff70241a275133e1a0258b7c23588b122276c8 ≤ v < 9fba032802b5858bc6186b34f8e966429ff155ab, d1ff70241a275133e1a0258b7c23588b122276c8 ≤ v < 7c028d2ae85eca86b82cab1163a9ac1187a2e666, d1ff70241a275133e1a0258b7c23588b122276c8 ≤ v < 37ea4304bd9f57ebe719409f010915495467f05c, d1ff70241a275133e1a0258b7c23588b122276c8 ≤ v < b270c1074860de74da0d6b5250fb06b359b9d509, d1ff70241a275133e1a0258b7c23588b122276c8 ≤ v < a766a86ff48acee76aeb8e2575771040749e509d, d1ff70241a275133e1a0258b7c23588b122276c8 ≤ v < 2f97f929dad9eb3e1f63b721d2dd49bf9bc68efa, d1ff70241a275133e1a0258b7c23588b122276c8 ≤ v < 737a1d2e9642d5f718bd29aa4a98b9eef3832f0a, d1ff70241a275133e1a0258b7c23588b122276c8 ≤ v < 80756e263846ab694984e749e8c626897331438f, 4.15 | 9fba032802b5858bc6186b34f8e966429ff155ab, 7c028d2ae85eca86b82cab1163a9ac1187a2e666, 37ea4304bd9f57ebe719409f010915495467f05c, b270c1074860de74da0d6b5250fb06b359b9d509, a766a86ff48acee76aeb8e2575771040749e509d, 2f97f929dad9eb3e1f63b721d2dd49bf9bc68efa, 737a1d2e9642d5f718bd29aa4a98b9eef3832f0a, 80756e263846ab694984e749e8c626897331438f |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.