CRITICAL🇬🇧 English

CVE-2021-26957

Out-of-bounds read w Rust crate xcb — naruszenie soundness

CVSS 9.8v3.1pub. 2021-02-09upd. 2024-11-21

W bibliotece xcb dla języka Rust (wersje do 2021-02-04) odkryto naruszenie zasady soundness polegające na odczycie poza granicami bufora (out-of-bounds read) w funkcji xcb::xproto::change_property(). Podatność pozwala na wysłanie do serwera X niezamierzonych, niezainicjalizowanych lub wrażliwych bajtów spoza przydzielonego bufora.

Pokaż oryginał (EN)

An issue was discovered in the xcb crate through 2021-02-04 for Rust. It has a soundness violation because there is an out-of-bounds read in xcb::xproto::change_property(), as demonstrated by a format=32 T=u8 situation where out-of-bounds bytes are sent to an X server.

🤖 Analiza AI
Jak działa

Funkcja change_property() w crate xcb nie weryfikuje poprawnie rozmiarów danych w kontekście parametru format. Gdy wywołanie odbywa się z format=32 przy typie danych T=u8, funkcja odczytuje więcej bajtów niż faktycznie zawiera dostarczony bufor, sięgając poza jego granice. Nieprawidłowo odczytane bajty są następnie przesyłane jako dane właściwości do serwera X, co stanowi naruszenie gwarancji bezpieczeństwa pamięci (soundness) języka Rust.

Skutki

Atakujący lub złośliwy kod może powodować wyciek danych z pamięci procesu (wysyłanych do serwera X), a w zależności od kontekstu uruchomienia — uzyskać dostęp do poufnych informacji, doprowadzić do niestabilności aplikacji lub potencjalnie wykonać dalsze działania wykorzystując ujawnione dane.

Mitygacja

Należy zastosować patche dostępne u producenta zgodnie z referencjami — szczegóły oraz informacje o bezpiecznej wersji dostępne są w poradniku RUSTSEC-2021-0019 pod adresem https://rustsec.org/advisories/RUSTSEC-2021-0019.html

Kogo dotyczy

Rust crate xcb (Xcb Project Xcb) w wersjach opublikowanych do 2021-02-04 włącznie

Uwagi

Podatność dotyczy naruszenia zasady soundness w Rust — języku gwarantującym bezpieczeństwo pamięci. Błąd zidentyfikowano w kodzie unsafe i udokumentowano w bazie RustSec pod identyfikatorem RUSTSEC-2021-0019.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
  • Xcb Project Xcb

    APP
    Xcb Project
    ≤ 2021-02-04
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
Memory
CWE
Referencje

Powiązane podatności

CVE-2021-26955CRITICAL9.8PL ✓ten sam produkt

Naruszenie poprawności typów w xcb (Rust) — niezwalidowane bajty z serwera X

CVE-2021-26956CRITICAL9.8PL ✓ten sam produkt

Naruszenie poprawności typów (soundness violation) w bibliotece xcb dla Rust

CVE-2021-26958HIGH8.8ten sam produkt

An issue was discovered in the xcb crate through 2021-02-04 for Rust. It has a soundness violation because tra...

CVE-2020-36205MEDIUM5.5ten sam produkt

An issue was discovered in the xcb crate through 2020-12-10 for Rust. base::Error does not have soundness. Bec...