CVE-2021-47383·Kernel vulnerability
In the Linux kernel, the following vulnerability has been resolved: tty: Fix out-of-bound vmalloc access in imageblit This issue happens when a userspace program does an ioctl FBIOPUT_VSCREENINFO passing the fb_var_screeninfo struct containing only the fields xres, yres, and bits_per_pixel with values. If this struct is the same as the previous ioctl, the vc_resize() detects it and doesn't call the resize_screen(), leaving the fb_var_screeninfo incomplete. And this leads to the updatescrollmode() calculates a wrong value to fbcon_display->vrows, which makes the real_y() return a wrong value of y, and that value, eventually, causes the imageblit to access an out-of-bound address value. To solve this issue I made the resize_screen() be called even if the screen does not need any resizing, so it will "fix and fill" the fb_var_screeninfo independently.
- Severity
- high
- Software
- Kernel
- Fixed in
- 5.14.10
- Published
- 2024-05-21
Affected versions
From: 5.11
Until: 5.14.10
Fixed in: 5.14.10
How to fix this CVE
Update your Linux kernel to version 5.14.10 or later to resolve this framebuffer memory access vulnerability. The vulnerability affects kernel versions 5.11 through 5.14.9 and can cause out-of-bounds memory access during framebuffer operations. Apply the patch immediately on systems running affected kernel versions, especially those with display drivers or framebuffer console functionality enabled.
sudo dnf update kernel kernel-develDefensia detects this vulnerability
How to check if you are affected
- Step 1: Check installed kernel version with: uname -r
- Step 2: Verify if framebuffer console is enabled: grep -i CONFIG_FRAMEBUFFER_CONSOLE /boot/config-$(uname -r)
- Step 3: Search kernel logs for framebuffer-related errors: journalctl -b | grep -i 'imageblit\|framebuffer\|vrows'
- Step 4: After patching, confirm kernel update: uname -r should show version 5.14.10 or newer
FAQ
What is CVE-2021-47383?
CVE-2021-47383 is a memory access vulnerability in the Linux kernel's framebuffer console driver that occurs when incomplete screen resolution information is processed, leading to incorrect memory calculations and out-of-bounds access during image rendering operations.
Is CVE-2021-47383 being actively exploited?
No, there is no evidence of active exploitation in the wild. This vulnerability requires local access and privileged operations to trigger, limiting its practical exploitation risk.
What versions of Kernel are affected by CVE-2021-47383?
Linux kernel versions 5.11 through 5.14.9 are vulnerable. The fix is included in kernel version 5.14.10 and all subsequent releases.
How do I check if my server is vulnerable to CVE-2021-47383?
Run 'uname -r' to check your kernel version. If it shows a version between 5.11 and 5.14.9, your system is vulnerable. Cross-reference with 'grep CONFIG_FRAMEBUFFER_CONSOLE /boot/config-$(uname -r)' to confirm framebuffer support is enabled.
Does Defensia detect CVE-2021-47383?
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-2021-47383 will appear in your dashboard with remediation steps.
Related Kernel CVEs
References
- https://git.kernel.org/stable/c/067c694d06040db6f0c65281bb358452ca6d85b9
- https://git.kernel.org/stable/c/3b0c406124719b625b1aba431659f5cdc24a982c
- https://git.kernel.org/stable/c/699d926585daa6ec44be556cdc1ab89e5d54557b
- https://git.kernel.org/stable/c/70aed03b1d5a5df974f456cdc8eedb213c94bb8b
- https://git.kernel.org/stable/c/7e71fcedfda6f7de18f850a6b36e78d78b04476f
Track CVEs across your fleet automatically
Defensia scans your Linux servers and tells you exactly which ones are running vulnerable versions — including CVE-2021-47383. Free for 1 server.
Get started free