CVE-2020-36788·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: drm/nouveau: avoid a use-after-free when BO init fails nouveau_bo_init() is backed by ttm_bo_init() and ferries its return code back to the caller. On failures, ttm_bo_init() invokes the provided destructor which should de-initialize and free the memory. Thus, when nouveau_bo_init() returns an error the gem object has already been released and the memory freed by nouveau_bo_del_ttm().
- Severity
- high
- Software
- Kernel
- Fixed in
- 5.14.12
- Published
- 2024-05-21
Affected versions
From: 5.11
Until: 5.14.12
Fixed in: 5.14.12
How to fix this CVE
Update your Linux kernel to version 5.14.12 or later to resolve this use-after-free vulnerability in the nouveau GPU driver. The issue occurs when buffer object initialization fails, leaving dangling pointers that can be exploited by local attackers with low privileges. Perform a kernel update followed by a system reboot to apply the patch.
sudo dnf update kernel && sudo rebootDefensia detects this vulnerability
How to check if you are affected
- Check your current kernel version: uname -r | awk -F'.' '{print $1"."$2"."$3}'
- Verify if nouveau driver is loaded: lsmod | grep nouveau
- Review dmesg logs for nouveau GPU driver initialization errors: dmesg | grep -i nouveau | grep -i 'error\|fail'
- After patching, confirm kernel version is 5.14.12 or higher: uname -r
FAQ
What is CVE-2020-36788?
This is a use-after-free vulnerability in the Linux kernel's nouveau GPU driver that occurs when buffer object initialization fails. An attacker with local access can trigger memory corruption by exploiting the freed but still-referenced GPU memory structures.
Is CVE-2020-36788 being actively exploited?
No, this vulnerability is not listed in CISA's Known Exploited Vulnerabilities (KEV) catalog and no public exploits are currently available.
What versions of Kernel are affected by CVE-2020-36788?
Linux kernel versions 5.11 through 5.14.11 are vulnerable. The patch was included in kernel 5.14.12.
How do I check if my server is vulnerable to CVE-2020-36788?
Run 'uname -r' to see your kernel version. If it shows 5.11.x through 5.14.11, you are vulnerable. Also verify the nouveau driver is in use with 'lsmod | grep nouveau'.
Does Defensia detect CVE-2020-36788?
Yes — Defensia's CVE advisory scanner compares installed package versions against the NVD database. If the Linux kernel is installed on a monitored server, CVE-2020-36788 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/548f2ff8ea5e0ce767ae3418d1ec5308990be87d
- https://git.kernel.org/stable/c/bcf34aa5082ee2343574bc3f4d1c126030913e54
- https://git.kernel.org/stable/c/f86e19d918a85492ad1a01fcdc0ad5ecbdac6f96
- https://git.kernel.org/stable/c/548f2ff8ea5e0ce767ae3418d1ec5308990be87d
- https://git.kernel.org/stable/c/bcf34aa5082ee2343574bc3f4d1c126030913e54
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2020-36788. Free for 1 server.
Get started free