{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-74736","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-08-15T05:44:03.930Z","datePublished":"2026-08-26T14:36:49.950Z","dateUpdated":"2026-08-27T05:00:58.564Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-27T05:00:58.564Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet/sched: cls_bpf: reject dev-bound programs bound to a different device\n\ncls_bpf_prog_from_efd() obtained a SCHED_CLS program via\nbpf_prog_get_type_dev() but never verified that a device-bound (offloaded)\nprogram's bound netdev matches the TC netdev the classifier is being\nattached to. This let a program loaded with prog_ifindex for device A be\nattached via cls_bpf + skip_sw to device B; deleting device A then\ndestroyed the program's offload state while it was still attached to\ndevice B, triggering a netdevsim WARN (panic with panic_on_warn=1).\n\nMirror the XDP attach path (net/core/dev.c) and reject the attach with\n-EINVAL when a dev-bound program's bound device does not match the\ntarget device."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:L - Exploitation requires local RTM_NEWTFILTER and bpf(2) syscalls to misattach a dev-bound cls_bpf program and delete the bound netdev; received network packets are not the trigger and no remote pre-auth path reaches this code.\nAC:L - The attacker fully controls bpf load on device A, cls_bpf attach with SKIP_SW to device B, and deletion of device A, deterministically reproducing the offload teardown while the program remains referenced on device B.\nPR:L - RTNL TC filter operations require CAP_NET_ADMIN and BPF_PROG_TYPE_SCHED_CLS loading requires CAP_NET_ADMIN (and often CAP_BPF), all grantable to the namespace root created by an unprivileged user via unshare -Urn per kernel CNA guidance.\nUI:N - No victim interaction is required; the attacker performs bpf program load, cls_bpf attach, and netdev deletion through their own namespace-local administrative operations.\nS:U - Impact is kernel memory corruption, panic, or privilege escalation within the same host kernel and does not cross VM, container, or IOMMU boundaries into a separate security authority.\nC:H - Deleting the bound netdev destroys bpf offload private state while cls_bpf on another device still holds the program reference, freeing dev_private metadata and creating a use-after-free that can leak kernel heap contents on subsequent TC/BPF operations.\nI:H - The lifetime mismatch frees attacker-influenceable offload objects while references remain, enabling heap grooming and memory corruption that can be leveraged into arbitrary kernel writes or code execution.\nA:H - netdevsim WARNs when offload state is destroyed while the program remains loaded on another port, causing kernel panic on systems with panic_on_warn enabled, and dereferencing freed offload state can also trigger kernel oops or hang."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/sched/cls_bpf.c"],"versions":[{"version":"2b3486bc2d237ec345b3942b7be5deabf8c8fed1","lessThan":"ec5a552f4b2d841c6c021752450716e1a9676661","status":"affected","versionType":"git"},{"version":"2b3486bc2d237ec345b3942b7be5deabf8c8fed1","lessThan":"daf546ab5763ce6a18280cb4db060e836c515301","status":"affected","versionType":"git"},{"version":"2b3486bc2d237ec345b3942b7be5deabf8c8fed1","lessThan":"adb3e7c26a51a10d94a241c6de7a81a2863dcacf","status":"affected","versionType":"git"},{"version":"2b3486bc2d237ec345b3942b7be5deabf8c8fed1","lessThan":"5685bbbd3cbfbeb0de96a1d275a5ca073dfebb5e","status":"affected","versionType":"git"},{"version":"2b3486bc2d237ec345b3942b7be5deabf8c8fed1","lessThan":"120977e2c096deea4e866e4273be9220b957c29e","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/sched/cls_bpf.c"],"versions":[{"version":"6.3","status":"affected"},{"version":"0","lessThan":"6.3","status":"unaffected","versionType":"semver"},{"version":"6.6.153","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.12.105","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.18.46","lessThanOrEqual":"6.18.*","status":"unaffected","versionType":"semver"},{"version":"7.1.10","lessThanOrEqual":"7.1.*","status":"unaffected","versionType":"semver"},{"version":"7.2","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.3","versionEndExcluding":"6.6.153"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.3","versionEndExcluding":"6.12.105"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.3","versionEndExcluding":"6.18.46"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.3","versionEndExcluding":"7.1.10"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"6.3","versionEndExcluding":"7.2"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/ec5a552f4b2d841c6c021752450716e1a9676661"},{"url":"https://git.kernel.org/stable/c/daf546ab5763ce6a18280cb4db060e836c515301"},{"url":"https://git.kernel.org/stable/c/adb3e7c26a51a10d94a241c6de7a81a2863dcacf"},{"url":"https://git.kernel.org/stable/c/5685bbbd3cbfbeb0de96a1d275a5ca073dfebb5e"},{"url":"https://git.kernel.org/stable/c/120977e2c096deea4e866e4273be9220b957c29e"}],"title":"net/sched: cls_bpf: reject dev-bound programs bound to a different device","x_generator":{"engine":"bippy-1.2.0"}}}}