Botan Project Botan vulnerabilities
34 known vulnerabilities affecting botan_project/botan.
Total CVEs
34
CISA KEV
0
Public exploits
0
Exploited in wild
0
Severity breakdown
CRITICAL9HIGH14MEDIUM11
Vulnerabilities
Page 1 of 2
CVE-2026-32877HIGHCVSS 8.2≥ 2.3.0, < 3.11.02026-03-30
CVE-2026-32877 [HIGH] CWE-125 CVE-2026-32877: Botan is a C++ cryptography library. From version 2.3.0 to before version 3.11.0, during SM2 decrypt
Botan is a C++ cryptography library. From version 2.3.0 to before version 3.11.0, during SM2 decryption, the code that checked the authentication code value (C3) failed to check that the encoded value was of the expected length prior to comparison. An invalid ciphertext can cause a heap over-read of up to 31 bytes, resulting in a crash or potentially
nvd
CVE-2026-32884MEDIUMCVSS 5.9fixed in 3.11.02026-03-30
CVE-2026-32884 [MEDIUM] CWE-295 CVE-2026-32884: Botan is a C++ cryptography library. Prior to version 3.11.0, during processing of an X.509 certific
Botan is a C++ cryptography library. Prior to version 3.11.0, during processing of an X.509 certificate path using name constraints which restrict the set of allowable DNS names, if no subject alternative name is defined in the end-entity certificate Botan would check that the CN was allowed by the DNS name constraints, even though this check is tec
nvd
CVE-2026-32883MEDIUMCVSS 5.9≥ 3.0.0, < 3.11.02026-03-30
CVE-2026-32883 [MEDIUM] CWE-347 CVE-2026-32883: Botan is a C++ cryptography library. From version 3.0.0 to before version 3.11.0, during X509 path v
Botan is a C++ cryptography library. From version 3.0.0 to before version 3.11.0, during X509 path validation, OCSP responses were checked for an appropriate status code, but critically omitted verifying the signature of the OCSP response itself. This issue has been patched in version 3.11.0.
nvd
CVE-2024-50383MEDIUMCVSS 5.9fixed in 3.6.02024-10-23
CVE-2024-50383 [MEDIUM] CWE-203 CVE-2024-50383: Botan before 3.6.0, when certain GCC versions are used, has a compiler-induced secret-dependent oper
Botan before 3.6.0, when certain GCC versions are used, has a compiler-induced secret-dependent operation in lib/utils/donna128.h in donna128 (used in Chacha-Poly1305 and x25519). An addition can be skipped if a carry is not set. This was observed for GCC 11.3.0 with -O2 on MIPS, and GCC on x86-i386. (Only 32-bit processors can be affected.)
nvdosv
CVE-2024-50382MEDIUMCVSS 5.9fixed in 3.6.02024-10-23
CVE-2024-50382 [MEDIUM] CWE-203 CVE-2024-50382: Botan before 3.6.0, when certain LLVM versions are used, has compiler-induced secret-dependent contr
Botan before 3.6.0, when certain LLVM versions are used, has compiler-induced secret-dependent control flow in lib/utils/ghash/ghash.cpp in GHASH in AES-GCM. There is a branch instead of an XOR with carry. This was observed for Clang in LLVM 15 on RISC-V.
nvdosv
CVE-2024-39312MEDIUMCVSS 5.3fixed in 2.19.5≥ 3.0.0, < 3.5.02024-07-08
CVE-2024-39312 [MEDIUM] CWE-295 CVE-2024-39312: Botan is a C++ cryptography library. X.509 certificates can identify elliptic curves using either an
Botan is a C++ cryptography library. X.509 certificates can identify elliptic curves using either an object identifier or using explicit encoding of the parameters. A bug in the parsing of name constraint extensions in X.509 certificates meant that if the extension included both permitted subtrees and excluded subtrees, only the permitted subtree wo
nvdosv
CVE-2024-34702MEDIUMCVSS 5.3≥ 0, < 2.19.3+dfsg-1+deb12u1≥ 0, < 2.19.5+dfsg-12024-07-08
CVE-2024-34702 [MEDIUM] CVE-2024-34702: Botan is a C++ cryptography library
Botan is a C++ cryptography library. X.509 certificates can identify elliptic curves using either an object identifier or using explicit encoding of the parameters. Prior to 3.5.0 and 2.19.5, checking name constraints in X.509 certificates is quadratic in the number of names and name constraints. An attacker who presented a certificate chain which contained a very large number of names in the SubjectAlternativeName, sign
osv
CVE-2024-34703HIGHCVSS 7.5≥ 0, < 2.19.3+dfsg-1+deb12u1≥ 0, < 2.19.4+dfsg-12024-06-30
CVE-2024-34703 [HIGH] CVE-2024-34703: Botan is a C++ cryptography library
Botan is a C++ cryptography library. X.509 certificates can identify elliptic curves using either an object identifier or using explicit encoding of the parameters. Prior to versions 3.3.0 and 2.19.4, an attacker could present an ECDSA X.509 certificate using explicit encoding where the parameters are very large. The proof of concept used a 16Kbit prime for this purpose. When parsing, the parameter is checked to be prime,
osv
CVE-2017-7252HIGHCVSS 7.5≥ 1.11.0, < 2.1.02023-11-03
CVE-2017-7252 [HIGH] CWE-319 CVE-2017-7252: bcrypt password hashing in Botan before 2.1.0 does not correctly handle passwords with a length betw
bcrypt password hashing in Botan before 2.1.0 does not correctly handle passwords with a length between 57 and 72 characters, which makes it easier for attackers to determine the cleartext password.
nvd
CVE-2022-43705CRITICALCVSS 9.1≥ 1.11.34, < 2.19.32022-11-27
CVE-2022-43705 [CRITICAL] CWE-295 CVE-2022-43705: In Botan before 2.19.3, it is possible to forge OCSP responses due to a certificate verification err
In Botan before 2.19.3, it is possible to forge OCSP responses due to a certificate verification error. This issue was introduced in Botan 1.11.34 (November 2016).
nvdosv
CVE-2021-40529MEDIUMCVSS 5.9≤ 2.18.12021-09-06
CVE-2021-40529 [MEDIUM] CWE-327 CVE-2021-40529: The ElGamal implementation in Botan through 2.18.1, as used in Thunderbird and other products, allow
The ElGamal implementation in Botan through 2.18.1, as used in Thunderbird and other products, allows plaintext recovery because, during interaction between two cryptographic libraries, a certain dangerous combination of the prime defined by the receiver's public key, the generator defined by the receiver's public key, and the sender's ephemeral exp
nvdosv
CVE-2021-24115CRITICALCVSS 9.8fixed in 2.17.32021-02-22
CVE-2021-24115 [CRITICAL] CVE-2021-24115: In Botan before 2.17.3, constant-time computations are not used for certain decoding and encoding op
In Botan before 2.17.3, constant-time computations are not used for certain decoding and encoding operations (base32, base58, base64, and hex).
nvdosv
CVE-2018-20187MEDIUMCVSS 5.9fixed in 2.9.02019-03-08
CVE-2018-20187 [MEDIUM] CWE-320 CVE-2018-20187: A side-channel issue was discovered in Botan before 2.9.0. An attacker capable of precisely measurin
A side-channel issue was discovered in Botan before 2.9.0. An attacker capable of precisely measuring the time taken for ECC key generation may be able to derive information about the high bits of the secret key, as the function to derive the public point from the secret scalar uses an unblinded Montgomery ladder whose loop iteration count depends o
nvdosv
CVE-2018-12435MEDIUMCVSS 5.9≥ 2.5.0, ≤ 2.7.02018-06-15
CVE-2018-12435 [MEDIUM] CWE-200 CVE-2018-12435: Botan 2.5.0 through 2.6.0 before 2.7.0 allows a memory-cache side-channel attack on ECDSA signatures
Botan 2.5.0 through 2.6.0 before 2.7.0 allows a memory-cache side-channel attack on ECDSA signatures, aka the Return Of the Hidden Number Problem or ROHNP, related to dsa/dsa.cpp, ec_group/ec_group.cpp, and ecdsa/ecdsa.cpp. To discover an ECDSA key, the attacker needs access to either the local machine or a different virtual machine on the same phys
nvdosv
CVE-2018-9860HIGHCVSS 7.5≥ 1.11.32, < 2.6.02018-04-12
CVE-2018-9860 [HIGH] CWE-193 CVE-2018-9860: An issue was discovered in Botan 1.11.32 through 2.x before 2.6.0. An off-by-one error when processi
An issue was discovered in Botan 1.11.32 through 2.x before 2.6.0. An off-by-one error when processing malformed TLS-CBC ciphertext could cause the receiving side to include in the HMAC computation exactly 64K bytes of data following the record buffer, aka an over-read. The MAC comparison will subsequently fail and the connection will be closed. This co
nvdosv
CVE-2018-9127CRITICALCVSS 9.8≥ 2.2.0, ≤ 2.4.02018-04-02
CVE-2018-9127 [CRITICAL] CWE-295 CVE-2018-9127: Botan 2.2.0 - 2.4.0 (fixed in 2.5.0) improperly handled wildcard certificates and could accept certa
Botan 2.2.0 - 2.4.0 (fixed in 2.5.0) improperly handled wildcard certificates and could accept certain certificates as valid for hostnames when, under RFC 6125 rules, they should not match. This only affects certificates issued to the same domain as the host, so to impersonate a host one must already have a wildcard certificate matching other hosts
nvdosv
CVE-2017-14737MEDIUMCVSS 5.5≤ 1.10.16v1.11.0+34 more2017-09-26
CVE-2017-14737 [MEDIUM] CVE-2017-14737: A cryptographic cache-based side channel in the RSA implementation in Botan before 1.10.17, and 1.11
A cryptographic cache-based side channel in the RSA implementation in Botan before 1.10.17, and 1.11.x and 2.x before 2.3.0, allows a local attacker to recover information about RSA secret keys, as demonstrated by CacheD. This occurs because an array is indexed with bits derived from a secret key.
nvd
CVE-2017-2801CRITICALCVSS 9.8v2.0.12017-05-24
CVE-2017-2801 [CRITICAL] CWE-125 CVE-2017-2801: A programming error exists in a way Randombit Botan cryptographic library version 2.0.1 implements x
A programming error exists in a way Randombit Botan cryptographic library version 2.0.1 implements x500 string comparisons which could lead to certificate verification issues and abuse. A specially crafted X509 certificate would need to be delivered to the client or server application in order to trigger this vulnerability.
nvd
CVE-2016-6878CRITICALCVSS 9.8≤ 1.11.302017-04-10
CVE-2016-6878 [CRITICAL] CWE-20 CVE-2016-6878: The Curve25519 code in botan before 1.11.31, on systems without a native 128-bit integer type, might
The Curve25519 code in botan before 1.11.31, on systems without a native 128-bit integer type, might allow attackers to have unspecified impact via vectors related to undefined behavior, as demonstrated on 32-bit ARM systems compiled by Clang.
nvd
CVE-2015-7826CRITICALCVSS 9.8≤ 1.11.212017-04-10
CVE-2015-7826 [CRITICAL] CWE-295 CVE-2015-7826: botan 1.11.x before 1.11.22 improperly handles wildcard matching against hostnames, which might allo
botan 1.11.x before 1.11.22 improperly handles wildcard matching against hostnames, which might allow remote attackers to have unspecified impact via a valid X.509 certificate, as demonstrated by accepting *.example.com as a match for bar.foo.example.com.
nvd
1 / 2Next →