Impact
The vulnerability arises from an out‑of‑bounds read in the si_idx_find routine of Data::Intern::Shared. Because the function uses slot identifiers, reverse offsets, and arena indices without validating them against the record counters, an attacker can supply crafted values that cause the routine to dereference memory beyond the end of the mapped segment. When the string() accessor reads the length‑prefixed arena record, it copies a file‑controlled length of bytes into the caller’s buffer, potentially exposing arbitrary adjacent memory. This flaw falls under information disclosure and is classified as CWE-125.
Affected Systems
Affects Perl modules distributed by EGOR under the Data::Intern::Shared package. All releases prior to version 0.02 are vulnerable. Specifically, any installation that includes Data::Intern::Shared 0.01 or earlier and uses the shared backing file mechanism in a Perl environment is impacted. No other vendors or product lines are affected according to the CNA data.
Risk and Exploitability
The flaw carries a CVSS v3.1 score of 9.1, indicating critical impact, but the EPSS score is under 1%, signifying low historical exploitation probability. The vulnerability is not listed in CISA’s KEV catalog. Exploitation requires a process that can write to the module’s backing file; an attacker with local write access can corrupt the slot ID, reverse offset or arena length prefix while keeping the header valid. This local attack vector could read sensitive data from adjacent memory, including credentials or other confidential information. An exploit is feasible in environments where the backing file is stored in a world‑writable location or where the attacker can impersonate the owning user.
OpenCVE Enrichment