CRITICAL🇬🇧 English

CVE-2023-45924

Segmentation violation w libglvnd — funkcja glXGetDrawableScreen()

CVSS 9.8v3.1pub. 2024-03-27upd. 2026-04-15

W pliku libglxproto.c biblioteki OpenGL libglvnd (wersja bb06db5a) odkryto naruszenie segmentacji (segmentation violation) w funkcji glXGetDrawableScreen(). Podatność jest jednak kwestionowana przez maintainerów projektu, ponieważ dotyczy scenariusza z atakującym kontrolującym serwer, co uznawane jest za sytuację niewymagającą ochrony w typowych przypadkach użycia.

Pokaż oryginał (EN)

libglxproto.c in OpenGL libglvnd bb06db5a was discovered to contain a segmentation violation via the function glXGetDrawableScreen(). NOTE: this is disputed because there are no common situations in which users require uninterrupted operation with an attacker-controller server.

🤖 Analiza AI
Jak działa

Błąd związany jest z dwoma klasami podatności: przepełnieniem buforu na stosie (CWE-121, stack-based buffer overflow) oraz dereferencją wskaźnika NULL (CWE-476). Wywołanie funkcji glXGetDrawableScreen() z odpowiednio spreparowanymi danymi od złośliwego serwera może doprowadzić do naruszenia segmentacji procesu. Mechanizm zakłada, że atakujący kontroluje serwer OpenGL/X11, z którym łączy się klient korzystający z podatnej biblioteki.

Skutki

Atakujący kontrolujący serwer może doprowadzić do awarii aplikacji klienckiej (denial of service) lub potencjalnie wykonać dowolny kod w kontekście procesu klienckiego. Wysoki wynik CVSS (9.8) odzwierciedla teoretyczne maksymalne skutki, jednak rzeczywiste ryzyko jest kwestionowane przez twórców projektu.

Mitygacja

Należy zastosować patche dostępne u producenta zgodnie z referencjami — dostępne jest merge request nr 295 w repozytorium GitLab projektu libglvnd (gitlab.freedesktop.org/glvnd/libglvnd). Należy zaktualizować bibliotekę do wersji zawierającej poprawkę.

Kogo dotyczy

Biblioteka OpenGL libglvnd, rewizja bb06db5a (konkretne wersje wskazane w referencjach producenta)

Uwagi

Podatność jest oficjalnie kwestionowana (oznaczona jako 'disputed') przez maintainerów projektu libglvnd — ich argumentacja wskazuje, że typowi użytkownicy nie wymagają niezakłóconego działania w scenariuszu z serwerem kontrolowanym przez atakującego. Wymagana jest ocena, czy środowisko organizacji obejmuje klientów łączących się z niezaufanymi serwerami X11/OpenGL.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje
CVE-2023-45924 — Segmentation violation w libglvnd — funkcja glXGetDrawableScreen() — CRITICAL 9.8 | CVEbaza.pl