Medium severity · published Oct 29, 2026
CVE-2026-118767
Botan: Python binding bcrypt APIs truncate passwords containing embedded NULs
New
4.8
CVSS
–
EPSS
No
On KEV
Description
Botan is a C++ cryptography library. From 1.11.22 until 3.13.0, Botan's Python binding converted Python strings containing U+0000 to const char* values without consistently rejecting the embedded NUL, causing bcrypt and check_bcrypt to process only the prefix before the NUL. Applications could validate a longer password but hash a shorter effective value, allowing application password-policy bypass; scrypt and argon2 are unaffected. This issue is fixed in version 3.13.0.
CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:N
Attack vector
Network
Complexity
High
Privileges
None
User interaction
None
Confidentiality
Low
Integrity
Low
Availability
None
Scope
Unchanged
Exploitation
Is it being used?
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
BO
botan · randombit
>= 1.11.22, < 3.13.0 · source: vendor
Affected product
BO
botan
randombit
More from botan
9.2
CVE-2026-118769
Botan: Integer overflow when reporting block size in FFI can cause memory corruption
9.1
CVE-2026-34582
Botan has a TLS 1.3 certificate authentication bypass
8.2
CVE-2026-32877
Botan: Heap Buffer Over-read in SM2 Decryption via Undersized C3 Hash Field
7.5
CVE-2026-44378
Botan: Quadratic complexity decoding BER indefinite length encodings
7.5
CVE-2026-34580
Botan has a certificate authentication bypass due to trust anchor confusion