CVE Catalog

CVE-2026-118767

MediumCVSS 4.8
Published: Translated: NVD NIST

Summary

In the Botan library, the 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. The issue is fixed in version 3.13.0.

Risk Assessment

An attacker could bypass the application's password policy by supplying a password with an embedded NUL character. This may weaken authentication mechanisms based on bcrypt in the Python binding.

Recommendation

Update Botan to version 3.13.0 or later. Review applications using bcrypt via the Python binding for NUL character validation in passwords.

Other vulnerabilities in Botan

See all
Original NVD description (English source)

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.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS