CVE-2023-53333
Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
16/09/2025
Last modified:
17/09/2025
Description
In the Linux kernel, the following vulnerability has been resolved:<br />
<br />
netfilter: conntrack: dccp: copy entire header to stack buffer, not just basic one<br />
<br />
Eric Dumazet says:<br />
nf_conntrack_dccp_packet() has an unique:<br />
<br />
dh = skb_header_pointer(skb, dataoff, sizeof(_dh), &_dh);<br />
<br />
And nothing more is &#39;pulled&#39; from the packet, depending on the content.<br />
dh->dccph_doff, and/or dh->dccph_x ...)<br />
So dccp_ack_seq() is happily reading stuff past the _dh buffer.<br />
<br />
BUG: KASAN: stack-out-of-bounds in nf_conntrack_dccp_packet+0x1134/0x11c0<br />
Read of size 4 at addr ffff000128f66e0c by task syz-executor.2/29371<br />
[..]<br />
<br />
Fix this by increasing the stack buffer to also include room for<br />
the extra sequence numbers and all the known dccp packet type headers,<br />
then pull again after the initial validation of the basic header.<br />
<br />
While at it, mark packets invalid that lack 48bit sequence bit but<br />
where RFC says the type MUST use them.<br />
<br />
Compile tested only.<br />
<br />
v2: first skb_header_pointer() now needs to adjust the size to<br />
only pull the generic header. (Eric)<br />
<br />
Heads-up: I intend to remove dccp conntrack support later this year.
Impact
References to Advisories, Solutions, and Tools
- https://git.kernel.org/stable/c/26bd1f210d3783a691052c51d76bb8a8bbd24c67
- https://git.kernel.org/stable/c/337fdce450637ea663bc816edc2ba81e5cdad02e
- https://git.kernel.org/stable/c/5c618daa5038712c4a4ef8923905a2ea1b8836a1
- https://git.kernel.org/stable/c/8c0980493beed3a80d6329c44ab293dc8c032927
- https://git.kernel.org/stable/c/9bdcda7abaf22f6453e5b5efb7eb4e524095d5d8
- https://git.kernel.org/stable/c/c052797ac36813419ad3bfa54cb8615db4b41f15
- https://git.kernel.org/stable/c/ff0a3a7d52ff7282dbd183e7fc29a1fe386b0c30