Bug 2541488 (CVE-2026-100236)

Summary: CVE-2026-100236 dpdk: dpdk: heap out-of-bounds read/write in GSO header copy
Product: [Other] Security Response Reporter: OSIDB Bzimport <bzimport>
Component: vulnerabilityAssignee: Product Security DevOps Team <prodsec-dev>
Status: NEW --- QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: akhatavk, aos-team-art-private, asdas, dpaolell, echaudro, eglynn, fleitner, jdelft, jjoyce, jpretori, jschluet, jupierce, ktraynor, lgarciaa, lhh, mbiarnes, mburns, mgarciac, ppalepu, ppostler, prdhamdh, rhel-process-autobot, rkhan, security-response-team, sfaye, sghai, sidsharm, suppawar, vlaad, watson-tool-maintainers
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: ---
Doc Text:
A flaw was found in the DPDK GSO library. When software GSO copies packet headers into a new mbuf, it does not check that the header fits in the source first segment or in the destination buffer, and a header longer than the configured GSO segment size can underflow the payload-size calculation. A remote or guest-supplied packet processed with software GSO can trigger an out-of-bounds read or write.
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2552375, 2552376    
Bug Blocks:    
Deadline: 2026-12-25   

Description OSIDB Bzimport 2026-09-25 15:57:36 UTC
A flaw was found in DPDK lib/gso. hdr_segment_init() copies pkt_hdr_offset bytes from the first mbuf segment into a newly allocated header mbuf using rte_memcpy without checking that the source first segment is long enough or that the destination mbuf has enough tailroom. pkt_hdr_offset is taken from mbuf l2/l3/l4 (and outer) length fields, which applications commonly populate from packet headers including IP IHL and TCP data offset. A related uint16_t subtraction (gso_size - hdr_offset) underflows when the header is larger than gso_size. An application that runs software GSO on packets from an untrusted source (for example a guest via vhost, or scatter RX) can therefore read or write past mbuf bounds.