org.bouncycastle:bcprov-jdk14@1.38 vulnerabilities

  • latest version

    1.78.1

  • latest non vulnerable version

  • first published

    15 years ago

  • latest version published

    7 months ago

  • licenses detected

  • package manager

Direct Vulnerabilities

Known vulnerabilities in the org.bouncycastle:bcprov-jdk14 package. This does not include vulnerabilities belonging to this package’s dependencies.

Automatically find and fix vulnerabilities affecting your projects. Snyk scans for vulnerabilities and provides fixes for free.
Fix for free
Vulnerability Vulnerable Version
  • M
Uncontrolled Resource Consumption ('Resource Exhaustion')

org.bouncycastle:bcprov-jdk14 is a Java implementation of cryptographic algorithms.

Affected versions of this package are vulnerable to Uncontrolled Resource Consumption ('Resource Exhaustion') within the org.bouncycastle.openssl.PEMParser class. Parsing a file that has crafted ASN.1 data through the PEMParser causes an OutOfMemoryError.

How to fix Uncontrolled Resource Consumption ('Resource Exhaustion')?

Upgrade org.bouncycastle:bcprov-jdk14 to version 1.73 or higher.

[,1.73)
  • M
Information Exposure

org.bouncycastle:bcprov-jdk14 is a Java implementation of cryptographic algorithms.

Affected versions of this package are vulnerable to Information Exposure due to missing validation for the X.500 name of any certificate, subject, or issuer. The presence of a wild card may lead to information disclosure. This could allow a malicious user to obtain unauthorized information via blind LDAP Injection, exploring the environment and enumerating data.

Note:

The exploit depends on the structure of the target LDAP directory as well as what kind of errors are exposed to the user.

How to fix Information Exposure?

Upgrade org.bouncycastle:bcprov-jdk14 to version 1.74 or higher.

[,1.74)
  • H
Information Exposure

org.bouncycastle:bcprov-jdk14 is a Java implementation of cryptographic algorithms.

Affected versions of this package are vulnerable to Information Exposure. Attackers can obtain sensitive information about a private exponent because of Observable Differences in Behavior to Error Inputs. This occurs in org.bouncycastle.crypto.encodings.OAEPEncoding. Sending invalid ciphertext that decrypts to a short payload in the OAEP Decoder could result in the throwing of an early exception, potentially leaking some information about the private exponent of the RSA private key performing the encryption.

How to fix Information Exposure?

Upgrade org.bouncycastle:bcprov-jdk14 to version 1.61 or higher.

[,1.61)
  • C
Hash Collision

org.bouncycastle:bcprov-jdk14 is a Java implementation of cryptographic algorithms.

Affected versions of this package are vulnerable to Hash Collision. Hash Collision is possible within BKS due to an error in the BKS version 1 keystore files.

BKS is a keystore format, designed to function similarly to a Sun/Oracle JKS keystore. BKS files can contain public keys, private keys and certificates, and they rely on a password-based encryption to provide confidentiality and integrity protections to the keystore contents.

The first version of a BKS file (aka BKS-V1) contained a design flaw when determining the key size used to protect the keystore data. It used the SHA-1 hash function, which is 160 bits in length. In a RFC7292-compliant cryptographic algorithm, the MAC key size should be the same size as the hash function being used, meaning that the MAC key size should be 160 bits long for BKS files.

However, Bouncy Castle BKS-V1 files uses only 16 bits for the MAC key size. Regardless of the complexity of the password, ghe BKS-V1 file will have merely 65,536 different encryption keys. An attacker may bruteforce this password in a matter of seconds by testing all 65K values.

How to fix Hash Collision?

Upgrade org.bouncycastle:bcprov-jdk14 to version 1.47 or higher.

[,1.47)
  • M
Cryptographic Issues

org.bouncycastle:bcprov-jdk14 is a Java implementation of cryptographic algorithms.

Affected versions of this package are vulnerable to Cryptographic Issues as it does not validate a point is within the elliptic curve, which makes it easier for remote attackers to obtain private keys via a series of crafted elliptic curve Diffie Hellman (ECDH) key exchanges, aka an "invalid curve attack".

How to fix Cryptographic Issues?

Upgrade org.bouncycastle:bcprov-jdk14 to version 1.51 or higher.

[,1.51)
  • M
Cryptographic Issues

org.bouncycastle:bcprov-jdk14 is a Java implementation of cryptographic algorithms.

Affected versions of this package are vulnerable to Cryptographic Issues. The TLS implementation does not properly consider timing side-channel attacks on a noncompliant MAC check operation during the processing of malformed CBC padding, which allows remote attackers to conduct distinguishing attacks and plaintext-recovery attacks via statistical analysis of timing data for crafted packets, a related issue to CVE-2013-0169.

How to fix Cryptographic Issues?

Upgrade org.bouncycastle:bcprov-jdk14 to version 1.48 or higher.

[,1.48)