CVE-2026-23268
Description
In the Linux kernel, the following vulnerability has been resolved:
apparmor: fix unprivileged local user can do privileged policy management
An unprivileged local user can load, replace, and remove profiles by opening the apparmorfs interfaces, via a confused deputy attack, by passing the opened fd to a privileged process, and getting the privileged process to write to the interface.
This does require a privileged target that can be manipulated to do the write for the unprivileged process, but once such access is achieved full policy management is possible and all the possible implications that implies: removing confinement, DoS of system or target applications by denying all execution, by-passing the unprivileged user namespace restriction, to exploiting kernel bugs for a local privilege escalation.
The policy management interface can not have its permissions simply changed from 0666 to 0600 because non-root processes need to be able to load policy to different policy namespaces.
Instead ensure the task writing the interface has privileges that are a subset of the task that opened the interface. This is already done via policy for confined processes, but unconfined can delegate access to the opened fd, by-passing the usual policy check.
AI Insight
LLM-synthesized narrative grounded in this CVE's description and references.
Unprivileged local users can abuse AppArmor policy management via a confused-deputy attack, leading to full policy control and potential privilege escalation.
CVE-2026-23268 describes a confused-deputy vulnerability in the Linux kernel's AppArmor module that allows an unprivileged local user to load, replace, or remove AppArmor profiles. The flaw exists because the AppArmor policy management interface (apparmorfs) is writable by unprivileged processes, and a malicious user can pass a file descriptor to a privileged process, which then writes to the interface on their behalf, bypassing the usual privilege checks [1].
To exploit this, an attacker needs a privileged target process that can be manipulated into performing the write operation. Once exploited, the attacker gains full policy management capabilities, including removing existing profiles that protect critical services (e.g., cupsd, rsyslogd), loading restrictive profiles for denial of service, or bypassing Ubuntu's unprivileged user-namespace restrictions by loading a custom 'userns' profile [1]. The advisory notes that this can lead to denial of service, privilege escalation, and other severe outcomes.
The fix ensures that the task writing to the policy interface must have privileges that are a subset of the task that opened the interface, preventing unconfined processes from delegating access via file descriptors [1]. Patches have been applied to the Linux kernel stable trees as commits [2][3][4] to address this issue. Users should update their kernels to the latest stable releases to mitigate the vulnerability.
AI Insight generated on May 18, 2026. Synthesized from this CVE's description and the cited reference URLs; citations are validated against the source bundle.
Affected products
1Patches
0No patches discovered yet.
Vulnerability mechanics
AI mechanics synthesis has not run for this CVE yet.
References
9- git.kernel.org/stable/c/0fc63dd9170643d15c25681fca792539e23f4640nvd
- git.kernel.org/stable/c/17debf5586020790b5717f96e5e6a3ca5bb961abnvd
- git.kernel.org/stable/c/33ee909702e047c94aaf41d4eea35626d509802cnvd
- git.kernel.org/stable/c/4cafce4d6d0a66ec27e3af5637c11901d60189fanvd
- git.kernel.org/stable/c/6601e13e82841879406bf9f369032656f441a425nvd
- git.kernel.org/stable/c/a407a078cd41b5261b99d822af784bd9f136eb4dnvd
- git.kernel.org/stable/c/b60b3f7a35c46b2e0ca934f9c988b8fca06d76c6nvd
- git.kernel.org/stable/c/b6a94eeca9c6c8f7c55ad44c62c98324f51ec596nvd
- www.qualys.com/2026/03/10/crack-armor.txtnvd
News mentions
0No linked articles in our index yet.