CVE-2021-47444

drm/edid: In connector_bad_edid() cap num_of_ext by num_blocks read

published May 22, 2024

CVSS
—
EPSS
0%
Percentile
12.5
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

drm/edid: In connector_bad_edid() cap num_of_ext by num_blocks read

In commit e11f5bd8228f ("drm: Add support for DP 1.4 Compliance edid

corruption test") the function connector_bad_edid() started assuming

that the memory for the EDID passed to it was big enough to hold

`edid[0x7e] + 1` blocks of data (1 extra for the base block). It

completely ignored the fact that the function was passed `num_blocks`

which indicated how much memory had been allocated for the EDID.

Let's fix this by adding a bounds check.

This is important for handling the case where there's an error in the

first block of the EDID. In that case we will call

connector_bad_edid() without having re-allocated memory based on

`edid[0x7e]`.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00225 · 12.5th percentile
Published
2024-05-22T06:19Z
EPSS history
Timeline
  • 22 MAY 06:19Z
    drm/edid: In connector_bad_edid() cap num_of_ext by num_blocks read
    cvelistv5