{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2026-23268","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2026-01-13T15:37:45.991Z","datePublished":"2026-03-18T17:54:41.974Z","dateUpdated":"2026-05-11T22:03:34.600Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-05-11T22:03:34.600Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\napparmor: fix unprivileged local user can do privileged policy management\n\nAn unprivileged local user can load, replace, and remove profiles by\nopening the apparmorfs interfaces, via a confused deputy attack, by\npassing the opened fd to a privileged process, and getting the\nprivileged process to write to the interface.\n\nThis does require a privileged target that can be manipulated to do\nthe write for the unprivileged process, but once such access is\nachieved full policy management is possible and all the possible\nimplications that implies: removing confinement, DoS of system or\ntarget applications by denying all execution, by-passing the\nunprivileged user namespace restriction, to exploiting kernel bugs for\na local privilege escalation.\n\nThe policy management interface can not have its permissions simply\nchanged from 0666 to 0600 because non-root processes need to be able\nto load policy to different policy namespaces.\n\nInstead ensure the task writing the interface has privileges that\nare a subset of the task that opened the interface. This is already\ndone via policy for confined processes, but unconfined can delegate\naccess to the opened fd, by-passing the usual policy check."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","baseScore":7.8,"baseSeverity":"HIGH"}}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["security/apparmor/apparmorfs.c","security/apparmor/include/policy.h","security/apparmor/policy.c"],"versions":[{"version":"b7fd2c0340eacbee892425e9007647568b7f2a3c","lessThan":"a407a078cd41b5261b99d822af784bd9f136eb4d","status":"affected","versionType":"git"},{"version":"b7fd2c0340eacbee892425e9007647568b7f2a3c","lessThan":"4cafce4d6d0a66ec27e3af5637c11901d60189fa","status":"affected","versionType":"git"},{"version":"b7fd2c0340eacbee892425e9007647568b7f2a3c","lessThan":"33ee909702e047c94aaf41d4eea35626d509802c","status":"affected","versionType":"git"},{"version":"b7fd2c0340eacbee892425e9007647568b7f2a3c","lessThan":"17debf5586020790b5717f96e5e6a3ca5bb961ab","status":"affected","versionType":"git"},{"version":"b7fd2c0340eacbee892425e9007647568b7f2a3c","lessThan":"0fc63dd9170643d15c25681fca792539e23f4640","status":"affected","versionType":"git"},{"version":"b7fd2c0340eacbee892425e9007647568b7f2a3c","lessThan":"b60b3f7a35c46b2e0ca934f9c988b8fca06d76c6","status":"affected","versionType":"git"},{"version":"b7fd2c0340eacbee892425e9007647568b7f2a3c","lessThan":"b6a94eeca9c6c8f7c55ad44c62c98324f51ec596","status":"affected","versionType":"git"},{"version":"b7fd2c0340eacbee892425e9007647568b7f2a3c","lessThan":"6601e13e82841879406bf9f369032656f441a425","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["security/apparmor/apparmorfs.c","security/apparmor/include/policy.h","security/apparmor/policy.c"],"versions":[{"version":"4.11","status":"affected"},{"version":"0","lessThan":"4.11","status":"unaffected","versionType":"semver"},{"version":"5.10.253","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.15.203","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.1.169","lessThanOrEqual":"6.1.*","status":"unaffected","versionType":"semver"},{"version":"6.6.130","lessThanOrEqual":"6.6.*","status":"unaffected","versionType":"semver"},{"version":"6.12.77","lessThanOrEqual":"6.12.*","status":"unaffected","versionType":"semver"},{"version":"6.18.18","lessThanOrEqual":"6.18.*","status":"unaffected","versionType":"semver"},{"version":"6.19.8","lessThanOrEqual":"6.19.*","status":"unaffected","versionType":"semver"},{"version":"7.0","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.11","versionEndExcluding":"5.10.253"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.11","versionEndExcluding":"5.15.203"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.11","versionEndExcluding":"6.1.169"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.11","versionEndExcluding":"6.6.130"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.11","versionEndExcluding":"6.12.77"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.11","versionEndExcluding":"6.18.18"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.11","versionEndExcluding":"6.19.8"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.11","versionEndExcluding":"7.0"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/a407a078cd41b5261b99d822af784bd9f136eb4d"},{"url":"https://git.kernel.org/stable/c/4cafce4d6d0a66ec27e3af5637c11901d60189fa"},{"url":"https://git.kernel.org/stable/c/33ee909702e047c94aaf41d4eea35626d509802c"},{"url":"https://git.kernel.org/stable/c/17debf5586020790b5717f96e5e6a3ca5bb961ab"},{"url":"https://git.kernel.org/stable/c/0fc63dd9170643d15c25681fca792539e23f4640"},{"url":"https://git.kernel.org/stable/c/b60b3f7a35c46b2e0ca934f9c988b8fca06d76c6"},{"url":"https://git.kernel.org/stable/c/b6a94eeca9c6c8f7c55ad44c62c98324f51ec596"},{"url":"https://git.kernel.org/stable/c/6601e13e82841879406bf9f369032656f441a425"},{"url":"https://www.qualys.com/2026/03/10/crack-armor.txt"}],"title":"apparmor: fix unprivileged local user can do privileged policy management","x_generator":{"engine":"bippy-1.2.0"}}}}