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.
History

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

cve-icon MITRE

Status: PUBLISHED

Assigner: CPANSec

Published:

Updated: 2026-05-17T21:18:34.820Z

Reserved: 2026-05-16T01:07:36.063Z

Link: CVE-2026-8721

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-05-17T19:16:25.310

Modified: 2026-05-17T22:16:21.370

Link: CVE-2026-8721

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-05-17T21:00:06Z