drm/dp_mst: Fix resetting msg rx state after topology removal (Linux Linux)

CVE-2024-57876
HIGH 7.0

En bref

Source
NVD
EPSS
EPSS 0.16 % · centile 5 ()
État
PUBLISHED
Publiée
Mise à jour
Attribuée par
Linux
Statut NVD
Modified

Description

In the Linux kernel, the following vulnerability has been resolved: drm/dp_mst: Fix resetting msg rx state after topology removal If the MST topology is removed during the reception of an MST down reply or MST up request sideband message, the drm_dp_mst_topology_mgr::up_req_recv/down_rep_recv states could be reset from one thread via drm_dp_mst_topology_mgr_set_mst(false), racing with the reading/parsing of the message from another thread via drm_dp_mst_handle_down_rep() or drm_dp_mst_handle_up_req(). The race is possible since the reader/parser doesn't hold any lock while accessing the reception state. This in turn can lead to a memory corruption in the reader/parser as described by commit bd2fccac61b4 ("drm/dp_mst: Fix MST sideband message body length check"). Fix the above by resetting the message reception state if needed before reading/parsing a message. Another solution would be to hold the drm_dp_mst_topology_mgr::lock for the whole duration of the message reception/parsing in drm_dp_mst_handle_down_rep() and drm_dp_mst_handle_up_req(), however this would require a bigger change. Since the fix is also needed for stable, opting for the simpler solution in this patch.

Faiblesses (CWE)

  • CWE-362 — Situation de compétition
  • CWE-787 — Écriture hors limites

Références

Scores

VersionScoreVecteurÉvalué par
CVSS 3.1HIGH 7.0CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:HNVD · nvd@nist.gov (Primary)

Références européennes

Avis du CERT-FR

Configurations affectées (CPE NVD)

Produits affectés

ProduitVersions
Linux · Linuxaffected b30fcedeba643ca16eaa6212c1245598b7cd830d < 94b33b2d7640e807869451384eb88321dd0ffbd4 ; affected 1d082618bbf3b6755b8cc68c0a8122af2842d593 < d834d20d2e86c52ed5cab41763fa61e6071680ef ; affected 1d082618bbf3b6755b8cc68c0a8122af2842d593 < be826b4451fd187a7c0b04be4f8243d5df6e0450 ; affected 1d082618bbf3b6755b8cc68c0a8122af2842d593 < a6fa67d26de385c3c7a23c1e109a0e23bfda4ec7 ; affected ee4a4282d78d96e07e714c28ca54679713fa2157 ; affected db35e49413a4d03ea0c003598803e49956f59324
Linux · Linuxaffected 6.3 ; unaffected 0 < 6.3 ; unaffected 6.1.120 ≤ 6.1.* ; unaffected 6.6.66 ≤ 6.6.* ; unaffected 6.12.5 ≤ 6.12.* ; unaffected 6.13 ≤ *

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