# CVE-2026-9265: Crypt::OpenSSL::PKCS12 heap out-of-bounds read in print_attribute

Source: https://junglewise.ai/threats/cve-2026-9265-crypt-openssl-pkcs12-heap-out-of-bounds-read-in-print-attribute  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-06-20. Updated: 2026-06-21  
License: CC BY 4.0 with a link back

CVE-2026-9265 · Severity: info · CVSS 0 · Published 2026-06-20

Crypt::OpenSSL::PKCS12 is a Perl library used to process PKCS#12 files, which typically store digital certificates and private keys. A security flaw in how the library handles certain text attributes allows a specially crafted file to trigger an out-of-bounds memory read. This could allow an attacker to potentially access sensitive information from the application's memory or cause the application to crash.

## Quick answers

**Is CVE-2026-9265 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-9265 being exploited in the wild.

**How severe is CVE-2026-9265?** Informational severity, with a CVSS score of 0, published 20 June 2026.

**Which products and versions are affected?** JONASBN Crypt::OpenSSL::PKCS12 < 1.96.

**Is there a fix for CVE-2026-9265?** A patch was published on 2026-06-19: Fixed in version 1.96 Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-9265 attacked?** It is attacked over the network, in a software library.

**Am I affected by CVE-2026-9265?** Check whether anything you run is named in the advisory. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

## Technical details

A heap out-of-bounds read exists in the print_attribute() function within PKCS12.xs. The vulnerability occurs because UTF8STRING ASN.1 attribute values are copied into a heap buffer using strncpy() without ensuring a NUL terminator is present. Subsequent calls to strlen() on this non-terminated buffer result in an inflated length, causing newSVpvn() to copy adjacent heap memory into a Perl scalar. This can be triggered via the info() or info_as_hash() methods when processing a malformed PKCS12 file. The issue was fixed in version 1.96 by ensuring proper NUL termination and adding length guards.

## Affected products

- JONASBN Crypt::OpenSSL::PKCS12 < 1.96

## Timeline

- 2026-05-17: disclosed: Issue reported on GitHub
- 2026-06-19: patched: Fixed in version 1.96
- 2026-06-20: advisory: NVD publication date

## References

- [https://cpan.org/modules](https://cpan.org/modules)
- [https://github.com/dsully/perl-crypt-openssl-pkcs12/commit/a7bd2f319fa8aab8177b3d767ea06dd85ceb3173.patch](https://github.com/dsully/perl-crypt-openssl-pkcs12/commit/a7bd2f319fa8aab8177b3d767ea06dd85ceb3173.patch)
- [https://github.com/dsully/perl-crypt-openssl-pkcs12/issues/55](https://github.com/dsully/perl-crypt-openssl-pkcs12/issues/55)
- [https://metacpan.org/release/JONASBN/Crypt-OpenSSL-PKCS12-1.96/source/Changes.md](https://metacpan.org/release/JONASBN/Crypt-OpenSSL-PKCS12-1.96/source/Changes.md)
