Biblioteka kryptograficzna Botan w wersjach 1.11.x przed 1.11.22 błędnie obsługuje dopasowywanie znaków wieloznacznych (wildcard) w nazwach hostów podczas weryfikacji certyfikatów X.509. Podatność może pozwolić zdalnemu atakującemu na obejście weryfikacji tożsamości serwera przy użyciu prawidłowego certyfikatu.
▸ Pokaż oryginał (EN)
botan 1.11.x before 1.11.22 improperly handles wildcard matching against hostnames, which might allow remote attackers to have unspecified impact via a valid X.509 certificate, as demonstrated by accepting *.example.com as a match for bar.foo.example.com.
Błąd polega na nieprawidłowej implementacji logiki dopasowywania wzorców wildcard w procesie walidacji certyfikatów X.509 (CWE-295 — nieprawidłowa weryfikacja certyfikatu). Biblioteka akceptuje certyfikat wystawiony dla domeny wieloznacznej, np. *.example.com, jako prawidłowy dla adresu bar.foo.example.com, mimo że zgodnie ze standardami wildcard powinien obejmować wyłącznie jeden poziom hierarchii DNS. Atakujący posiadający prawidłowy certyfikat dla poddomeny wieloznacznej może dzięki temu podszyć się pod inne hosty w ramach domeny nadrzędnej.
Atakujący może przeprowadzić atak typu man-in-the-middle, skutecznie podszywając się pod zaufany serwer przy użyciu legalnie wystawionego certyfikatu wildcard, co prowadzi do potencjalnego naruszenia poufności, integralności i dostępności komunikacji.
Należy zaktualizować bibliotekę Botan do wersji 1.11.22 lub nowszej. Szczegółowe informacje dostępne są w oficjalnym biuletynie bezpieczeństwa producenta pod adresem https://botan.randombit.net/security.html
Botan w wersjach 1.11.x przed 1.11.22
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HBotan Project Botan
APPBotan Project≤ 1.11.21
Powiązane podatności
Botan: błędna weryfikacja certyfikatu umożliwia obejście łańcucha zaufania
Fałszowanie odpowiedzi OCSP w bibliotece Botan — błąd weryfikacji certyfikatów
Botan: brak obliczeń constant-time w operacjach kodowania/dekodowania
Nieprawidłowa walidacja wildcard certyfikatów w Botan 2.2.0–2.4.0
Niezdefiniowane zachowanie w Curve25519 biblioteki Botan na platformach 32-bitowych