CVE-2021-47383

HIGH

Linux Kernel < 4.4.286 - Out-of-bounds Read in imageblit via FBIOPUT_VSCREENINFO

Title source: llm
STIX 2.1

Description

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.

Scores

CVSS v3 7.1
EPSS 0.0026
EPSS Percentile 17.6%
Attack Vector LOCAL
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H

CISA SSVC

Vulnrichment
Exploitation none
Automatable no
Technical Impact partial

Details

CWE
CWE-125
Status published
Products (19)
Linux/Linux < 2.6.12
Linux/Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 - 067c694d06040db6f0c65281bb358452ca6d85b9
Linux/Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 - 3b0c406124719b625b1aba431659f5cdc24a982c
Linux/Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 - 699d926585daa6ec44be556cdc1ab89e5d54557b
Linux/Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 - 70aed03b1d5a5df974f456cdc8eedb213c94bb8b
Linux/Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 - 7e71fcedfda6f7de18f850a6b36e78d78b04476f
Linux/Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 - 883f7897a25e3ce14a7f274ca4c73f49ac84002a
Linux/Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 - 8a6a240f52e14356386030d8958ae8b1761d2325
Linux/Linux 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 - d570c48dd37dbe8fc6875d4461d01a9554ae2560
Linux/Linux 2.6.12
... and 9 more
Published May 21, 2024
Tracked Since Feb 18, 2026