CVE-2026-98983

unshare: don't drop active namespace references that were never taken

State
Published
Severity
Not scored
Published
Oct 23, 2026
Updated
Oct 23, 2026
Reserved
Sep 25, 2026

Read the record on cve.org

Description

In the Linux kernel, the following vulnerability has been resolved:

unshare: don't drop active namespace references that were never taken

Active references on the namespaces of an nsproxy are taken when the nsproxy is installed into a task in switch_task_namespaces() and copy_namespaces() and dropped again by put_nsproxy() through deactivate_nsproxy().

But ksys_unshare() calls put_nsproxy() on an nsproxy that was never installed when set_cred_ucounts() fails. The new namespaces of that nsproxy go from zero to minus one and the namespaces shared with the caller lose a reference that belongs to the nsproxy the caller keeps using:

WARNING: kernel/nscommon.c:171 at __ns_ref_active_put+0x1cd/0x230 nsproxy_ns_active_put deactivate_nsproxy ksys_unshare

Afterwards the namespaces the caller lives in aren't listed by listns() anymore. set_cred_ucounts() only fails when alloc_ucounts() can't allocate and it only allocates when the real uid of the caller differs from its effective uid.

Commit cefd55bd2159 ("nsproxy: fix free_nsproxy() and simplify create_new_namespaces()") separated the two cases on purpose. nsproxy_free() frees an nsproxy that was prepared but never installed and that's what a failed setns() uses in put_nsset(). Export it and use it for a failed unshare() as well.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • a98621a0f187a934c115dcfe79a49520ae892111 to before 56fe03a0c05dba4c5f6a23c391f96de1614a098cAffected
  • a98621a0f187a934c115dcfe79a49520ae892111 to before 0b6f31a3c0b16066f812e94b52a704174a6f23cdAffected
  • 27ae6b17c9ba7ff353ab0906297f08aa845782b4Affected
  • 297261b343371c4f0b31055d53d285138ec21565Affected
  • 813a47b0309097da71781ee4ac11922e39b67d55Affected
  • 6e608e3e5ce12ce7fd21e46212eccca37f917d0eAffected
  • a261fccdb4ac58ec5ba6aa1d92a6cc418fff301fAffected
  • 665dc1ed16357988d439fc5bbc860ee36f540d81Affected
  • 5.15.209 to before 5.16Affected
  • 6.1.175 to before 6.2Affected
  • 6.6.141 to before 6.7Affected
  • 6.12.91 to before 6.13Affected
  • 6.18.33 to before 6.19Affected
  • 7.0.10 to before 7.1Affected
LinuxLinux
  • 7.1Affected
  • before 7.1Not affected
  • 7.2.11 through 7.2.*Not affected
  • 7.3 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.