# CVE-2024-30172: Bouncy Castle crafted signature and public key can be used to trigger an infinite loop

Source: https://junglewise.ai/threats/cve-2024-30172-bouncy-castle-crafted-signature-and-public-key-can-be-used-to  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2024-05-14  
License: CC BY 4.0 with a link back

CVE-2024-30172 · Severity: low · CVSS 3.1 · Published 2024-05-14

Bouncy Castle crafted signature and public key can be used to trigger an infinite loop

Technologies: [org.bouncycastle:bcprov-jdk14 (Maven)](https://junglewise.ai/threats/technologies/org-bouncycastle-bcprov-jdk14), [org.bouncycastle:bcprov-jdk15to18 (Maven)](https://junglewise.ai/threats/technologies/org-bouncycastle-bcprov-jdk15to18), [org.bouncycastle:bcprov-jdk18on (Maven)](https://junglewise.ai/threats/technologies/org-bouncycastle-bcprov-jdk18on), [org.bouncycastle:bctls-jdk14 (Maven)](https://junglewise.ai/threats/technologies/org-bouncycastle-bctls-jdk14), [org.bouncycastle:bctls-jdk15to18 (Maven)](https://junglewise.ai/threats/technologies/org-bouncycastle-bctls-jdk15to18), [org.bouncycastle:bctls-jdk18on (Maven)](https://junglewise.ai/threats/technologies/org-bouncycastle-bctls-jdk18on), [BouncyCastle (NuGet)](https://junglewise.ai/threats/technologies/bouncycastle), [BouncyCastle.Cryptography (NuGet)](https://junglewise.ai/threats/technologies/bouncycastle-cryptography). Vendors: [Maven](https://junglewise.ai/threats/vendors/maven), [NuGet](https://junglewise.ai/threats/vendors/nuget).

## Quick answers

**Is CVE-2024-30172 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2024-30172 being exploited in the wild.

**How severe is CVE-2024-30172?** Low severity, with a CVSS score of 3.1, published 14 May 2024.

**Which products and versions are affected?** org.bouncycastle:bcprov-jdk14 (Maven) ECOSYSTEM:introduced=1.73,fixed=1.78; org.bouncycastle:bcprov-jdk15to18 (Maven) ECOSYSTEM:introduced=1.73,fixed=1.78; org.bouncycastle:bcprov-jdk18on (Maven) ECOSYSTEM:introduced=1.73,fixed=1.78; org.bouncycastle:bctls-jdk14 (Maven) ECOSYSTEM:introduced=1.73,fixed=1.78; and 4 more.

**Is there a fix for CVE-2024-30172?** Yes. org.bouncycastle:bcprov-jdk14 (Maven): upgrade to 1.78 or later; org.bouncycastle:bcprov-jdk15to18 (Maven): upgrade to 1.78 or later; org.bouncycastle:bcprov-jdk18on (Maven): upgrade to 1.78 or later; org.bouncycastle:bctls-jdk14 (Maven): upgrade to 1.78 or later; org.bouncycastle:bctls-jdk15to18 (Maven): upgrade to 1.78 or later; org.bouncycastle:bctls-jdk18on (Maven): upgrade to 1.78 or later; BouncyCastle.Cryptography (NuGet): upgrade to 2.3.1 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**Am I affected by CVE-2024-30172?** Check whether you run org.bouncycastle:bcprov-jdk14 (Maven), org.bouncycastle:bcprov-jdk15to18 (Maven), org.bouncycastle:bcprov-jdk18on (Maven) or one of the others listed at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## How to fix

- org.bouncycastle:bcprov-jdk14 (Maven): upgrade to 1.78 or later

  ```sh
  # set org.bouncycastle:bcprov-jdk14 to 1.78 in your pom.xml or build.gradle
  ```

- org.bouncycastle:bcprov-jdk15to18 (Maven): upgrade to 1.78 or later

  ```sh
  # set org.bouncycastle:bcprov-jdk15to18 to 1.78 in your pom.xml or build.gradle
  ```

- org.bouncycastle:bcprov-jdk18on (Maven): upgrade to 1.78 or later

  ```sh
  # set org.bouncycastle:bcprov-jdk18on to 1.78 in your pom.xml or build.gradle
  ```

- org.bouncycastle:bctls-jdk14 (Maven): upgrade to 1.78 or later

  ```sh
  # set org.bouncycastle:bctls-jdk14 to 1.78 in your pom.xml or build.gradle
  ```

- org.bouncycastle:bctls-jdk15to18 (Maven): upgrade to 1.78 or later

  ```sh
  # set org.bouncycastle:bctls-jdk15to18 to 1.78 in your pom.xml or build.gradle
  ```

- org.bouncycastle:bctls-jdk18on (Maven): upgrade to 1.78 or later

  ```sh
  # set org.bouncycastle:bctls-jdk18on to 1.78 in your pom.xml or build.gradle
  ```

- BouncyCastle.Cryptography (NuGet): upgrade to 2.3.1 or later

  ```sh
  dotnet add package BouncyCastle.Cryptography --version 2.3.1
  ```


## Affected products

- org.bouncycastle:bcprov-jdk14 (Maven) ECOSYSTEM:introduced=1.73,fixed=1.78
- org.bouncycastle:bcprov-jdk15to18 (Maven) ECOSYSTEM:introduced=1.73,fixed=1.78
- org.bouncycastle:bcprov-jdk18on (Maven) ECOSYSTEM:introduced=1.73,fixed=1.78
- org.bouncycastle:bctls-jdk14 (Maven) ECOSYSTEM:introduced=1.73,fixed=1.78
- org.bouncycastle:bctls-jdk15to18 (Maven) ECOSYSTEM:introduced=1.73,fixed=1.78
- org.bouncycastle:bctls-jdk18on (Maven) ECOSYSTEM:introduced=1.73,fixed=1.78
- BouncyCastle (NuGet) ECOSYSTEM:introduced=0
- BouncyCastle.Cryptography (NuGet) ECOSYSTEM:introduced=0,fixed=2.3.1

## Identifiers

- CVE-2024-30172
- GHSA-m44j-cfrm-g8qc

## Related threats

- [Bouncy Castle ASN.1 sequence nesting-depth guard bypass](https://junglewise.ai/threats/cve-2026-13506-bouncy-castle-asn-1-sequence-nesting-depth-guard-bypass)
- [Bouncy Castle Name Constraints bypass via trailing dot in rfc822Name and URI](https://junglewise.ai/threats/cve-2026-8763-bouncy-castle-name-constraints-bypass-via-trailing-dot-in)
- [Bouncy Castle BC-JAVA timing channel in FrodoKEM](https://junglewise.ai/threats/cve-2026-5598-bouncy-castle-bc-java-timing-channel-in-frodokem)
- [Bouncy Castle BC-JAVA LDAP injection in LDAPStoreHelper](https://junglewise.ai/threats/cve-2026-0636-bouncy-castle-bc-java-ldap-injection-in-ldapstorehelper)
- [Bouncy Castle BC-JAVA risky cryptography in G3413CTRBlockCipher](https://junglewise.ai/threats/cve-2025-14813-bouncy-castle-bc-java-risky-cryptography-in-g3413ctrblockcipher)
