CVE-2025-39894: Linux kernel · netfilter: br_netfilter: do not check confirmed bit in br_nf_local_in() after confirm
Affects Linux kernelSource GCVE Database
Not known to be exploited · CVSS 7.5 High · fixed in 5.15.0-1097.104~20.04.1 : patch Linux kernel soon.
Data as of 26 Oct 2026, 17:16 UTC
- EPSS
- 0.3% chance of exploitation in 30 days – higher than 26% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
- Patch
- Available – fixed in 5.15.0-1097.104~20.04.1, 5.15.0-1102.111~20.04.1, 5.15.0-1097.106~20.04.1 +60
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:HExploitation evidence
Disclosed: evidence found.
CVE published 1 Oct 2025
Detectable: no evidence on record.
No public nuclei template indexed
Weaponised: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 26 Oct 2026.
What to do
Upgrade to a fixed release listed under Affected software.
Patches and advisories
- ubuntu.com/security/notices/USN-7909-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7909-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7909-3 (opens in a new tab)
- ubuntu.com/security/notices/USN-7910-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7909-4 (opens in a new tab)
- ubuntu.com/security/notices/USN-7910-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7933-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7909-5 (opens in a new tab)
- ubuntu.com/security/notices/USN-7938-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-8095-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-8100-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-8095-2 (opens in a new tab)
Affected software
| Product | Affected | Fixed in |
|---|---|---|
Ubuntu 25.10linux-azure-fdepkg:deb/ubuntu/linux-azure-fde?arch=source&distro=questingOther threats | Affected
| Fixed in– |
Ubuntu 24.04 LTSlinuxpkg:deb/ubuntu/linux?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-awspkg:deb/ubuntu/linux-aws?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-aws-6.14pkg:deb/ubuntu/linux-aws-6.14?arch=source&distro=nobleOther threats | Affected
| Fixed in– |
Ubuntu 24.04 LTSlinux-azurepkg:deb/ubuntu/linux-azure?arch=source&distro=nobleOther threats | Affected
| Fixed in
|
Ubuntu 24.04 LTSlinux-azure-6.11pkg:deb/ubuntu/linux-azure-6.11?arch=source&distro=nobleOther threats | Affected
| Fixed in– |
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
Description
In the Linux kernel, the following vulnerability has been resolved: netfilter: br_netfilter: do not check confirmed bit in br_nf_local_in() after confirm When send a broadcast packet to a tap device, which was added to a bridge, br_nf_local_in() is called to confirm the conntrack. If another conntrack with the same hash value is added to the hash table, which can be triggered by a normal packet to a non-bridge device, the below warning may happen. ------------[ cut here ]------------ WARNING: CPU: 1 PID: 96 at net/bridge/br_netfilter_hooks.c:632 br_nf_local_in+0x168/0x200 CPU: 1 UID: 0 PID: 96 Comm: tap_send Not tainted 6.17.0-rc2-dirty #44 PREEMPT(voluntary) RIP: 0010:br_nf_local_in+0x168/0x200 Call Trace: <TASK> nf_hook_slow+0x3e/0xf0 br_pass_frame_up+0x103/0x180 br_handle_frame_finish+0x2de/0x5b0 br_nf_hook_thresh+0xc0/0x120 br_nf_pre_routing_finish+0x168/0x3a0 br_nf_pre_routing+0x237/0x5e0 br_handle_frame+0x1ec/0x3c0 __netif_receive_skb_core+0x225/0x1210 __netif_receive_skb_one_core+0x37/0xa0 netif_receive_skb+0x36/0x160 tun_get_user+0xa54/0x10c0 tun_chr_write_iter+0x65/0xb0 vfs_write+0x305/0x410 ksys_write+0x60/0xd0 do_syscall_64+0xa4/0x260 entry_SYSCALL_64_after_hwframe+0x77/0x7f </TASK> ---[ end trace 0000000000000000 ]--- To solve the hash conflict, nf_ct_resolve_clash() try to merge the conntracks, and update skb->_nfct. However, br_nf_local_in() still use the old ct from local variable 'nfct' after confirm(), which leads to this warning. If confirm() does not insert the conntrack entry and return NF_DROP, the warning may also occur. There is no need to reserve the WARN_ON_ONCE, just remove it.
References
- ubuntu.com/security/CVE-2025-39894 (opens in a new tab)
- cve.org/CVERecord?id=CVE-2025-39894 (opens in a new tab)
- git.kernel.org/linus/479a54ab92087318514c82428a87af2d7af1a576 (opens in a new tab)
- git.kernel.org/stable/c/479a54ab92087318514c82428a87af2d7af1a576 (opens in a new tab)
- git.kernel.org/stable/c/50db11e2bbb635e38e3dd096215580d6adb41fb0 (opens in a new tab)
- git.kernel.org/stable/c/a74abcf0f09f59daeecf7a3ba9c1d690808b0afe (opens in a new tab)
- git.kernel.org/stable/c/c47ca77fee9071aa543bae592dd2a384f895c8b6 (opens in a new tab)
- git.kernel.org/stable/c/ccbad4803225eafe0175d3cb19f0d8d73b504a94 (opens in a new tab)
- git.kernel.org/stable/c/d00c8b0daf56012f69075e3377da67878c775e4c (opens in a new tab)
- ubuntu.com/security/notices/USN-7909-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7909-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7909-3 (opens in a new tab)
- ubuntu.com/security/notices/USN-7910-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7909-4 (opens in a new tab)
- ubuntu.com/security/notices/USN-7910-2 (opens in a new tab)
- ubuntu.com/security/notices/USN-7933-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-7909-5 (opens in a new tab)
- ubuntu.com/security/notices/USN-7938-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-8095-1 (opens in a new tab)
- ubuntu.com/security/notices/USN-8100-1 (opens in a new tab)