All of lore.kernel.org
 help / color / mirror / Atom feed
* CVE-2026-98612: net: usb: catc: bound the RX packet length in catc_rx_done()
@ 2026-10-18 15:17 Greg Kroah-Hartman
  0 siblings, 0 replies; only message in thread
From: Greg Kroah-Hartman @ 2026-10-18 15:17 UTC (permalink / raw)
  To: linux-cve-announce; +Cc: Greg Kroah-Hartman

From: Greg Kroah-Hartman <gregkh@kernel.org>

Description
===========

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

net: usb: catc: bound the RX packet length in catc_rx_done()

catc_rx_done() walks a multi-packet URB, reading a two-byte length from
each packet header. Its bound, pkt_len > urb->actual_length, ignores the
header offset and compares against the whole transfer rather than the
bytes left from pkt_start, so a crafted packet header makes
skb_copy_to_linear_data() read past the buffer.

A length below ETH_HLEN is also accepted, including zero, and
eth_type_trans() then reads a MAC header from the uninitialised tailroom
of a shorter skb. The is_f5u011 branch takes its length straight from
the transfer, so a zero-length URB reaches the same path.

Track the bytes remaining from the current packet, and reject a header
that does not fit, a length past what is left, and a length below an
Ethernet header.

A transfer shorter than an Ethernet header, including a zero-length one,
previously became a runt skb passed to netif_rx() and counted as
received; it is now counted in rx_length_errors and ends the walk.

The Linux kernel CVE team has assigned CVE-2026-98612 to this issue.


Affected and fixed versions
===========================

	Issue introduced in 2.6.12 with commit 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 and fixed in 5.10.271 with commit 3942557938f846e7481f6ccb2b41ccbdee61baa1
	Issue introduced in 2.6.12 with commit 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 and fixed in 5.15.222 with commit 2f87bbd5a7bf6ee79d598f7e22cf77810d29ae87
	Issue introduced in 2.6.12 with commit 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 and fixed in 6.1.189 with commit 4cc0a8eb2f9336cfa3e4ac329bc5585ca970ced3
	Issue introduced in 2.6.12 with commit 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 and fixed in 6.6.158 with commit 21e206dd88b3de6e36bb607dec3797c59bc3007b
	Issue introduced in 2.6.12 with commit 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 and fixed in 6.12.112 with commit 801e21cf7dd6bcee31db907625d5045f21c9c1d9
	Issue introduced in 2.6.12 with commit 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 and fixed in 6.18.55 with commit dd9c6f8f05170223edec2dac476606cd40d9acb7
	Issue introduced in 2.6.12 with commit 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 and fixed in 7.2.9 with commit 9d4be026bdff2c1da7b6c7e01c0a47f2df409e97
	Issue introduced in 2.6.12 with commit 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 and fixed in 7.3-rc5 with commit 9d565b6b72fe3f41fd43636e143072848105189f

Please see https://www.kernel.org for a full list of currently supported
kernel versions by the kernel community.

Unaffected versions might change over time as fixes are backported to
older supported kernel versions.  The official CVE entry at
	https://cve.org/CVERecord/?id=CVE-2026-98612
will be updated if fixes are backported, please check that for the most
up to date information about this issue.


Affected files
==============

The file(s) affected by this issue are:
	drivers/net/usb/catc.c


Mitigation
==========

The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes.  Individual
changes are never tested alone, but rather are part of a larger kernel
release.  Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all.  If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
	https://git.kernel.org/stable/c/3942557938f846e7481f6ccb2b41ccbdee61baa1
	https://git.kernel.org/stable/c/2f87bbd5a7bf6ee79d598f7e22cf77810d29ae87
	https://git.kernel.org/stable/c/4cc0a8eb2f9336cfa3e4ac329bc5585ca970ced3
	https://git.kernel.org/stable/c/21e206dd88b3de6e36bb607dec3797c59bc3007b
	https://git.kernel.org/stable/c/801e21cf7dd6bcee31db907625d5045f21c9c1d9
	https://git.kernel.org/stable/c/dd9c6f8f05170223edec2dac476606cd40d9acb7
	https://git.kernel.org/stable/c/9d4be026bdff2c1da7b6c7e01c0a47f2df409e97
	https://git.kernel.org/stable/c/9d565b6b72fe3f41fd43636e143072848105189f

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2026-10-18 15:33 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-18 15:17 CVE-2026-98612: net: usb: catc: bound the RX packet length in catc_rx_done() Greg Kroah-Hartman

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.