#VU49086 Comparison using wrong factors in The Bouncy Castle Crypto Package For Java


Published: 2020-12-23 | Updated: 2021-01-06

Vulnerability identifier: #VU49086

Vulnerability risk: High

CVSSv3.1: 7.3 [CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H/E:P/RL:O/RC:C]

CVE-ID: CVE-2020-28052

CWE-ID: CWE-1025

Exploitation vector: Network

Exploit availability: Yes

Vulnerable software:
The Bouncy Castle Crypto Package For Java
Universal components / Libraries / Libraries used by multiple products

Vendor: Legion of the Bouncy Castle Inc.

Description

The vulnerability allows a remote attacker to brute-force password hashes.

The vulnerability exists due to comparison error in OpenBSDBCrypt.checkPassword() function in core/src/main/java/org/bouncycastle/crypto/generators/OpenBSDBCrypt.java when matching passwords with hashes. A remote attacker can pass an incorrect password that will be accepted as a valid one by the library, bypass authentication process and gain unauthorized access to the application that uses vulnerable version of Bouncy Castle.

Mitigation
Install updates from vendor's website.

Vulnerable software versions

The Bouncy Castle Crypto Package For Java: 1.65 - 1.66


External links
http://github.com/bcgit/bc-java/wiki/CVE-2020-28052
http://www.bouncycastle.org/releasenotes.html
http://www.synopsys.com/blogs/software-security/cve-2020-28052-bouncy-castle/


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability. However, proof of concept for this vulnerability is available.


Latest bulletins with this vulnerability