Description
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]`.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
e11f5bd8228fc3760c221f940b9f6365dbf3e7ed to < a7b45024f66f9ec769e8dbb1a51ae83cd05929c7affectede11f5bd8228fc3760c221f940b9f6365dbf3e7ed to < 09f3946bb452918dbfb1982add56f9ffaae393dcaffectede11f5bd8228fc3760c221f940b9f6365dbf3e7ed to < 97794170b696856483f74b47bfb6049780d2d3a0affected
Linux Linux
Default version status: affected
5.7affected0 to < 5.7unaffected5.10.75 to ≤ 5.10.*unaffected5.14.14 to ≤ 5.14.*unaffected5.15 to ≤ *unaffected