Skip to main content

DBD::File CVE-2026-15392

| EUVDEUVD-2026-43727 HIGH
Path Traversal (CWE-22)
2026-07-14 CPANSec
7.7
CVSS 3.1 · Vendor: CPANSec
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain write access to f_dir data directory
  2. Delivery
    Plant symlink named as a table pointing outside f_dir
  3. Exploit
    Trigger driver query via file-based DBD
  4. Execution
    complete_table_name follows unvalidated symlink
  5. Impact
    Read or write file outside data directory

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V5 - File Handling Path canonicalization, traversal prevention
MITRE ATT&CK

2 techniques across 2 tactics: Discovery, Collection

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires the use of a file-based DBI driver built on DBD::File (e.g. DBD::CSV/DBD::DBM) and the attacker's ability to place a symbolic link inside the configured f_dir/f_dir_search data directory, or to control the table name an application passes to such a driver. The malicious symlink must target a file the Perl process can otherwise access, and reads/writes execute with the privileges of that process. Limiting factors: the CVSS vector is AV:L (local, not network-reachable), so the attacker needs local filesystem write access to the data directory or an application path that forwards untrusted table names; deployments that never expose file-based drivers to untrusted input, or that keep f_dir writable only by trusted accounts, are not practically exploitable.

Impact

The supplied CVSS 3.1 vector (AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N, 7.7 High) reflects local access with high confidentiality and integrity impact and no availability impact, which matches a data-directory sandbox escape. However, PR:N is questionable: real exploitation requires either the ability to plant a symbolic link inside the data directory or an application that feeds attacker-controlled table names to a file-based driver, both of which typically imply some prior local access - so the effective privilege requirement is likely PR:L rather than PR:N. No EPSS score, KEV entry, or SSVC decision data was provided, so exploitation-probability signals are absent; the reporter is CPANSec and the issue is a defense-in-depth hardening of a library boundary rather than a remotely reachable service flaw. Net real-world priority is moderate: genuine impact where untrusted input reaches DBD::File table resolution or where an attacker already has write access to f_dir, but not an internet-facing mass-exploitation candidate.

Exploit ScenarioDerived

An attacker who can write into a DBD::File data directory (or influence the table name a file-driver application opens) plants a symbolic link named like a table that points to a sensitive file such as /etc/passwd or an application config outside f_dir. When the application performs a SELECT or INSERT against that 'table,' DBD::File follows the link and reads or overwrites the external file with the process's privileges. No public proof-of-concept is identified at time of analysis, and the local attack vector with low complexity means the main gating factor is obtaining the initial directory write or table-name influence.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jul 15, 2026

Arbitrary file read/write in Perl's DBD::File before 1.651 lets callers of file-based DBI drivers escape the configured data directory via a symbolic link placed inside it. Because the complete_table_name method resolved the absolute table-file path without validating whether the entry was a symlink, a link within f_dir could point to any path on the filesystem, breaking the directory sandbox for both reads and writes. No public exploit has been identified at time of analysis, and the flaw is not in CISA KEV; a vendor patch (DBI 1.651) is available.

RemediationAI

Vendor-released patch: upgrade DBI/DBD::File to version 1.651 or later, which adds an explicit symlink check in complete_table_name (commit 96d62dfe4528bf56fe13f413ed323d4252531728); this is the primary fix and is documented in advisory GHSA-mh3j-xwf4-jrqw and the release notes at https://metacpan.org/release/HMBRAND/DBI-1.651/changes. Where immediate upgrade is not possible, restrict who can write into the configured f_dir and f_dir_search directories so untrusted users cannot plant symbolic links (trade-off: does not help if table names themselves are attacker-controlled), and validate or whitelist any user-supplied table names before passing them to file-based drivers (trade-off: application-specific and may reject legitimate names). Additionally, mount or place data directories on a filesystem/context where symlink creation by the service account is denied, and run the Perl process under a low-privilege account to limit what an escaped read/write can reach. See also the oss-security disclosure at https://seclists.org/oss-sec/2026/q3/145.

Affected VersionsENISA

DBD::File 0 <1.651

Affected Packages

euvd dbd_file fix: 1.651

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

DBD::File is the base driver in the Perl DBI ecosystem that underpins file-backed database drivers such as DBD::CSV, DBD::DBM, and DBD::Sys, mapping SQL-style 'tables' onto individual files inside directories named by the f_dir and f_dir_search meta settings. The vulnerability is a classic CWE-22 path traversal: the complete_table_name routine in lib/DBD/File.pm computed the fully-qualified filename (fqfn) for a table and confirmed it lived under an approved base directory, but never called lstat/-l to detect that the on-disk entry was a symbolic link. As shown in patch commit 96d62dfe, the fix adds an '-l $fqfn' check that resolves the link target with Cwd::abs_path and croaks unless the real path still begins with one of the abs_path'd f_dir/f_dir_search bases, closing the symlink-following gap.

Know when Dbd gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (CPANSec) PRIMARY 7.7 HIGH
AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
vuln.today AI 7.1 HIGH

Local vector requiring symlink placement in the data directory or control of table names implies PR:L; high confidentiality and integrity from arbitrary file read/write, no availability impact.

3.1 AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
4.0 AV:L/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
SUSE 7.1 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N
Red Hat 6.3 MEDIUM

Primary rating from Vendor (CPANSec).

CVSS VectorVendor: CPANSec

Attack Vector
Local
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
None

Lifecycle Timeline

3
CVSS changed
Jul 15, 2026 - 14:22 NVD
7.7 (HIGH)
CVE Published
Jul 14, 2026 - 15:34 cve.org
UNKNOWN (no severity yet)
CVE Published
Jul 14, 2026 - 15:34 cve.org
HIGH 7.7

DescriptionCVE.org

DBD::File versions before 1.651 for Perl do not ensure the table file is not a symlink to an untrusted location.

The complete_table_name method builds the absolute table file path without checking whether the file is a symbolic link. A link inside the data directory can point to a table file at any path outside of the configured f_dir and f_dir_search directories.

Callers of file-based drivers can read or write files outside of the data directory.

Executive ViewAI

Why It Matters

Perl's DBD::File database driver contains a symlink-based directory escape vulnerability (CVSS 7.7) that enables attackers to read or write files anywhere on affected systems, bypassing intended data directory restrictions. This directly threatens data confidentiality and integrity for applications using Perl's database interface. Immediate patching is essential to prevent unauthorized access to sensitive files or system compromise.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 89% exploitable
Prevalence
Medium
base of file-based Perl DBI drivers; common in Perl stacks, not universal
Data Quality
8 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment MSRC Vendor GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Small
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
openSUSE Tumbleweed Fixed
SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS Affected
SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS Affected
SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS Affected
SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS Affected

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy