Advisories for Maven/Org.bouncycastle/Bctls-Lts8on package

2026

JSSE hostname verifier CN-fallback enabled by default despite documented opt-in

Affects Bouncy Castle for Java LTS before 2.73.12. HostnameUtil gates the fallback that matches the certificate CN when no dNSName SAN is present on a property whose unset default the code treats as enabled, contrary to its documentation. Because name-constraint processing only constrains SAN entries of the constrained type, a leaf with no dNSName SAN passes a dNSName-constrained chain, and the verifier then matches the attacker-chosen CN against the target …

DTLS handshake reassembler allocates buffer from unchecked 24-bit length

Affects Bouncy Castle for Java LTS before 2.73.12. DTLSReliableHandshake.processRecord() allocates a reassembly buffer sized from the 24-bit handshake length field of an incoming record, without the maximum-message-size check the stream-TLS path applies. Up to sixteen message sequences may be buffered per connection, so a single record of about 205 bytes carrying sixteen fragment headers with a maximal length forces roughly 256 MiB of allocation before any authentication. A few small …