CVE-2024-30171 — Vulnerability in BouncyCastle — CVE Details
Bouncy Castle affected by timing side-channel for RSA key exchange ("The Marvin Attack")
Summary
Advisory Timeline
- First published May 14, 2024 (881 days ago).
- Last revised September 10, 2026 — 849 days after initial publication.
Remediation
Upgrade to the fixed version using your package manager.
<!-- Update pom.xml dependency version to 1.78 for org.bouncycastle:bcprov-jdk18on -->
dotnet add package BouncyCastle.Cryptography --version 2.3.1
<!-- Update pom.xml dependency version to 1.78 for org.bouncycastle:bcprov-jdk14 -->
<!-- Update pom.xml dependency version to 1.0.19 for org.bouncycastle:bctls-fips -->
<!-- Update pom.xml dependency version to 1.78 for org.bouncycastle:bcprov-jdk15on -->
<!-- Update pom.xml dependency version to 1.78 for org.bouncycastle:bcprov-jdk15to18 -->
<!-- Update pom.xml dependency version to 1.78 for org.bouncycastle:bctls-jdk18on -->
<!-- Update pom.xml dependency version to 1.78 for org.bouncycastle:bctls-jdk14 -->
<!-- Update pom.xml dependency version to 1.78 for org.bouncycastle:bctls-jdk15to18 -->
After upgrading, run your dependency scanner again to confirm the vulnerability is resolved.
Affected Packages (10)
Affects 2 ecosystems: maven (8), nuget (2).
| Package | Ecosystem | Affected | Fixed In |
|---|---|---|---|
| BouncyCastle | nuget | 1.7.0, 1.8.1, 1.8.2, 1.8.3 (+6 more) | Range-based data available |
| org.bouncycastle:bcprov-jdk18on | maven | 1.71, 1.71.1, 1.72, 1.73 (+4 more) | 1.78 |
| BouncyCastle.Cryptography | nuget | 2.0.0, 2.1.0, 2.1.1, 2.2.0 (+2 more) | 2.3.1 |
| org.bouncycastle:bcprov-jdk14 | maven | 1.38, 1.43, 1.44, 1.45 (+30 more) | 1.78 |
| org.bouncycastle:bctls-fips | maven | 1.0.0, 1.0.1, 1.0.10, 1.0.10.1 (+25 more) | 1.0.19 |
| org.bouncycastle:bcprov-jdk15on | maven | 1.46, 1.47, 1.48, 1.49 (+22 more) | 1.78 |
| org.bouncycastle:bcprov-jdk15to18 | maven | 1.63, 1.64, 1.65, 1.66 (+11 more) | 1.78 |
| org.bouncycastle:bctls-jdk18on | maven | 1.71, 1.71.1, 1.72, 1.73 (+4 more) | 1.78 |
| org.bouncycastle:bctls-jdk14 | maven | 1.61, 1.62, 1.63, 1.64 (+12 more) | 1.78 |
| org.bouncycastle:bctls-jdk15to18 | maven | 1.63, 1.64, 1.65, 1.66 (+11 more) | 1.78 |
Vulnerability Classification
Common Weakness Enumeration (CWE) identifiers for this vulnerability type.
- CWE-203
CVSS Score Breakdown
What the CVSS (Common Vulnerability Scoring System) 5.9 score means for each attack dimension.
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
References
- https://nvd.nist.gov/vuln/detail/CVE-2024-30171ADVISORY
- https://github.com/bcgit/bc-csharp/commit/c984b8bfd8544dfc55dba91a02cbbbb9c580c217WEB
- https://github.com/bcgit/bc-java/commit/d7d5e735abd64bf0f413f54fd9e495fc02400fb0WEB
- https://github.com/bcgit/bc-java/commit/e0569dcb1dea9d421d84fc4c5c5688fe101afa2dWEB
- https://github.com/bcgit/bc-csharp/wiki/CVE%E2%80%902024%E2%80%9030171WEB
- https://github.com/bcgit/bc-java/wiki/CVE%E2%80%902024%E2%80%9030171WEB
- https://security.netapp.com/advisory/ntap-20240614-0008WEB
- https://www.bouncycastle.org/latest_releases.htmlWEB
Frequently Asked Questions
- What is CVE-2024-30171?
- Bouncy Castle affected by timing side-channel for RSA key exchange ("The Marvin Attack") This vulnerability has been assigned a severity rating of MEDIUM (CVSS score: 5.9/10).
- How do I check if my project is affected by CVE-2024-30171?
- CVE-2024-30171 affects BouncyCastle, org.bouncycastle:bcprov-jdk18on and BouncyCastle.Cryptography (and 7 more). Use GeekWala's free vulnerability scanner to check your dependencies against CVE-2024-30171 and 200,000+ other known vulnerabilities.
Severity & Exploitability
Exploitation requires specific conditions or has limited impact. Remediate within weeks.
Also Known As
Related CVEs
- CVE-2025-14813CRITICAL
Bouncy Castle for Java GOST 28147 CTR mode reuses keystream after 255 blocks
- CVE-2026-8763CRITICAL
Bouncy Castle: Name Constraints bypass via trailing dot in rfc822Name and URI
- CVE-2026-3505HIGH
Bouncy Castle Uncontrolled Resource Consumption vulnerability
- CVE-2026-5598HIGH
Bouncy Castle Has Covert Timing Channel Vulnerability
- CVE-2026-13506HIGH
Bouncy Castle: Lazy ASN.1 sequence forcing resets nesting-depth guard
- CVE-2026-106111MEDIUM
ImageSharp: EXR ZIP decoder can expose stale allocator data after a short inflate
- CVE-2024-29857MEDIUM
Bouncy Castle certificate parsing issues cause high CPU usage during parameter evaluation.
- CVE-2024-30172MEDIUM
Bouncy Castle crafted signature and public key can be used to trigger an infinite loop
Check if you're affected
Scan your dependencies to see if this vulnerability affects your projects.
Scan Your Dependencies