CVE-2024-29857: Bouncy Castle certificate parsing issues cause high CPU usage during parameter evaluation.

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

Bouncy Castle certificate parsing issues cause high CPU usage during parameter evaluation.

Technologies: org.bouncycastle:bc-fips (Maven), org.bouncycastle:bcprov-jdk14 (Maven), org.bouncycastle:bcprov-jdk15on (Maven), org.bouncycastle:bcprov-jdk15to18 (Maven), org.bouncycastle:bcprov-jdk18on (Maven), org.bouncycastle:bctls-jdk14 (Maven), org.bouncycastle:bctls-jdk15to18 (Maven), org.bouncycastle:bctls-jdk18on (Maven), BouncyCastle (NuGet), BouncyCastle.Cryptography (NuGet). Vendors: Maven, NuGet.

Quick answers

Is CVE-2024-29857 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2024-29857 being exploited in the wild.
How severe is CVE-2024-29857?
Low severity, with a CVSS score of 3.1, published 14 May 2024.
Which products and versions are affected?
org.bouncycastle:bc-fips (Maven) ECOSYSTEM:introduced=0,fixed=1.0.2.5; org.bouncycastle:bcprov-jdk14 (Maven) ECOSYSTEM:introduced=0,fixed=1.78; org.bouncycastle:bcprov-jdk15on (Maven) ECOSYSTEM:introduced=0,fixed=1.78; org.bouncycastle:bcprov-jdk15to18 (Maven) ECOSYSTEM:introduced=0,fixed=1.78; and 6 more.
Is there a fix for CVE-2024-29857?
Yes. org.bouncycastle:bc-fips (Maven): upgrade to 1.0.2.5 or later; org.bouncycastle:bcprov-jdk14 (Maven): upgrade to 1.78 or later; org.bouncycastle:bcprov-jdk15on (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-29857?
Check whether you run org.bouncycastle:bc-fips (Maven), org.bouncycastle:bcprov-jdk14 (Maven), org.bouncycastle:bcprov-jdk15on (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:bc-fips (Maven): upgrade to 1.0.2.5 or later
    # set org.bouncycastle:bc-fips to 1.0.2.5 in your pom.xml or build.gradle
  • org.bouncycastle:bcprov-jdk14 (Maven): upgrade to 1.78 or later
    # set org.bouncycastle:bcprov-jdk14 to 1.78 in your pom.xml or build.gradle
  • org.bouncycastle:bcprov-jdk15on (Maven): upgrade to 1.78 or later
    # set org.bouncycastle:bcprov-jdk15on to 1.78 in your pom.xml or build.gradle
  • org.bouncycastle:bcprov-jdk15to18 (Maven): upgrade to 1.78 or later
    # 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
    # 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
    # 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
    # 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
    # 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
    dotnet add package BouncyCastle.Cryptography --version 2.3.1

Affected products

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

Identifiers

  • CVE-2024-29857
  • GHSA-8xfc-gm6g-vgpv

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.