Impact
The vulnerability in Bouncy Castle for Java FIPS (BC-FJA) before version 2.1.3 causes the native entropy source on Intel platforms to retry CPU random number generation instructions indefinitely when the carry flag indicates failure. This loop occurs within a JNI call, preventing interruption or timeout. Consequently, any operation that relies on the native entropy source may hang for an arbitrary duration, effectively denying service to the application. The weakness is a classic uncontrolled resource consumption flaw (CWE‑835).
Affected Systems
Legion of the Bouncy Castle Inc. owns the BC-FJA product. All versions of BC‑FJA prior to bc‑fips 2.1.3 are affected. The 1.0.x and 2.0.x FIPS series of Bouncy Castle for Java (bcprov) are not impacted.
Risk and Exploitability
The CVSS score of 8.7 marks the issue as high severity, and the EPSS score is not available, so exploit likelihood is uncertain but could be significant in environments where RDSEED/RDRAND is unavailable or deliberately disabled. The vulnerability is listed in no KEV catalog. The most likely attack vector is an application that uses BC‑FJA on an Intel platform; an attacker could trigger the denial of service by causing the native entropy source to fail—such as through a hardware fault, exhausting the DRBG across many cores, or operating in a hypervisor that does not expose the instructions. Once triggered, the calling thread spins forever in the JNI routine without a timeout, leading to application hangs.
OpenCVE Enrichment