CVE-2026-45884
N/A
N/A
Summary
In the Linux kernel, the following vulnerability has been resolved:
apparmor: avoid per-cpu hold underflow in aa_get_buffer
When aa_get_buffer() pulls from the per-cpu list it unconditionally decrements cache->hold. If hold reaches 0 while count is still non-zero, the unsigned decrement wraps to UINT_MAX. This keeps hold non-zero for a very long time, so aa_put_buffer() never returns buffers to the global list, which can starve other CPUs and force repeated kmalloc(aa_g_path_max) allocations.
Guard the decrement so hold never underflows.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| Linux | Linux | ea9bae12d02819556db63348db8bd8441eb316f2 < 202824a1f89a9786c20a3d646a7c88d223abb1b2 | affected |
| Linux | Linux | ea9bae12d02819556db63348db8bd8441eb316f2 < 80c334acc6d0bee8605a358a33e69b4aea1ffb92 | affected |
| Linux | Linux | ea9bae12d02819556db63348db8bd8441eb316f2 < 4bcddd0f6b2e52b4c7b520e4d36a115caf5b7169 | affected |
| Linux | Linux | ea9bae12d02819556db63348db8bd8441eb316f2 < 640cf2f09575c9dc344b3f7be2498d31e3923ead | affected |
| Linux | Linux | 6.7 | affected |
| Linux | Linux | 0 < 6.7 | unaffected |
| Linux | Linux | 6.12.75 <= 6.12.* | unaffected |
| Linux | Linux | 6.18.14 <= 6.18.* | unaffected |
| Linux | Linux | 6.19.4 <= 6.19.* | unaffected |
| Linux | Linux | 7.0 <= * | unaffected |
Weaknesses
References
- https://git.kernel.org/stable/c/202824a1f89a9786c20a3d646a7c88d223abb1b2
- https://git.kernel.org/stable/c/80c334acc6d0bee8605a358a33e69b4aea1ffb92
- https://git.kernel.org/stable/c/4bcddd0f6b2e52b4c7b520e4d36a115caf5b7169
- https://git.kernel.org/stable/c/640cf2f09575c9dc344b3f7be2498d31e3923ead
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.