CRITICAL🇬🇧 English

CVE-2011-4121

Ruby OpenSSL: błędna generacja kluczy prywatnych RSA (wykładnik = 1)

CVSS 9.8v3.1pub. 2019-11-26upd. 2024-11-21

Rozszerzenie OpenSSL w Ruby (gałąź Git trunk) w określonym przedziale czasowym zawsze generowało wykładnik prywatny RSA o wartości '1', co czyni wygenerowane klucze kryptograficznie słabymi. Zdalny atakujący może wykorzystać tę wadę do obejścia lub naruszenia integralności usług opartych na silnych kluczach RSA.

Pokaż oryginał (EN)

The OpenSSL extension of Ruby (Git trunk) versions after 2011-09-01 up to 2011-11-03 always generated an exponent value of '1' to be used for private RSA key generation. A remote attacker could use this flaw to bypass or corrupt integrity of services, depending on strong private RSA keys generation mechanism.

🤖 Analiza AI
Jak działa

Błąd tkwi w rozszerzeniu OpenSSL dołączonym do Ruby (Git trunk) w wersjach z okresu od 2011-09-01 do 2011-11-03. W tym czasie mechanizm generowania prywatnych kluczy RSA zawsze przypisywał wykładnikowi prywatnemu wartość '1' zamiast kryptograficznie bezpiecznej wartości losowej. Klucz RSA z wykładnikiem równym '1' jest trywialnie słaby i nie zapewnia żadnej rzeczywistej ochrony kryptograficznej. Zgodnie z klasyfikacją CWE-326 jest to przypadek niewystarczającej siły mechanizmu szyfrowania.

Skutki

Atakujący może obejść mechanizmy uwierzytelniania lub ochrony integralności oparte na kluczach RSA wygenerowanych przez podatną wersję biblioteki. W konsekwencji możliwe jest naruszenie poufności, integralności oraz dostępności usług korzystających z tych kluczy.

Mitygacja

Należy zastąpić wszystkie klucze prywatne RSA wygenerowane przez podatną wersję rozszerzenia OpenSSL nowymi, bezpiecznymi kluczami wygenerowanymi przez niezagrożoną wersję biblioteki. Należy zastosować patche dostępne u producenta zgodnie z referencjami.

Kogo dotyczy

Ruby (Git trunk) z rozszerzeniem OpenSSL — wersje opublikowane po 2011-09-01 do 2011-11-03 włącznie.

Uwagi

Podatność dotyczy wyłącznie wąskiego okna czasowego (2011-09-01 do 2011-11-03) gałęzi Git trunk Ruby. Klucze RSA wygenerowane w tym okresie powinny zostać natychmiast unieważnione i zastąpione. CVE zostało opublikowane formalnie dopiero w 2019 roku, mimo że problem dotyczył kodu z 2011 roku.

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

    APP
    Ruby-Lang
    1.8.7.334 – 1.9.3 (bez)
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2016-2338CRITICAL9.8PL ✓ten sam produkt

Heap overflow w Ruby Psych::Emitter start_document — RCE

CVE-2022-28738CRITICAL9.8PL ✓ten sam produkt

Double free w kompilatorze Regexp w Ruby — zapis do dowolnych obszarów pamięci

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

Integer overflow w CGI.escape_html w Ruby — przepełnienie bufora

CVE-2018-16395CRITICAL9.8PL ✓ten sam produkt

Błędne porównanie obiektów X.509 w bibliotece OpenSSL dla Ruby

CVE-2018-8780CRITICAL9.1PL ✓ten sam produkt

Path traversal w metodach Dir Ruby przez brak walidacji znaków NULL