From: Paolo Abeni <pabeni@redhat.com>
To: "Simon Horman" <horms@kernel.org>, "Lekë Hapçiu" <snowwlake@icloud.com>
Cc: netdev@vger.kernel.org, davem@davemloft.net, edumazet@google.com,
kuba@kernel.org, krzk@kernel.org, linux-kernel@vger.kernel.org,
stable@vger.kernel.org, David Heidelberg <david@ixit.cz>
Subject: Re: [PATCH net v4 0/5] nfc: fix multiple OOB reads in NCI and LLCP parsing paths
Date: Tue, 28 Apr 2026 15:46:26 +0200 [thread overview]
Message-ID: <3f34146d-f719-4a65-8906-4fc08bc91c22@redhat.com> (raw)
In-Reply-To: <20260428125523.GQ900403@horms.kernel.org>
On 4/28/26 2:55 PM, Simon Horman wrote:
> On Fri, Apr 24, 2026 at 08:01:46PM +0200, Lekë Hapçiu wrote:
>> This series fixes five out-of-bounds / underflow bugs in the kernel NFC
>> stack. All are reachable from a remote NFC peer that the local stack
>> has already associated with; in the LLCP cases the peer only needs to
>> send a malformed frame.
>>
>> 1/5 nci: u8 underflow in nci_store_general_bytes_nfc_dep() lets the
>> attacker-controlled atr_res_len skip the GT-offset subtraction
>> and cause an OOB read/write against general_bytes[].
>> 2/5 llcp: parse_gb_tlv() / parse_connection_tlv() trust the TLV
>> length byte without checking remaining buffer, and the tlv16
>> accessors read past the end when length < 2.
>> 3/5 llcp: nfc_llcp_recv_snl() has the same TLV-length trust bug, and
>> its SDRES handler uses an unbounded "%.16s" pr_debug() that
>> walks past service_name_len.
>> 4/5 llcp: nfc_llcp_recv_dm() reads skb->data[3] without checking
>> skb->len, giving a 1-byte heap OOB read.
>> 5/5 llcp: nfc_llcp_connect_sn() walks the TLV array with no length
>> validation; a crafted CONNECT frame drops it into OOB reads /
>> an unbounded service-name pointer.
>>
>> The series applies on top of net/main.
>>
>> Lekë Hapçiu (5):
>> nfc: nci: fix u8 underflow in nci_store_general_bytes_nfc_dep
>> nfc: llcp: fix TLV parsing in parse_gb_tlv and parse_connection_tlv
>> nfc: llcp: fix TLV parsing OOB in nfc_llcp_recv_snl
>> nfc: llcp: fix OOB read of DM reason byte in nfc_llcp_recv_dm
>> nfc: llcp: fix TLV parsing OOB in nfc_llcp_connect_sn
>
> Hi,
>
> My only feedback on v4 of this patchset is that somehow the
> threading is broken: each of patch 1/5 - 5/5 should be a reply
> to the cover letter - 0/5 - but that does not seem to be the case.
> And some tooling, notably Sashiko, seems to rely on the
> entire patchset being contained in a single email thread.
Given the above, I suggest re-posting.
Also note that we are moving NFC to a specific subtree, see:
https://lore.kernel.org/netdev/938496c6-84c1-4d53-bb56-73bbd7b2bdd7@ixit.cz/
please wait a bit for resubmission, possibly David will be already ready
to catch them.
Thanks,
Paolo
prev parent reply other threads:[~2026-04-28 13:46 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-04-24 18:01 [PATCH net v4 0/5] nfc: fix multiple OOB reads in NCI and LLCP parsing paths Lekë Hapçiu
2026-04-24 18:13 ` [PATCH net v4 3/5] nfc: llcp: fix TLV parsing OOB in nfc_llcp_recv_snl Lekë Hapçiu
2026-04-24 18:13 ` [PATCH net v4 4/5] nfc: llcp: fix OOB read of DM reason byte in nfc_llcp_recv_dm Lekë Hapçiu
2026-04-24 18:13 ` [PATCH net v4 5/5] nfc: llcp: fix TLV parsing OOB in nfc_llcp_connect_sn Lekë Hapçiu
2026-04-28 12:55 ` [PATCH net v4 0/5] nfc: fix multiple OOB reads in NCI and LLCP parsing paths Simon Horman
2026-04-28 13:46 ` Paolo Abeni [this message]
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=3f34146d-f719-4a65-8906-4fc08bc91c22@redhat.com \
--to=pabeni@redhat.com \
--cc=davem@davemloft.net \
--cc=david@ixit.cz \
--cc=edumazet@google.com \
--cc=horms@kernel.org \
--cc=krzk@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=snowwlake@icloud.com \
--cc=stable@vger.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox