Katalog CVE

CVE-2026-73324

ŚrednieCVSS 6.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.33%

Percentyl 26 - wyżej niż 26% wszystkich znanych CVE

Streszczenie

VLC media player kopiuje linię odpowiedzi RTSP do stałego bufora bez gwarancji zakończenia, a następnie traktuje ten bufor jako ciąg C. Funkcja RtspReadLine w modules/access/rtsp/access.c wywołuje strncpy z pełną długością bufora, co nie zapisuje terminatora, gdy źródło jest co najmniej tak długie jak cel, a rtsp_get w modules/access/rtsp/rtsp.c przydziela bufor o rozmiarze BUF_SIZE i przekazuje go do strdup. Gdy serwer zwróci linię o długości 4096 bajtów lub więcej, strdup mierzy jej długość poza przydziałem i kopiuje sąsiednie bajty sterty aż do przypadkowego zera. Ponieważ dotknięta linia to nagłówek Session, ujawnione bajty są zachowywane jako identyfikator sesji i wysyłane z powrotem do serwera przy każdym kolejnym żądaniu, więc operator wrogiego serwera odczytuje pamięć sterty klienta. Atakujący kontroluje długość linii i tym samym zasięg odczytu. Pojedynczy wpis playlisty wskazujący na adres realrtp jest wystarczający. Moduł jest opcją kompilacji, wyłączoną w niektórych pakietach dystrybucyjnych, a włączoną w oficjalnych kompilacjach VideoLAN.

Ocena ryzyka

Ryzyko polega na wycieku pamięci sterty klienta do złośliwego serwera, co może ujawnić poufne dane, takie jak tokeny sesji, hasła lub inne wrażliwe informacje przechowywane w pamięci.

Rekomendacja

Zaleca się unikanie otwierania niezaufanych playlist zawierających adresy realrtp oraz aktualizację VLC do wersji, w której moduł RTSP jest wyłączony lub poprawiony, jeśli dostępna.

Inne podatności w VLC media player

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

VLC media player copies an RTSP response line into a fixed buffer without guaranteeing termination and then treats that buffer as a C string. RtspReadLine in modules/access/rtsp/access.c calls strncpy with the full buffer length, which writes no terminator when the source line is at least as long as the destination, and rtsp_get in modules/access/rtsp/rtsp.c allocates that buffer as BUF_SIZE bytes and passes it to strdup. When a server returns a line of 4096 bytes or more, strdup measures its length past the end of the allocation and copies adjacent heap bytes until an incidental zero byte. Because the affected line is the Session header, the disclosed bytes are retained as the session identifier and sent back to the server on every subsequent request, so the operator of a hostile server reads heap memory from the client rather than inferring it. The attacker controls the line length and therefore how far the read runs. A single playlist entry naming a realrtsp URL is sufficient. The module is a build-time option, disabled in some distribution packages and enabled in the official VideoLAN builds.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS