{ "dataType": "CVE_RECORD", "dataVersion": "5.2", "cveMetadata": { "cveId": "CVE-2026-23451", "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "state": "PUBLISHED", "assignerShortName": "Linux", "dateReserved": "2026-01-13T15:37:46.020Z", "datePublished": "2026-04-03T15:15:33.776Z", "dateUpdated": "2026-08-05T12:21:51.936Z" }, "containers": { "cna": { "providerMetadata": { "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67", "shortName": "Linux", "dateUpdated": "2026-08-05T12:21:51.936Z" }, "descriptions": [ { "lang": "en", "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nbonding: prevent potential infinite loop in bond_header_parse()\n\nbond_header_parse() can loop if a stack of two bonding devices is setup,\nbecause skb->dev always points to the hierarchy top.\n\nAdd new \"const struct net_device *dev\" parameter to\n(struct header_ops)->parse() method to make sure the recursion\nis bounded, and that the final leaf parse method is called." } ], "metrics": [ { "cvssV3_1": { "version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H", "baseScore": 7.5, "baseSeverity": "HIGH" }, "scenarios": [ { "lang": "en", "value": "AV:N - In a reasonable affected deployment, a remote peer can send a packet, including GRE traffic, that arrives through a stacked bonding hierarchy and triggers AF_PACKET/NFLOG/NFQUEUE hardware-address parsing on the top bond. The vulnerable code is reached from network packet receive processing, not from a physical or purely local-only interface.\nAC:L - Once the stacked bond and packet metadata consumer exist, a single matching received packet deterministically enters `dev_parse_header()` and recurses indefinitely. There is no race, timing window, heap shaping, or attacker-uncontrolled probabilistic condition needed to trigger the denial of service.\nPR:N - The network-triggered path does not require the remote attacker to authenticate or hold local privileges; they only need to send traffic to the affected interface/tunnel. Although local namespace users can also create a reproducer with CAP_NET_ADMIN/CAP_NET_RAW in their namespace, the highest reasonable scenario requires no attacker privileges.\nUI:N - No victim action is required at exploit time when the affected bond stack and packet logging/capture path are already active. The packet alone triggers the vulnerable parse path.\nS:U - The impact remains within the kernel/networking security authority of the vulnerable system. There is no VM escape, sandbox boundary crossing, or separate security scope affected.\nC:N - The bug is an unbounded recursive call caused by using the top-level `skb->dev`; it does not create an information disclosure or controlled read primitive.\nI:N - The vulnerable path does not corrupt attacker-selected data or provide a write/control-flow primitive; the final lower-device parser is never reached. The observed consequence is recursion leading to denial of service.\nA:H - The infinite recursion can hang kernel packet processing and lead to stack overflow/lockdep exhaustion or kernel crash. This is a high availability impact." } ] } ], "affected": [ { "product": "Linux", "vendor": "Linux", "defaultStatus": "unaffected", "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "programFiles": [ "drivers/firewire/net.c", "drivers/net/bonding/bond_main.c", "include/linux/etherdevice.h", "include/linux/if_ether.h", "include/linux/netdevice.h", "net/ethernet/eth.c", "net/ipv4/ip_gre.c", "net/mac802154/iface.c", "net/phonet/af_phonet.c" ], "versions": [ { "version": "5d0fb9806ab6cf2c3cfba0e1b8c701da65e25af8", "lessThan": "9532d0d0ad1d726c06f807e8f0f1ec93cbabb452", "status": "affected", "versionType": "git" }, { "version": "9baf26a91565b7bb2b1d9f99aaf884a2b28c2f6d", "lessThan": "946bb6cacf0ccada7bc80f1cfa07c1ed79511c1c", "status": "affected", "versionType": "git" }, { "version": "6ac890f1d60ac3707ee8dae15a67d9a833e49956", "lessThan": "4172a7901cf43fe1cc63ef7a2ef33735ff7b7d13", "status": "affected", "versionType": "git" }, { "version": "95597d11dc8bddb2b9a051c9232000bfbb5e43ba", "lessThan": "9b49c854f14f5e2d493e562a1e28d2e57fe37371", "status": "affected", "versionType": "git" }, { "version": "950803f7254721c1c15858fbbfae3deaaeeecb11", "lessThan": "b7405dcf7385445e10821777143f18c3ce20fa04", "status": "affected", "versionType": "git" } ] }, { "product": "Linux", "vendor": "Linux", "defaultStatus": "unaffected", "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git", "programFiles": [ "drivers/firewire/net.c", "drivers/net/bonding/bond_main.c", "include/linux/etherdevice.h", "include/linux/if_ether.h", "include/linux/netdevice.h", "net/ethernet/eth.c", "net/ipv4/ip_gre.c", "net/mac802154/iface.c", "net/phonet/af_phonet.c" ], "versions": [ { "version": "6.18.19", "lessThan": "6.18.20", "status": "affected", "versionType": "semver" }, { "version": "6.19.9", "lessThan": "6.19.10", "status": "affected", "versionType": "semver" } ] } ], "cpeApplicability": [ { "nodes": [ { "operator": "OR", "negate": false, "cpeMatch": [ { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.18.19", "versionEndExcluding": "6.18.20" }, { "vulnerable": true, "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*", "versionStartIncluding": "6.19.9", "versionEndExcluding": "6.19.10" } ] } ] } ], "references": [ { "url": "https://git.kernel.org/stable/c/9532d0d0ad1d726c06f807e8f0f1ec93cbabb452" }, { "url": "https://git.kernel.org/stable/c/946bb6cacf0ccada7bc80f1cfa07c1ed79511c1c" }, { "url": "https://git.kernel.org/stable/c/4172a7901cf43fe1cc63ef7a2ef33735ff7b7d13" }, { "url": "https://git.kernel.org/stable/c/9b49c854f14f5e2d493e562a1e28d2e57fe37371" }, { "url": "https://git.kernel.org/stable/c/b7405dcf7385445e10821777143f18c3ce20fa04" } ], "title": "bonding: prevent potential infinite loop in bond_header_parse()", "x_generator": { "engine": "bippy-1.2.0" } } } }