CRITICAL🇬🇧 English

CVE-2026-59638

Bouncy Castle Java: błędna weryfikacja hostname (CN-fallback) w JSSE

CVSS 9.3v4.0pub. 2026-08-03upd. 2026-08-04

W bibliotece Bouncy Castle for Java mechanizm CN-fallback w weryfikatorze hostname JSSE jest domyślnie włączony, mimo że dokumentacja traktuje go jako opcjonalny. Umożliwia to atakującemu przeprowadzenie ataku man-in-the-middle poprzez podstawienie certyfikatu z pasującym polem CN zamiast wymaganego SAN.

Pokaż oryginał (EN)

In Bouncy Castle for Java before 1.85, JSSE hostname verifier CN-fallback enabled by default despite documented opt-in. This issue also affects Bouncy Castle for Java LTS before 2.73.12, and Bouncy Castle for Java FIPS (BC-FJA) before bctls-fips 1.0.24 (1.0.X series), 2.0.24 (2.0.X series) and 2.1.24 (2.1.X series).

🤖 Analiza AI
Jak działa

Podatność wynika z nieprawidłowej implementacji weryfikacji hostname (CWE-297 — Improper Validation of Certificate with Host Mismatch). Weryfikator JSSE dostarczany przez Bouncy Castle powinien akceptować jako prawidłową nazwę hosta wyłącznie wartości zawarte w rozszerzeniu Subject Alternative Name (SAN) certyfikatu. Zamiast tego domyślnie aktywny jest tryb CN-fallback, który honoruje również pole Common Name (CN) z Subject certyfikatu — mechanizm przestarzały i podatny na nadużycia. Atakujący posiadający certyfikat z odpowiednio spreparowanym polem CN może skutecznie podszyć się pod zaufany serwer wobec aplikacji korzystającej z podatnej biblioteki.

Skutki

Atakujący może przeprowadzić atak man-in-the-middle, przechwytując lub modyfikując szyfrowany ruch TLS pomiędzy klientem a serwerem. W rezultacie możliwe jest uzyskanie nieautoryzowanego dostępu do przesyłanych danych (wysokie naruszenie poufności i integralności).

Mitygacja

Należy zaktualizować bibliotekę do następujących wersji: Bouncy Castle for Java — 1.85 lub nowsza; Bouncy Castle for Java LTS — 2.73.12 lub nowsza; BC-FJA bctls-fips — 1.0.24 (seria 1.0.X), 2.0.24 (seria 2.0.X) lub 2.1.24 (seria 2.1.X). Szczegółowe informacje dostępne są w referencjach producenta pod adresem https://github.com/bcgit/bc-java/wiki/CVE-2026-59638

Kogo dotyczy

Bouncy Castle for Java przed wersją 1.85; Bouncy Castle for Java LTS przed wersją 2.73.12; Bouncy Castle for Java FIPS (BC-FJA) — bctls-fips przed wersjami 1.0.24 (seria 1.0.X), 2.0.24 (seria 2.0.X) oraz 2.1.24 (seria 2.1.X)

CVSS Vector
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:Amber
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje