Skip to main content
← All vulnerabilities
CVE-2024-38552

drm/amd/display: Fix potential index out of bounds in color transformation function

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 4.19.316, 5.4.278, 5.10.219, 5.15.161, 6.1.93, and 3 more
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: partial

Summary

In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Fix potential index out of bounds in color transformation function Fixes index out of bounds issue in the color transformation function. The issue could occur when the index 'i' exceeds the number of transfer function points (TRANSFER_FUNC_POINTS). The fix adds a check to ensure 'i' is within bounds before accessing the transfer function points. If 'i' is out of bounds, an error message is logged and the function returns false to indicate an error. Reported by smatch: drivers/gpu/drm/amd/amdgpu/../display/dc/dcn10/dcn10_cm_common.c:405 cm_helper_translate_curve_to_hw_format() error: buffer overflow 'output_tf->tf_pts.red' 1025 <= s32max drivers/gpu/drm/amd/amdgpu/../display/dc/dcn10/dcn10_cm_common.c:406 cm_helper_translate_curve_to_hw_format() error: buffer overflow 'output_tf->tf_pts.green' 1025 <= s32max drivers/gpu/drm/amd/amdgpu/../display/dc/dcn10/dcn10_cm_common.c:407 cm_helper_translate_curve_to_hw_format() error: buffer overflow 'output_tf->tf_pts.blue' 1025 <= s32max

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: partial

  3. Record last updated

Affected versions

  • Linux Linux

    From b629596072e5fa901c84f9e88d845a696ee32942 · fixed in 604c506ca43fce52bb882cff9c1fdf2ec3b4029c; From b629596072e5fa901c84f9e88d845a696ee32942 · fixed in e280ab978c81443103d7c61bdd1d8d708cf6ed6d; From b629596072e5fa901c84f9e88d845a696ee32942 · fixed in 04bc4d1090c343025d69149ca669a27c5b9c34a7; From b629596072e5fa901c84f9e88d845a696ee32942 · fixed in ced9c4e2289a786b8fa684d8893b7045ea53ef7e; From b629596072e5fa901c84f9e88d845a696ee32942 · fixed in 98b8a6bfd30d07a19cfacdf82b50f84bf3360869; From b629596072e5fa901c84f9e88d845a696ee32942 · fixed in 4e8c8b37ee84b3b19c448d2b8e4c916d2f5b9c86; From b629596072e5fa901c84f9e88d845a696ee32942 · fixed in 123edbae64f4d21984359b99c6e79fcde31c6123; From b629596072e5fa901c84f9e88d845a696ee32942 · fixed in 7226ddf3311c5e5a7726ad7d4e7b079bb3cfbb29; From b629596072e5fa901c84f9e88d845a696ee32942 · fixed in 63ae548f1054a0b71678d0349c7dc9628ddd42ca

  • Linux Linux

    4.16

  • KernelLinux

    From 4.16.0 · fixed in 4.19.316; From 4.20.0 · fixed in 5.4.278; From 5.5.0 · fixed in 5.10.219; From 5.11.0 · fixed in 5.15.161; From 5.16.0 · fixed in 6.1.93; From 6.2.0 · fixed in 6.6.33; From 6.7.0 · fixed in 6.8.12; From 6.9.0 · fixed in 6.9.3

References 9

git.kernel.org