CVE-2026-64615
Received Received - Intake

Information Disclosure in Data::Graph::Shared Perl Module

Vulnerability report for CVE-2026-64615, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-07-21

Last updated on: 2026-07-21

Assigner: CPANSec

Description

Data::Graph::Shared versions before 0.04 for Perl create a world-readable mmap backing file and open it without O_EXCL or O_NOFOLLOW. The segment is created in graph.h with open(path, O_RDWR|O_CREAT, 0666). The mode is 0666, so under the default umask 022 the file is created mode 0644 (world-readable). O_NOFOLLOW is absent, so a symlink planted at the path is followed, and O_EXCL is absent, so the open silently uses a pre-planted file instead of failing. A "Shared" segment naturally lives in a shared directory such as /tmp or /dev/shm, where any local user can read the IPC payloads stored in the world-readable segment, and a pre-planted file or symlink at the path lets a local attacker win a pre-creation race or redirect the open.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-07-21
Last Modified
2026-07-21
Generated
2026-07-22
AI Q&A
2026-07-21
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Currently, no data is known.

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-732 The product specifies permissions for a security-critical resource in a way that allows that resource to be read or modified by unintended actors.
CWE-59 The product attempts to access a file based on the filename, but it does not properly prevent that filename from identifying a link or shortcut that resolves to an unintended resource.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This vulnerability affects the Perl module Data::Graph::Shared versions before 0.04. It creates a world-readable memory-mapped file without proper protections. The file is created with mode 0666, which under default settings becomes 0644 (world-readable). The code lacks O_NOFOLLOW and O_EXCL flags, allowing attackers to exploit symlinks or pre-planted files to access sensitive IPC payloads in shared directories like /tmp or /dev/shm.

Detection Guidance

Check for world-readable files in shared directories like /tmp or /dev/shm with names matching Data::Graph::Shared patterns. Look for files with mode 0644 and no O_NOFOLLOW or O_EXCL flags in their creation. Use commands like 'find /tmp -type f -perm 0644' to locate suspicious files.

Impact Analysis

Local attackers could read sensitive data stored in the shared memory segment. They might win a race condition to replace the intended file with a malicious symlink or pre-existing file, redirecting the application to use unintended data. This could lead to information disclosure or unauthorized access to IPC payloads.

Compliance Impact

This vulnerability could violate compliance requirements for data protection such as GDPR or HIPAA by exposing sensitive data to unauthorized local users. Unauthorized access to shared memory segments may result in data breaches, leading to potential legal penalties and reputational damage for organizations handling regulated data.

Mitigation Strategies

Update Data::Graph::Shared to version 0.04 or later. Remove any existing world-readable files in shared directories. Ensure applications use O_EXCL and O_NOFOLLOW flags when creating files. Restrict write permissions to trusted users only.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-64615. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart