Bug 2554955 (CVE-2026-98573) - CVE-2026-98573 kernel: net: skbuff: fix pull-bound underflow in skb_checksum_setup_ipv6()
Summary: CVE-2026-98573 kernel: net: skbuff: fix pull-bound underflow in skb_checksum_...
Keywords:
Status: NEW
Alias: CVE-2026-98573
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
high
high
Target Milestone: ---
Assignee: Product Security DevOps Team
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-10-18 15:35 UTC by OSIDB Bzimport
Modified: 2026-10-20 03:15 UTC (History)
17 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description OSIDB Bzimport 2026-10-18 15:35:30 UTC
In the Linux kernel, the following vulnerability has been resolved:

net: skbuff: fix pull-bound underflow in skb_checksum_setup_ipv6()

skb_maybe_pull_tail() subtracts skb_headlen(skb) from the unsigned max
argument and passes the result to __pskb_pull_tail() as a signed int.  The
function does not ensure that max is at least skb_headlen(skb).

This can happen while parsing IPv6 extension headers when an skb already
has a linear area larger than MAX_IPV6_HDR_LEN.  Once the parser needs data
beyond the linear area, max - skb_headlen(skb) wraps and is converted to a
negative delta.  __pskb_pull_tail() then passes that negative length to
skb_copy_bits(), where it can become a very large copy length.

Pass the requested length itself as the pull bound at the three
extension-header call sites, so the delta can no longer go negative.


Note You need to log in before you can comment on or make changes to this bug.