From: Michael Bommarito <michael.bommarito@gmail.com>
To: Mika Westerberg <westeri@kernel.org>,
Andreas Noever <andreas.noever@gmail.com>,
Yehezkel Bernat <YehezkelShB@gmail.com>
Cc: linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH 0/6] thunderbolt: harden XDomain property exchange
Date: Mon, 25 May 2026 05:28:24 -0400 [thread overview]
Message-ID: <20260525092830.735472-1-michael.bommarito@gmail.com> (raw)
This series fixes 4 memory-safety defects and 1 data-handling
hardening issue in the Thunderbolt XDomain property exchange path
(property.c and xdomain.c) and adds KUnit regression tests.
All are reachable from an adjacent Thunderbolt peer without
authentication. The XDomain protocol runs automatically on cable
insertion regardless of the configured security level, unless
disabled with thunderbolt.xdomain=0.
Patches:
1/6 - reject zero-length property entries in validator
2/6 - bound root directory content to block size
3/6 - clamp XDomain response data copy to allocation size
4/6 - validate XDomain request packet size before type cast
5/6 - limit XDomain response copy to actual frame size
6/6 - add KUnit tests for property parser bounds checks
Tested with KASAN on v7.1-rc3 and over Thunderbolt 4 hardware.
KUnit regression tests (patch 6) confirm the fixes and existing
tb_test_property_* tests pass on the patched tree.
Based-on: thunderbolt/fixes (928abe19fbf01)
Michael Bommarito (6):
thunderbolt: reject zero-length property entries in validator
thunderbolt: bound root directory content to block size
thunderbolt: clamp XDomain response data copy to allocation size
thunderbolt: validate XDomain request packet size before type cast
thunderbolt: limit XDomain response copy to actual frame size
thunderbolt: test: add KUnit tests for property parser bounds checks
drivers/thunderbolt/property.c | 6 ++++++
drivers/thunderbolt/test.c | 40 ++++++++++++++++++++++++++++++++++++++++
drivers/thunderbolt/xdomain.c | 14 +++++++++++---
3 files changed, 57 insertions(+), 3 deletions(-)
next reply other threads:[~2026-05-25 9:28 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-25 9:28 Michael Bommarito [this message]
2026-05-25 9:28 ` [PATCH 1/6] thunderbolt: reject zero-length property entries in validator Michael Bommarito
2026-05-25 9:28 ` [PATCH 2/6] thunderbolt: bound root directory content to block size Michael Bommarito
2026-05-25 9:28 ` [PATCH 3/6] thunderbolt: clamp XDomain response data copy to allocation size Michael Bommarito
2026-05-25 9:28 ` [PATCH 4/6] thunderbolt: validate XDomain request packet size before type cast Michael Bommarito
2026-05-25 9:28 ` [PATCH 5/6] thunderbolt: limit XDomain response copy to actual frame size Michael Bommarito
2026-05-25 9:28 ` [PATCH 6/6] thunderbolt: test: add KUnit tests for property parser bounds checks Michael Bommarito
2026-05-26 13:32 ` [PATCH 0/6] thunderbolt: harden XDomain property exchange Mika Westerberg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260525092830.735472-1-michael.bommarito@gmail.com \
--to=michael.bommarito@gmail.com \
--cc=YehezkelShB@gmail.com \
--cc=andreas.noever@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=westeri@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.