Skip to main content
← All vulnerabilities
CVE-2025-22005

ipv6: Fix memleak of nhc_pcpu_rth_output in fib_check_nh_v6_gw().

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 5.4.292, 5.10.236, 5.15.180, 6.1.132, 6.6.85, and 2 more
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: partial

Summary

In the Linux kernel, the following vulnerability has been resolved: ipv6: Fix memleak of nhc_pcpu_rth_output in fib_check_nh_v6_gw(). fib_check_nh_v6_gw() expects that fib6_nh_init() cleans up everything when it fails. Commit 7dd73168e273 ("ipv6: Always allocate pcpu memory in a fib6_nh") moved fib_nh_common_init() before alloc_percpu_gfp() within fib6_nh_init() but forgot to add cleanup for fib6_nh->nh_common.nhc_pcpu_rth_output in case it fails to allocate fib6_nh->rt6i_pcpu, resulting in memleak. Let's call fib_nh_common_release() and clear nhc_pcpu_rth_output in the error path. Note that we can remove the fib6_nh_release() call in nh_create_ipv6() later in net-next.git.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • Linux Linux

    From 7dd73168e273938b9e9bb42ca51b0c27d807992b · fixed in 16267a5036173d0173377545b4b6021b081d0933; From 7dd73168e273938b9e9bb42ca51b0c27d807992b · fixed in 1bd12dfc058e1e68759d313d7727d68dbc1b8964; From 7dd73168e273938b9e9bb42ca51b0c27d807992b · fixed in 596a883c4ce2d2e9c175f25b98fed3a1f33fea38; From 7dd73168e273938b9e9bb42ca51b0c27d807992b · fixed in 77c41cdbe6bce476e08d3251c0d501feaf10a9f3; From 7dd73168e273938b9e9bb42ca51b0c27d807992b · fixed in 119dcafe36795a15ae53351cbbd6177aaf94ffef; From 7dd73168e273938b9e9bb42ca51b0c27d807992b · fixed in 29d91820184d5cbc70f3246d4911d96eaeb930d6; From 7dd73168e273938b9e9bb42ca51b0c27d807992b · fixed in d3d5b4b5ae263c3225db363ba08b937e2e2b0380; From 7dd73168e273938b9e9bb42ca51b0c27d807992b · fixed in 9740890ee20e01f99ff1dde84c63dcf089fabb98

  • Linux Linux

    5.3

  • KernelLinux

    From 5.3.0 · fixed in 5.4.292; From 5.5.0 · fixed in 5.10.236; From 5.11.0 · fixed in 5.15.180; From 5.16.0 · fixed in 6.1.132; From 6.2.0 · fixed in 6.6.85; From 6.7.0 · fixed in 6.12.21; From 6.13.0 · fixed in 6.13.9

References 8

git.kernel.org