GHSA-mh3j-xwf4-jrqw on CTRL-OS 26.05
Aliases: GHSA-mh3j-xwf4-jrqw, CVE-2026-15392
Packages: perlPackages.DBI
Status: Plausible
Advisory Information
DBD::File's f_dir containment — previously assigned CVE-2014-10401 and then CVE-2014-10402 (which NVD records as an incomplete fix of the former) — is still bypassable. After the path-normalisation fix shipped in DBI 1.648,complete_table_namevalidates the table directory but then builds the table path asFile::Spec->catfile($searchdir, $file)(File.pm:674) andopen_dataopens it with a plainIO::File->new(File.pm:703), which follows symlinks. A symlink planted as the final table file (or a DBM side-file) insidef_diris therefore followed out of the configured directory (CWE-59 link following; residual CWE-22 containment gap). Same shape atFile.pm:688-718on currentmaster(1.649).Trigger: an attacker who can create a symlink inside the configured
f_dir— a shared, upload-, or sync-writable table directory. Withf_dirpointing at that directory,SELECT * FROM victimfollowsvictim.pag/victim.dirsymlinks to an outside target.Impact is read and write outside
f_dirwith the DBI process's privileges: the PoC reads an outsideSECRETand mutates the outside DBM through the planted side-file links (INSERT/UPDATE/DELETE/CREATE TABLE all follow). Narrower than the old../traversal (a symlink-create primitive is required), hence low severity.Fix direction: extend the containment the 1.648 fix started — resolve the real path of the final table file and DBM side-files and reject any that escape
f_dir, and/or open final files withO_NOFOLLOW(or refuse symlinked table files). This spans DBD::File and the DBM tie and needs the maintainer's judgement on TOCTOU.
Updates
2026-07-14 17:14 CEST
Metadata changes:
- Status for package
perlPackages.DBI: “Plausible”
(Amended on: 2026-07-14 17:15 CEST)
2026-07-14 16:16 CEST
Metadata changes:
- Status for package
perlPackages.DBI: “New”