CVE-2022-49419·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: video: fbdev: vesafb: Fix a use-after-free due early fb_info cleanup Commit b3c9a924aab6 ("fbdev: vesafb: Cleanup fb_info in .fb_destroy rather than .remove") fixed a use-after-free error due the vesafb driver freeing the fb_info in the .remove handler instead of doing it in .fb_destroy. This can happen if the .fb_destroy callback is executed after the .remove callback, since the former tries to access a pointer freed by the latter. But that change didn't take into account that another possible scenario is that .fb_destroy is called before the .remove callback. For example, if no process has the fbdev chardev opened by the time the driver is removed. If that's the case, fb_info will be freed when unregister_framebuffer() is called, making the fb_info pointer accessed in vesafb_remove() after that to no longer be valid. To prevent that, move the expression containing the info->par to happen before the unregister_framebuffer() function call.
- Severity
- high
- Software
- Kernel
- Fixed in
- 5.18.3
- Published
- 2025-02-26
Affected versions
From: 5.18
Until: 5.18.3
Fixed in: 5.18.3
How to fix this CVE
Update your Linux kernel to version 5.18.3 or later to resolve a use-after-free vulnerability in the vesafb framebuffer driver. This flaw occurs when the kernel attempts to access memory that has already been freed during driver removal, potentially leading to kernel crashes or privilege escalation. Prioritize this update for systems running kernel versions 5.18 through 5.18.2 that depend on VESA framebuffer support.
sudo dnf update kernel kernel-develDefensia detects this vulnerability
How to check if you are affected
- Check your kernel version: uname -r — verify if it falls between 5.18 and 5.18.2
- Confirm vesafb driver is active: grep -i vesafb /proc/cmdline or lsmod | grep vesafb
- Review kernel logs for crashes: dmesg | grep -i 'use-after-free\|segfault\|general protection' during driver load/unload cycles
- Verify patch application: grep -i 'move the expression containing the info->par' /boot/config-$(uname -r) or compare kernel build timestamp against the patch commit date (5.18.3 release)
FAQ
What is CVE-2022-49419?
CVE-2022-49419 is a use-after-free vulnerability in the Linux VESA framebuffer (vesafb) driver where the kernel attempts to dereference a freed memory pointer during driver removal, occurring when the framebuffer is unregistered before the driver's cleanup routine completes.
Is CVE-2022-49419 being actively exploited?
No, this vulnerability is not listed in the CISA KEV catalog and has no known public exploits, though it could potentially be weaponized by local authenticated attackers with driver unload privileges.
What versions of Kernel are affected by CVE-2022-49419?
Linux kernel versions 5.18, 5.18.1, and 5.18.2 are vulnerable; the fix is included in kernel 5.18.3 and later.
How do I check if my server is vulnerable to CVE-2022-49419?
Run `uname -r` and verify the version is between 5.18 and 5.18.2, then confirm vesafb is in use with `grep vesafb /proc/cmdline` or `lsmod | grep vesafb`.
Does Defensia detect CVE-2022-49419?
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-2022-49419 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2022-49419. Free for 1 server.
Get started free