CVE-2018-5382

NameCVE-2018-5382
DescriptionThe 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.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
bouncycastle (PTS)jessie, jessie (lts)1.49+dfsg-3+deb8u3fixed
stretch (security)1.56-1+deb9u3fixed
stretch (lts), stretch1.56-1+deb9u4fixed
buster1.60-1fixed
buster (security)1.60-1+deb10u1fixed
bullseye1.68-2fixed
bookworm1.72-2fixed
sid, trixie1.77-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
bouncycastlesource(unstable)1.48+dfsg-2

Notes

[wheezy] - bouncycastle <ignored> (this only affects the integrity verification and not the content of the BKS keystore)
https://insights.sei.cmu.edu/cert/2018/03/the-curious-case-of-the-bouncy-castle-bks-passwords.html
https://www.kb.cert.org/vuls/id/306792
Issue fixed in 1.47 upstream. The default MAC for a BKS key store was
2 bytes before and has been upgraded to 20 bytes.

Search for package or bug name: Reporting problems