{"id":"CVE-2026-64121","aliases":[],"url":"https://o3.security/vulnerability/CVE-2026-64121","summary":"net: ifb: report ethtool stats over num_tx_queues","details":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet: ifb: report ethtool stats over num_tx_queues\n\nifb_dev_init() allocates dp->tx_private to dev->num_tx_queues\nentries via kzalloc_objs(*txp, dev->num_tx_queues). Both IFB\nper-queue RX and TX stats live in those entries: ifb_xmit() updates\ntxp->rx_stats using the skb queue mapping, ifb_ri_tasklet() updates\ntxp->tx_stats, and ifb_stats64() aggregates both over\ndev->num_tx_queues.\n\nThe ethtool stats callbacks instead size and walk the per-queue\nstats with dev->real_num_rx_queues and dev->real_num_tx_queues. With\nan asymmetric device where the RX queue count exceeds the TX queue\ncount, for example:\n\n    ip link add name ifb10 numtxqueues 1 numrxqueues 8 type ifb\n    ethtool -S ifb10\n\nifb_get_ethtool_stats() indexes past the tx_private allocation and\ncopies adjacent slab data through ETHTOOL_GSTATS.\n\nUse dev->num_tx_queues consistently for the stats strings, the\nstats count, and the stats data walks. This reports one RX stats\ngroup and one TX stats group for each backing ifb_q_private entry,\nwhich is the queue set IFB can actually populate.\n\nReproduced under UML+KASAN at v7.1-rc2:\n\n  BUG: KASAN: slab-out-of-bounds in ifb_fill_stats_data+0x3c/0xae\n  Read of size 8 at addr 0000000062dbd228 by task ethtool/36\n  ifb_fill_stats_data+0x3c/0xae\n  ifb_get_ethtool_stats+0xc0/0x129\n  __dev_ethtool+0x1ca5/0x363c\n  dev_ethtool+0x123/0x1b3\n  dev_ioctl+0x56c/0x744\n  sock_do_ioctl+0x15f/0x1b2\n  sock_ioctl+0x4d5/0x50a\n  sys_ioctl+0xd8b/0xde9\n\nWith the patch applied, the same UML+KASAN repro is silent and\nethtool -S ifb10 reports only the stats backed by the single\nallocated tx_private entry.","published":"2026-07-19T15:40:19.745Z","modified":"2026-08-12T03:51:11.932100548Z","cvss":null,"epss":null,"cisaKev":null,"exploitsKnown":0,"affectedPackages":[{"ecosystem":"Linux","name":"Kernel","fixedVersion":"6.1.175"}],"fix":null,"references":[{"type":"WEB","url":"https://git.kernel.org/stable/c/16bd798cb6d8337d7c3eea1adc412f31b5181d5b"},{"type":"WEB","url":"https://git.kernel.org/stable/c/2638e1773904d7aa8f24c6e7fda2ed7d69df6fa4"},{"type":"WEB","url":"https://git.kernel.org/stable/c/301a554e458e2f5ec47f2c336a7cb03b877f9fd6"},{"type":"WEB","url":"https://git.kernel.org/stable/c/5db89c99566fc4728cc92e941d8e1975711e24b5"},{"type":"WEB","url":"https://git.kernel.org/stable/c/6afdb8113cb007f9332f59a9b7fd45731b8a9de5"},{"type":"WEB","url":"https://git.kernel.org/stable/c/f8a5a76b4a683043c6eff2a060bcaa17f9316ad5"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/64xxx/CVE-2026-64121.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-64121"},{"type":"PACKAGE","url":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"}],"provenance":{"sources":["OSV.dev","FIRST.org (EPSS)"],"lastVerified":"2026-08-12T03:51:11.932100548Z"}}