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.
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.
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.
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
Rust crate xcb (Xcb Project Xcb) w wersjach opublikowanych do 2021-02-04 włącznie
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:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HXcb Project Xcb
APPXcb Project≤ 2021-02-04
Powiązane podatności
Naruszenie poprawności typów w xcb (Rust) — niezwalidowane bajty z serwera X
Naruszenie poprawności typów (soundness violation) w bibliotece xcb dla Rust
An issue was discovered in the xcb crate through 2021-02-04 for Rust. It has a soundness violation because tra...
An issue was discovered in the xcb crate through 2020-12-10 for Rust. base::Error does not have soundness. Bec...