CVE-2026-80619
massUse-after-free in Linux kernel AppArmor aa_replace_profiles
A use-after-free (UAF) flaw exists in the Linux kernel's AppArmor security module: in aa_replace_profiles(), the code read udata->size after releasing the load-data object via aa_put_loaddata(), so the pointer could reference already-freed memory. The flaw is triggered when AppArmor policy profiles are loaded or replaced from userspace through the kernel's policy-load interface. A local attacker with limited privileges (per the CVSS scoring) who can cause profile replacement could exploit the stale-pointer access to corrupt kernel memory, with high potential impact to confidentiality, integrity and availability, which in kernel UAFs typically means privilege escalation. All Linux systems running kernels that contain the vulnerable aa_replace_profiles code are potentially affected; the advisory does not specify an affected or fixed kernel version range. As of this publication there is no known exploitation, no public proof-of-concept, and EPSS estimates the 30-day exploitation probability at about 0.1% (3rd percentile).
What to do: Apply the kernel update for your distribution as soon as it publishes a patch incorporating the upstream aa_replace_profiles fix (watch Ubuntu, Debian and SUSE kernel security advisories; no fixed version number is given in this advisory). Until patched, restrict AppArmor profile loading/replacement to trusted administrators on multi-tenant hosts, since the defect is exercised through the policy-load path. No public exploit exists and EPSS is low, so patching can be scheduled with normal maintenance cadence rather than emergency response.
| Linux kernel (AppArmor subsystem, aa_replace_profiles) | — |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
In the Linux kernel, the following vulnerability has been resolved: apparmor: fix potential UAF in aa_replace_profiles The function aa_replace_profiles was accessing udata->size after calling aa_put_loaddata(udata), causing a potential UAF. Fixed this by saving the size to a local variable before dropping the reference.
- Vector
- CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
In the news0 stories
No ingested article mentions this CVE yet.