Skip to main content
← All vulnerabilities
CVE-2018-5382GHSA-8477-3V39-GGPM

Bouncy Castle BKS-V1 keystore files vulnerable to trivial hash collisions

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 1.47, 1.50
None on Exploit-DB, Metasploit or GitHub

Summary

The default BKS keystore use an HMAC that is only 16 bits long, which can allow an attacker to compromise the integrity of a BKS keystore. Bouncy Castle release 1.47 changes the BKS format to a format which uses a 160 bit HMAC instead. This applies to any BKS keystore generated prior to BC 1.47. For situations where people need to create the files for legacy reasons a specific keystore type "BKS-V1" was introduced in 1.49. It should be noted that the use of "BKS-V1" is discouraged by the library authors and should only be used where it is otherwise safe to do so, as in where the use of a 16 bit checksum for the file integrity check is not going to cause a security issue in itself.

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • Legion of the Bouncy Castle Bouncy Castle

    fixed in 1.47

  • org.bouncycastle:bcprov-jdk15onMaven

    fixed in 1.50

References 5

securityfocus.com

access.redhat.com

kb.cert.org

bouncycastle.org

oracle.com