In the Linux kernel, the following vulnerability has been resolved: SUNRPC: fix gss_auth kref...
🔗 CVE IDs covered (1)
📋 Description
In the Linux kernel, the following vulnerability has been resolved:
SUNRPC: fix gss_auth kref leak in gss_alloc_msg error path
Commit 5940d1cf9f42 ("SUNRPC: Rebalance a kref in auth_gss.c") added a kref_get(&gss_auth->kref) call to balance the gss_put_auth() done in gss_release_msg(), but forgot to add a corresponding kref_put() on the error path when kstrdup_const() fails.
If service_name is non-NULL and kstrdup_const() fails, the function jumps to err_put_pipe_version which calls put_pipe_version() and kfree(gss_msg), but never releases the gss_auth reference. This leads to a kref leak where the gss_auth structure is never freed.
Add a forward declaration for gss_free_callback() and call kref_put() in the err_put_pipe_version error path to properly release the reference taken earlier.
🔗 References (10)
- https://nvd.nist.gov/vuln/detail/CVE-2026-45964
- https://git.kernel.org/stable/c/3b2b6c42070ce4204936288253baf101e995c2d3
- https://git.kernel.org/stable/c/655c9ba9915f05266998dbbf4b76b3c79b8a70aa
- https://git.kernel.org/stable/c/a1bc9561b617ec7e2d09e6c134d1db8fcf9ca4a6
- https://git.kernel.org/stable/c/a2d4e9a76de0b2178001214ba5de5bf94a7354aa
- https://git.kernel.org/stable/c/b559be2ec6cdb2e9c2c36c23fbbd4690d8a5c3f7
- https://git.kernel.org/stable/c/c20f925214249bb4fc04f7e197bea142a6438af6
- https://git.kernel.org/stable/c/dd2fdc3504592d85e549c523b054898a036a6afe
- https://git.kernel.org/stable/c/e464e26b2457005c87e158570498274b9f3b90c7
- https://github.com/advisories/GHSA-7m86-h2jr-vw87