Crypt::OpenSSL::PKCS12 versions through 1.94 for Perl truncates passwords with embedded NULLs.
Password parameters in PKCS12.xs are declared char *, which routes through Perl's default typemap to SvPV_nolen. The Perl length is discarded.
The C code (or OpenSSL internally) calls strlen() on the buffer. Any password byte at or after the first NULL is silently dropped. Binary / KDF-derived / HMAC-derived passwords lose entropy without any warnings.
Metrics
Affected Vendors & Products
References
History
Mon, 18 May 2026 13:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
cvssV3_1
|
Mon, 18 May 2026 11:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Jonasbn
Jonasbn crypt::openssl::pkcs12 |
|
| Vendors & Products |
Jonasbn
Jonasbn crypt::openssl::pkcs12 |
Sun, 17 May 2026 22:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
Sun, 17 May 2026 19:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Crypt::OpenSSL::PKCS12 versions through 1.94 for Perl truncates passwords with embedded NULLs. Password parameters in PKCS12.xs are declared char *, which routes through Perl's default typemap to SvPV_nolen. The Perl length is discarded. The C code (or OpenSSL internally) calls strlen() on the buffer. Any password byte at or after the first NULL is silently dropped. Binary / KDF-derived / HMAC-derived passwords lose entropy without any warnings. | |
| Title | Crypt::OpenSSL::PKCS12 versions through 1.94 for Perl truncates passwords with embedded NULLs | |
| Weaknesses | CWE-170 | |
| References |
|
Status: PUBLISHED
Assigner: CPANSec
Published: 2026-05-17T18:51:41.420Z
Updated: 2026-05-18T12:56:41.486Z
Reserved: 2026-05-16T01:07:36.063Z
Link: CVE-2026-8721
Updated: 2026-05-18T12:56:37.865Z
Status : Deferred
Published: 2026-05-17T19:16:25.310
Modified: 2026-05-18T17:40:45.343
Link: CVE-2026-8721
No data.