All vulnerabilities
CVE-2026-98375

Linux: xen/netfront: drop RX packets with a short Ethernet header

Linux LinuxOperating systems
CVSS
NoneNot scored
ExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)0.18%Chance of exploitation activity in the next 30 days, higher than 6% of CVEs. Scored 23 Oct 2026FIRST EPSS
Fixed in0542d213253eec18785a24b603b28bd385dfe4a5Also 236a17caebcff31f75bec5ff4136bde2de944e40, 72d2f54367895d6e236b9857892e2e6b6036e067 and 1 moreCVE List
Published9 Oct 2026Updated 21 Oct 2026CVE List

What fixes it

  • 0542d213253eec18785a24b603b28bd385dfe4a5LinuxCVE List
  • 236a17caebcff31f75bec5ff4136bde2de944e40LinuxCVE List
  • 72d2f54367895d6e236b9857892e2e6b6036e067LinuxCVE List
  • 089e58805c452e52179482b1025a8e309a57f801LinuxCVE List

A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.

Description

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

xen/netfront: drop RX packets with a short Ethernet header

handle_incoming_queue() pulls pull_to bytes into the head before calling eth_type_trans(). pull_to is the length of the first RX slot, capped at RX_COPY_THRESHOLD, and that length comes from the backend. Nothing checks it against ETH_HLEN.

If the first slot is shorter than ETH_HLEN and more slots follow, the head ends up shorter than an Ethernet header while skb->len is longer, and eth_type_trans() BUG()s in __skb_pull(). If the whole packet is shorter than ETH_HLEN, eth_type_trans() reads the header past the end of the data instead.

Pull at least ETH_HLEN, and drop the packet if that fails, which also drops packets too short to hold an Ethernet header. This also checks the return value of the pull, which was ignored.

Text from CVE List

Affected versions 12

  • Linuxaffected: 0d160211965b79de989cf2d170985abeb8da5ec6 before 0542d213253eec18785a24b603b28bd385dfe4a5CVE List
  • Linuxaffected: 0d160211965b79de989cf2d170985abeb8da5ec6 before 236a17caebcff31f75bec5ff4136bde2de944e40CVE List
  • Linuxaffected: 0d160211965b79de989cf2d170985abeb8da5ec6 before 72d2f54367895d6e236b9857892e2e6b6036e067CVE List
  • Linuxaffected: 0d160211965b79de989cf2d170985abeb8da5ec6 before e2b721bc30f40ffa7ccc36a56d4e8990b8c0538eCVE List
  • Linuxaffected: 0d160211965b79de989cf2d170985abeb8da5ec6 before 089e58805c452e52179482b1025a8e309a57f801CVE List
  • Linuxaffected: 2.6.23CVE List
  • Linuxunaffected: all versions before 2.6.23CVE List
  • Linuxunaffected: 6.6.160 through 6.6.*CVE List
  • Linuxunaffected: 6.12.113 through 6.12.*CVE List
  • Linuxunaffected: 6.18.56 through 6.18.*CVE List
  • Linuxunaffected: 7.2.10 through 7.2.*CVE List
  • Linuxunaffected: 7.3CVE List

References 5