CVE-2018-1000613 Deserialization of Untrusted Data in Bouncy castle
Deserializing a crafted XMSS private key in Bouncy Castle allows arbitrary code execution via unsafe reflection.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2018-1000613?
CVE-2018-1000613 is a critical unsafe deserialization vulnerability in Bouncycastle Bc-Java, published on 9 Jul 2018. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Legion of the Bouncy Castle Legion of the Bouncy Castle Java Cryptography APIs 1.58 up to but not including 1.60 contains a CWE-470: Use of Externally-Controlled Input to Select Classes or Code ('Unsafe Reflection') vulnerability in XMSS/XMSS^MT private key deserialization that can result in Deserializing an XMSS/XMSS^MT private key can result in the execution of unexpected code. This attack appear to be exploitable via A handcrafted private key can include references to unexpected classes which will be picked up from the class path for the executing application. This vulnerability appears to have been fixed in 1.60 and later.
Weakness: CWE-470
Which versions are affected by CVE-2018-1000613?
2 open source packages ship an affected version, including org.bouncycastle:bcprov-jdk15on. It affects 24 products.
| Package | Affected | Fixed in |
|---|---|---|
org.bouncycastle:bcprov-jdk15on Maven | From 1.57 | 1.60 |
org.bouncycastle:bcprov-jdk15on Maven | From 1.57 | 1.60 |
Products include Bouncycastle Bc-Java, Netapp Oncommand Workflow Automation, Opensuse Leap, Oracle Api Gateway, Oracle Banking Platform, Oracle Business Process Management Suite and 18 more.
How do I fix CVE-2018-1000613?
Upgrade org.bouncycastle:bcprov-jdk15on to 1.60 or later.
Upgrade, and only deserialise data from trusted sources or with an allow-list of types. More about Unsafe deserialization.
Is CVE-2018-1000613 being exploited?
There is no known exploitation of CVE-2018-1000613 in the wild and no public exploit code.
Other vulnerabilities in Bouncycastle Bc-Java
- CVE-2007-6721 Legion of the Bouncy Castle Java Cryptography API Bleichenbacher Oracle Vulnerability
- CVE-2026-58062 Stapled OCSP response accepted without binding to the checked certificate
- CVE-2026-59638 JSSE hostname verifier CN-fallback enabled by default despite documented opt-in
- CVE-2026-59650 MTI/A0 DH agreement exponentiates unvalidated peer value
- CVE-2026-8763 Name Constraints bypass via trailing dot in rfc822Name and URI
Sources
Also known as DEBIAN-CVE-2018-1000613, GHSA-4446-656p-f54g, ROOT-APP-MAVEN-CVE-2018-1000613, UBUNTU-CVE-2018-1000613.