Description
Issue Summary: The PKCS#12 file processing fails to perform sufficient input validation for files that use Password-Based Message Authentication Code 1 (PBMAC1) integrity mechanism allowing a certificate and private key forgery. Impact Summary: An attacker impersonating a user can cause a service reading PKCS#12 files to accept forged certificates and private keys with a 1 in 256 probability. If a service accepting PKCS#12 files is using passwords for authenticating the received files, the attacker can create unencrypted PKCS#12 files that use PBMAC1 authentication that specifies an HMAC key of only one byte, allowing them to craft a file that will be accepted with a 1 in 256 probability. That would then cause the service to accept a certificate and private key controlled by the attacker. The FIPS modules are not affected by this issue, as the affected code is outside the OpenSSL FIPS module boundary.
Problem types
CWE-354 Improper Validation of Integrity Check Value
Product status
4.0.0 (semver) before 4.0.1
3.6.0 (semver) before 3.6.3
3.5.0 (semver) before 3.5.7
3.4.0 (semver) before 3.4.6
Credits
Pavol Žáčik (Red Hat)
Alex Gaynor (Anthropic)
Alicja Kario (Red Hat)
References
openssl-library.org/news/secadv/20260609.txt (OpenSSL Advisory)
github.com/...ommit/0300eb9ddce7a0895bf301a4b0c03a9da2313a0f (4.0.1 git commit)
github.com/...ommit/ec36f2417c4ddd8cabce4b4a60a3d7a7365f2d81 (3.6.3 git commit)
github.com/...ommit/85dcbb3abaa4878af5c8fbbe11bce708fcf984a7 (3.5.7 git commit)
github.com/...ommit/79eb76a937e474bb7610a0a3dc57131dc8dc6610 (3.4.6 git commit)