CVE-2026-43027

Advisory lineage Upstream: 0 Downstream: 73
Analyzed
Published: 01 May 2026, 14:15
Last modified:14 Jul 2026, 12:49

Vulnerability Summary

Overall Risk (default)
medium
31/100
CVSS Score
7.8 HIGH
v3.1 (nvd)
EPSS Score
0.13% LOW
0% probability 0.00%
KEV
Not listed
Ransomware
No reports
Public exploits
None found
Dark Web
Not detected

Timeline

01 May 2026, 14:15
Published
Vulnerability first disclosed
14 Jul 2026, 12:49
Last Modified
Vulnerability information updated

Description

In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_conntrack_helper: pass helper to expect cleanup nf_conntrack_helper_unregister() calls nf_ct_expect_iterate_destroy() to remove expectations belonging to the helper being unregistered. However, it passes NULL instead of the helper pointer as the data argument, so expect_iter_me() never matches any expectation and all of them survive the cleanup. After unregister returns, nfnl_cthelper_del() frees the helper object immediately. Subsequent expectation dumps or packet-driven init_conntrack() calls then dereference the freed exp->helper, causing a use-after-free. Pass the actual helper pointer so expectations referencing it are properly destroyed before the helper object is freed. BUG: KASAN: slab-use-after-free in string+0x38f/0x430 Read of size 1 at addr ffff888003b14d20 by task poc/103 Call Trace: string+0x38f/0x430 vsnprintf+0x3cc/0x1170 seq_printf+0x17a/0x240 exp_seq_show+0x2e5/0x560 seq_read_iter+0x419/0x1280 proc_reg_read+0x1ac/0x270 vfs_read+0x179/0x930 ksys_read+0xef/0x1c0 Freed by task 103: The buggy address is located 32 bytes inside of freed 192-byte region [ffff888003b14d00, ffff888003b14dc0)

CVSS Metrics

  • v3.1HIGHScore: 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

EPSS Trends

Current EPSS score: 0.13% Percentile: 3%

Techniques & Countermeasures

  • CWE-416Use After Free

    The product reuses or references memory after it has been freed. At some point afterward, the memory may be allocated again and saved in another pointer, while the original pointer references a location somewhere within the new allocation. Any operations using the original pointer are no longer valid because the memory "belongs" to the code that operates on the new pointer.

Affected Systems

  • linuxlinux

    ≥ ac7b848390036dadd4351899d2a23748075916bd, < 5cf28d5c8dcbbe8af6d3b145babe491906d7bad1 | ≥ ac7b848390036dadd4351899d2a23748075916bd, < 504ba4168466c91210c45acdc332479cfd5f2da6 | ≥ ac7b848390036dadd4351899d2a23748075916bd, < dc1739eff48e34cc71d4e2f03715493fbcebd8af | ≥ ac7b848390036dadd4351899d2a23748075916bd, < 2cf2737c85a2ba2b52024dafe68ffad2676f97be | ≥ ac7b848390036dadd4351899d2a23748075916bd, < 2c16e4d64dd91227742dfe196a3e7b0568bef65a | ≥ ac7b848390036dadd4351899d2a23748075916bd, < 620f3d14c1ef51d425060a3056ad8dbae8f998a3 | ≥ ac7b848390036dadd4351899d2a23748075916bd, < 90bd7e8501349db3006d21fbc09df9ffcb172965 | ≥ ac7b848390036dadd4351899d2a23748075916bd, < a242a9ae58aa46ff7dae51ce64150a93957abe65 | 4.14

  • linuxlinux kernel

    ≥ 4.14, < 5.10.253 | ≥ 5.11, < 5.15.203 | ≥ 5.16, < 6.1.168 | ≥ 6.2, < 6.6.134 | ≥ 6.7, < 6.12.81 | ≥ 6.13, < 6.18.22 | ≥ 6.19, < 6.19.12 | 7.0:rc1 | 7.0:rc2 | 7.0:rc3 | 7.0:rc4 | 7.0:rc5 | 7.0:rc6

References (10)