Bugzilla – Bug 1224595
VUL-0: CVE-2024-35846: kernel: mm: zswap: fix shrinker NULL crash with cgroup_disable=memory
Last modified: 2024-06-10 13:31:35 UTC
In the Linux kernel, the following vulnerability has been resolved: mm: zswap: fix shrinker NULL crash with cgroup_disable=memory Christian reports a NULL deref in zswap that he bisected down to the zswap shrinker. The issue also cropped up in the bug trackers of libguestfs [1] and the Red Hat bugzilla [2]. The problem is that when memcg is disabled with the boot time flag, the zswap shrinker might get called with sc->memcg == NULL. This is okay in many places, like the lruvec operations. But it crashes in memcg_page_state() - which is only used due to the non-node accounting of cgroup's the zswap memory to begin with. Nhat spotted that the memcg can be NULL in the memcg-disabled case, and I was then able to reproduce the crash locally as well. [1] https://github.com/libguestfs/libguestfs/issues/139 [2] https://bugzilla.redhat.com/show_bug.cgi?id=2275252 References: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2024-35846 https://git.kernel.org/pub/scm/linux/security/vulns.git/plain/cve/published/2024/CVE-2024-35846.mbox https://git.kernel.org/stable/c/b0fdabc908a7f81d12382c87ca9e46a9c2e14042 https://git.kernel.org/stable/c/682886ec69d22363819a83ddddd5d66cb5c791e1 https://www.cve.org/CVERecord?id=CVE-2024-35846 https://bugzilla.redhat.com/show_bug.cgi?id=2281270
https://www.suse.com/security/cve/CVE-2024-35846.html cvss 5.5
All done, closing.