virtio-net: fix received length check in big packets (Linux Linux)

CVE-2025-40292
HIGH 8.4

At a glance

Source
NVD
EPSS
EPSS 0.17 % · percentile 6 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Deferred

Description

In the Linux kernel, the following vulnerability has been resolved: virtio-net: fix received length check in big packets Since commit 4959aebba8c0 ("virtio-net: use mtu size as buffer length for big packets"), when guest gso is off, the allocated size for big packets is not MAX_SKB_FRAGS * PAGE_SIZE anymore but depends on negotiated MTU. The number of allocated frags for big packets is stored in vi->big_packets_num_skbfrags. Because the host announced buffer length can be malicious (e.g. the host vhost_net driver's get_rx_bufs is modified to announce incorrect length), we need a check in virtio_net receive path. Currently, the check is not adapted to the new change which can lead to NULL page pointer dereference in the below while loop when receiving length that is larger than the allocated one. This commit fixes the received length check corresponding to the new change.

References

Scores

VersionScoreVectorScored by
CVSS 3.1HIGH 8.4CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HLinux
CVSS 3.1HIGH 8.4CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HNVD · 416baaa9-dc9f-4396-8d5f-8c081fb06d67 (Secondary)

European references

CERT-FR advisories

Affected products

ProductVersions
Linux · Linuxaffected 4959aebba8c06992abafa09d1e80965e0825af54 < 82f9028e83944a9eee5229cbc6fee9be1de8a62d ; affected 4959aebba8c06992abafa09d1e80965e0825af54 < 946dec89c41726b94d31147ec528b96af0be1b5a ; affected 4959aebba8c06992abafa09d1e80965e0825af54 < 82fe78065450d2d07f36a22e2b6b44955cf5ca5b ; affected 4959aebba8c06992abafa09d1e80965e0825af54 < 3e9d89f2ecd3636bd4cbdfd0b2dfdaf58f9882e2 ; affected 4959aebba8c06992abafa09d1e80965e0825af54 < 0c716703965ffc5ef4311b65cb5d84a703784717
Linux · Linuxaffected 6.1 ; unaffected 0 < 6.1 ; unaffected 6.1.159 ≤ 6.1.* ; unaffected 6.6.117 ≤ 6.6.* ; unaffected 6.12.58 ≤ 6.12.* ; unaffected 6.17.8 ≤ 6.17.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD