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

namespace: handle mount locking for automounts correctly

If mounts are propagated across user namespaces, attach_recursive_mnt()
locks every copy of the source mount to protect overmounts from
vanishing and revealing the underlying files or directories.

The user namespace is taken from the caller's mount namespaces since
this is where the mounts end up. Except, that's not always true.
Automounts may legitimately get popped in by tasks located in a
different mount and user namespace during path lookup.

Then check doesn't make sense at that point. The copy in the namespace
of the parent - which may be the host's - is now locked and the host
cannot change the flags of its own mounts anymore.

Here's the reproducer:

- host has debugfs mounted nosuid,nodev,noexec and shared
- tracefs automount below it is not yet active
- hand a child process a directory descriptor on that mount
- child process enters auser and mount namespace
- child process' namespace now holds a locked copy of the host's debugfs
mount that receives propagation from it
- child process stats "tracing/." through the descriptor
- lookup runs on the host's mount so the automount lands below the host's mount
- propagation puts a copy below the child's copy
- both try to clear the flags on the mount they got, with a bind remount:

host, on its own automount: MS_REMOUNT|MS_BIND = EPERM
child, on the copy in its namespace: MS_REMOUNT|MS_BIND = 0

So the lock landed on the host's mount instead of the child's copy.
Congrats. So we need to compare with the owner of the namespace the
mount actually gets mounted on. For all regular cases that is the
caller's mount namespace and so nothing changes.

Detached trees in anonymous mount namespaces by be handed over via
SCM_RIGHTS or inherited in other ways on purpose so the attaching task's
mount namespace is authoritative, not the creator of the detached tree.
Published: 2026-10-23
Score: 4.4 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Unauthorized Mount Flag Modification
Action: Apply Fix
AI Analysis

Impact

The vulnerability involves incorrect locking of mounts propagated across user namespaces in the Linux kernel. The kernel mistakenly locks the host’s mount instead of the copy in the child namespace, allowing processes in the child namespace to attempt a bind remount on the host’s mount. The bind remount succeeds where it should be denied (EPERM), effectively permitting unhindered modification of mount flags. Based on the description, it is inferred that such flag changes could be leveraged to gain elevated privileges or expose restricted files, but the vulnerability’s description does not assert these outcomes directly.

Affected Systems

The flaw affects any Linux kernel version prior to the patch that corrects mount locking for automount propagation, regardless of architecture or distribution. No specific version numbers are provided, so all kernels where the affected code path is exercised remain vulnerable. Those systems that use automounts that propagate across user or mount namespaces are at risk.

Risk and Exploitability

The CVSS score is 4.4, the EPSS score is less than 1%, and the vulnerability is not listed in CISA KEV. The attack vector appears to be local, requiring the ability to create or enter a user or mount namespace and trigger automount propagation. While no public exploit has been disclosed, the bug permits an attacker to modify mount flags in a parent namespace that should otherwise be protected. The risk is considered moderate until a kernel update containing the fix is deployed, and the potential impact is noteworthy if the attacker can leverage the flag changes to increase privileges or access protected resources.

Generated by OpenCVE AI on October 29, 2026 at 22:37 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the Linux kernel to a release that contains the fix for the mount namespace locking bug
  • Disable automount features or restrict automount mount propagation in the system configuration
  • Audit mount namespace usage and enforce strict mount flag permissions to prevent unauthorized bind remounts

Generated by OpenCVE AI on October 29, 2026 at 22:37 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Fri, 30 Oct 2026 13:00:00 +0000


Thu, 29 Oct 2026 20:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-284

Thu, 29 Oct 2026 12:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-281
References
Metrics threat_severity

None

cvssV3_1

{'score': 4.4, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:L'}

threat_severity

Moderate


Fri, 23 Oct 2026 21:30:00 +0000

Type Values Removed Values Added
First Time appeared Linux linux
Vendors & Products Linux linux

Fri, 23 Oct 2026 17:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-284

Fri, 23 Oct 2026 12:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: namespace: handle mount locking for automounts correctly If mounts are propagated across user namespaces, attach_recursive_mnt() locks every copy of the source mount to protect overmounts from vanishing and revealing the underlying files or directories. The user namespace is taken from the caller's mount namespaces since this is where the mounts end up. Except, that's not always true. Automounts may legitimately get popped in by tasks located in a different mount and user namespace during path lookup. Then check doesn't make sense at that point. The copy in the namespace of the parent - which may be the host's - is now locked and the host cannot change the flags of its own mounts anymore. Here's the reproducer: - host has debugfs mounted nosuid,nodev,noexec and shared - tracefs automount below it is not yet active - hand a child process a directory descriptor on that mount - child process enters auser and mount namespace - child process' namespace now holds a locked copy of the host's debugfs mount that receives propagation from it - child process stats "tracing/." through the descriptor - lookup runs on the host's mount so the automount lands below the host's mount - propagation puts a copy below the child's copy - both try to clear the flags on the mount they got, with a bind remount: host, on its own automount: MS_REMOUNT|MS_BIND = EPERM child, on the copy in its namespace: MS_REMOUNT|MS_BIND = 0 So the lock landed on the host's mount instead of the child's copy. Congrats. So we need to compare with the owner of the namespace the mount actually gets mounted on. For all regular cases that is the caller's mount namespace and so nothing changes. Detached trees in anonymous mount namespaces by be handed over via SCM_RIGHTS or inherited in other ways on purpose so the attaching task's mount namespace is authoritative, not the creator of the detached tree.
Title namespace: handle mount locking for automounts correctly
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-30T12:40:39.052Z

Reserved: 2026-09-25T10:25:14.383Z

Link: CVE-2026-98977

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-23T13:17:19.387

Modified: 2026-10-30T13:21:33.730

Link: CVE-2026-98977

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-10-23T00:00:00Z

Links: CVE-2026-98977 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-29T22:45:03Z

Weaknesses
  • CWE-281

    Improper Preservation of Permissions