drm/amd/display: Fix index out of bounds in DCN30 degamma hardware format translation (Linux Linux)

CVE-2024-49895
HIGH 7.8

At a glance

Source
NVD
EPSS
EPSS 0.27 % · percentile 20 ()
State
PUBLISHED
Published
Updated
Assigner
Linux
NVD status
Modified

Description

In the Linux kernel, the following vulnerability has been resolved: drm/amd/display: Fix index out of bounds in DCN30 degamma hardware format translation This commit addresses a potential index out of bounds issue in the `cm3_helper_translate_curve_to_degamma_hw_format` function in the DCN30 color management module. 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, the function returns false to indicate an error. Reported by smatch: drivers/gpu/drm/amd/amdgpu/../display/dc/dcn30/dcn30_cm_common.c:338 cm3_helper_translate_curve_to_degamma_hw_format() error: buffer overflow 'output_tf->tf_pts.red' 1025 <= s32max drivers/gpu/drm/amd/amdgpu/../display/dc/dcn30/dcn30_cm_common.c:339 cm3_helper_translate_curve_to_degamma_hw_format() error: buffer overflow 'output_tf->tf_pts.green' 1025 <= s32max drivers/gpu/drm/amd/amdgpu/../display/dc/dcn30/dcn30_cm_common.c:340 cm3_helper_translate_curve_to_degamma_hw_format() error: buffer overflow 'output_tf->tf_pts.blue' 1025 <= s32max

Weaknesses (CWE)

  • CWE-129 — Improper Validation of Array Index

References

Scores

VersionScoreVectorScored by
CVSS 3.1HIGH 7.8CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HNVD · nvd@nist.gov (Primary)

European references

CERT-FR advisories

Affected configurations (NVD CPE)

Affected products

ProductVersions
Linux · Linuxaffected 4562236b3bc0a28aeb6ee93b2d8a849a4c4e1c7c < ad89f83343a501890cf082c8a584e96b59fe4015 ; affected 4562236b3bc0a28aeb6ee93b2d8a849a4c4e1c7c < de6ee4f9e6b1c36b4fdc7c345c1a6de9e246093e ; affected 4562236b3bc0a28aeb6ee93b2d8a849a4c4e1c7c < f3ccd855b4395ce65f10dd37847167f52e122b70 ; affected 4562236b3bc0a28aeb6ee93b2d8a849a4c4e1c7c < 0d38a0751143afc03faef02d55d31f70374ff843 ; affected 4562236b3bc0a28aeb6ee93b2d8a849a4c4e1c7c < f5c3d306de91a4b69cfe3eedb72b42d452593e42 ; affected 4562236b3bc0a28aeb6ee93b2d8a849a4c4e1c7c < c4fdc2d6fea129684b82bab90bb52fbace494a58
Linux · Linuxaffected 4.15 ; unaffected 0 < 4.15 ; unaffected 5.10.227 ≤ 5.10.* ; unaffected 5.15.168 ≤ 5.15.* ; unaffected 6.1.113 ≤ 6.1.* ; unaffected 6.6.55 ≤ 6.6.*

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
CERT-FR (ANSSI)Licence Ouverte / Etalab 2.0
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD