Description
In the Linux kernel, the following vulnerability has been resolved: apparmor: replace recursive profile removal with iterative approach The profile removal code uses recursion when removing nested profiles, which can lead to kernel stack exhaustion and system crashes. Reproducer: $ pf='a'; for ((i=0; i<1024; i++)); do echo -e "profile $pf { \n }" | apparmor_parser -K -a; pf="$pf//x"; done $ echo -n a > /sys/kernel/security/apparmor/.remove Replace the recursive __aa_profile_list_release() approach with an iterative approach in __remove_profile(). The function repeatedly finds and removes leaf profiles until the entire subtree is removed, maintaining the same removal semantic without recursion.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
c88d4c7b049e87998ac0a9f455aa545cc895ef92 to < ea854f032190cc9f26dc4a0e727090c89e55e342affectedc88d4c7b049e87998ac0a9f455aa545cc895ef92 to < 4fdc847b107321dec22bf8ecd6019b7af76d7886affectedc88d4c7b049e87998ac0a9f455aa545cc895ef92 to < b36a04284d0208be94e5e401409caa00e2bf1be1affectedc88d4c7b049e87998ac0a9f455aa545cc895ef92 to < 33959a491e9fd557abfa5fce5ae4637d400915d3affectedc88d4c7b049e87998ac0a9f455aa545cc895ef92 to < 999bd704b0b641527a5ed46f0d969deff8cfa68baffectedc88d4c7b049e87998ac0a9f455aa545cc895ef92 to < 7eade846e013cbe8d2dc4a484463aa19e6515c7faffectedc88d4c7b049e87998ac0a9f455aa545cc895ef92 to < a6a941a1294ac5abe22053dc501d25aed96e48feaffectedc88d4c7b049e87998ac0a9f455aa545cc895ef92 to < ab09264660f9de5d05d1ef4e225aa447c63a8747affected
Linux Linux
Default version status: affected
2.6.36affected0 to < 2.6.36unaffected5.10.253 to ≤ 5.10.*unaffected5.15.203 to ≤ 5.15.*unaffected6.1.169 to ≤ 6.1.*unaffected6.6.130 to ≤ 6.6.*unaffected6.12.77 to ≤ 6.12.*unaffected6.18.18 to ≤ 6.18.*unaffected6.19.8 to ≤ 6.19.*unaffected7.0 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/ea854f032190cc9f26dc4a0e727090c89e55e342 ↗
- https://git.kernel.org/stable/c/4fdc847b107321dec22bf8ecd6019b7af76d7886 ↗
- https://git.kernel.org/stable/c/b36a04284d0208be94e5e401409caa00e2bf1be1 ↗
- https://git.kernel.org/stable/c/33959a491e9fd557abfa5fce5ae4637d400915d3 ↗
- https://git.kernel.org/stable/c/999bd704b0b641527a5ed46f0d969deff8cfa68b ↗
- https://git.kernel.org/stable/c/7eade846e013cbe8d2dc4a484463aa19e6515c7f ↗
- https://git.kernel.org/stable/c/a6a941a1294ac5abe22053dc501d25aed96e48fe ↗
- https://git.kernel.org/stable/c/ab09264660f9de5d05d1ef4e225aa447c63a8747 ↗