CRITICAL🇬🇧 English

CVE-2021-27378

Nieprawidłowa inicjalizacja RNG w rand_core — zbyt mała ilość danych seeda

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

Podatność w bibliotece rand_core dla języka Rust (przed wersją 0.6.2) powoduje, że generator liczb losowych może zostać zainicjowany zbyt małą ilością danych losowych. Prowadzi to do osłabienia kryptograficznej jakości generowanych liczb, co może mieć poważne konsekwencje dla bezpieczeństwa aplikacji korzystających z tej biblioteki.

Pokaż oryginał (EN)

An issue was discovered in the rand_core crate before 0.6.2 for Rust. Because read_u32_into and read_u64_into mishandle certain buffer-length checks, a random number generator may be seeded with too little data.

🤖 Analiza AI
Jak działa

Funkcje read_u32_into oraz read_u64_into nieprawidłowo weryfikują długość przekazywanego bufora danych. Wskutek błędnej kontroli rozmiaru bufora (CWE-131 — nieprawidłowe obliczenie rozmiaru bufora) generator liczb losowych może zostać zasilony (seeded) mniejszą ilością danych entropii niż wymagana. Efektem jest zmniejszona losowość generowanych wartości, co może powodować przewidywalność danych kryptograficznych.

Skutki

Atakujący może potencjalnie przewidzieć wartości generowane przez osłabiony generator liczb losowych, co zagraża poufności i integralności danych kryptograficznych — np. kluczy, tokenów sesji lub innych sekretów generowanych z użyciem tej biblioteki.

Mitygacja

Należy zaktualizować bibliotekę rand_core do wersji 0.6.2 lub nowszej. Szczegóły dostępne w poradniku RUSTSEC-2021-0023 pod adresem https://rustsec.org/advisories/RUSTSEC-2021-0023.html.

Kogo dotyczy

Biblioteka rand_core dla języka Rust w wersjach przed 0.6.2 (Rand Core Project).

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

    APP
    Rand Core Project
    0.6.0 – 0.6.2 (bez)
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje