{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-53069","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-06-09T07:44:35.382Z","datePublished":"2026-06-24T16:30:10.930Z","dateUpdated":"2026-08-05T12:33:03.685Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-05T12:33:03.685Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\nnet, bpf: fix null-ptr-deref in xdp_master_redirect() for down master\n\nsyzkaller reported a kernel panic in bond_rr_gen_slave_id() reached via\nxdp_master_redirect(). Full decoded trace:\n\n  https://syzkaller.appspot.com/bug?extid=80e046b8da2820b6ba73\n\nbond_rr_gen_slave_id() dereferences bond->rr_tx_counter, a per-CPU\ncounter that bonding only allocates in bond_open() when the mode is\nround-robin. If the bond device was never brought up, rr_tx_counter\nstays NULL.\n\nThe XDP redirect path can still reach that code on a bond that was\nnever opened: bpf_master_redirect_enabled_key is a global static key,\nso as soon as any bond device has native XDP attached, the\nXDP_TX -> xdp_master_redirect() interception is enabled for every\nslave system-wide. The path xdp_master_redirect() ->\nbond_xdp_get_xmit_slave() -> bond_xdp_xmit_roundrobin_slave_get() ->\nbond_rr_gen_slave_id() then runs against a bond that has no\nrr_tx_counter and crashes.\n\nFix this in the generic xdp_master_redirect() by refusing to call into\nthe master's ->ndo_xdp_get_xmit_slave() when the master device is not\nup. IFF_UP is only set after ->ndo_open() has successfully returned,\nso this reliably excludes masters whose XDP state has not been fully\ninitialized. Drop the frame with XDP_ABORTED so the exception is\nvisible via trace_xdp_exception() rather than silently falling through.\nThis is not specific to bonding: any current or future master that\ndefers XDP state allocation to ->ndo_open() is protected."}],"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 - The vulnerable XDP receive path can be reached by packets arriving on a bonding slave when the installed XDP program returns XDP_TX. A local BPF_PROG_TEST_RUN trigger also exists, but Network is the higher defensible vector for a deployed XDP/bonding system.\nAC:L - There is no race or heap-shaping requirement; once the affected bond/XDP state exists, an XDP_TX packet deterministically reaches the NULL rr_tx_counter dereference. The attacker only needs to supply traffic matching the XDP_TX path.\nPR:N - In the network-triggered scenario, the attacker needs no account or kernel capabilities on the target and only sends packets to the affected interface. Local setup paths require capabilities, but they are not required for the remote packet trigger on an already vulnerable deployment.\nUI:N - No victim user action is needed once the affected bond/XDP configuration is present. Packet delivery or BPF test execution triggers the fault directly.\nS:U - The impact is within the same kernel security authority. There is no VM escape, IOMMU bypass, or other cross-scope boundary crossing.\nC:N - The bug is a NULL pointer dereference of bonding's unallocated per-CPU rr_tx_counter. It does not expose kernel memory or provide a read primitive.\nI:N - The dereferenced pointer is NULL and not attacker-controlled, so this is not an arbitrary write or control-flow corruption primitive. The demonstrated effect is a crash.\nA:H - The NULL dereference causes a kernel oops/panic in bond_rr_gen_slave_id(). 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":["net/core/filter.c"],"versions":[{"version":"879af96ffd72706c6e3278ea6b45b0b0e37ec5d7","lessThan":"3128b294b426533c8d9162187446d93a8a160359","status":"affected","versionType":"git"},{"version":"879af96ffd72706c6e3278ea6b45b0b0e37ec5d7","lessThan":"acbf45bd584d924b320bee2a7fe2a26f64904d95","status":"affected","versionType":"git"},{"version":"879af96ffd72706c6e3278ea6b45b0b0e37ec5d7","lessThan":"866d3d9b87751b1944168fd82615505e0c0fd6cf","status":"affected","versionType":"git"},{"version":"879af96ffd72706c6e3278ea6b45b0b0e37ec5d7","lessThan":"183128da0406b1c10e6f60b7b9fe70788b9c8c1d","status":"affected","versionType":"git"},{"version":"879af96ffd72706c6e3278ea6b45b0b0e37ec5d7","lessThan":"7bad93e99737e4a5c0c14ac50c05152cf4e28022","status":"affected","versionType":"git"},{"version":"879af96ffd72706c6e3278ea6b45b0b0e37ec5d7","lessThan":"ea690b3b6e58ae00979af8195b4cc24df466b65e","status":"affected","versionType":"git"},{"version":"879af96ffd72706c6e3278ea6b45b0b0e37ec5d7","lessThan":"1921f91298d1388a0bb9db8f83800c998b649cb3","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/core/filter.c"],"versions":[{"version":"5.15","status":"affected"},{"version":"0","lessThan":"5.15","status":"unaffected","versionType":"semver"},{"version":"5.15.209","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.175","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.141","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.12.91","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.18.33","lessThanOrEqual":"6.18.*","status":"unaffected","versionType":"semver"},{"version":"7.0.10","lessThanOrEqual":"7.0.*","status":"unaffected","versionType":"semver"},{"version":"7.1","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":"5.15","versionEndExcluding":"5.15.209"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"6.1.175"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"6.6.141"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"6.12.91"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"6.18.33"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"7.0.10"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"5.15","versionEndExcluding":"7.1"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/3128b294b426533c8d9162187446d93a8a160359"},{"url":"https://git.kernel.org/stable/c/acbf45bd584d924b320bee2a7fe2a26f64904d95"},{"url":"https://git.kernel.org/stable/c/866d3d9b87751b1944168fd82615505e0c0fd6cf"},{"url":"https://git.kernel.org/stable/c/183128da0406b1c10e6f60b7b9fe70788b9c8c1d"},{"url":"https://git.kernel.org/stable/c/7bad93e99737e4a5c0c14ac50c05152cf4e28022"},{"url":"https://git.kernel.org/stable/c/ea690b3b6e58ae00979af8195b4cc24df466b65e"},{"url":"https://git.kernel.org/stable/c/1921f91298d1388a0bb9db8f83800c998b649cb3"}],"title":"net, bpf: fix null-ptr-deref in xdp_master_redirect() for down master","x_generator":{"engine":"bippy-1.2.0"}}}}