pgAdmin 4: Symbolic-link path traversal in File Manager allows arbitrary file write (pgadmin.org pgAdmin 4)

CVE-2026-7819
HIGH 7.2

At a glance

Source
NVD
EPSS
EPSS 0.33 % · percentile 26 ()
State
PUBLISHED
Published
Updated
Assigner
PostgreSQL
NVD status
Analyzed

Description

Symbolic-link path traversal (CWE-61, CWE-22) in pgAdmin 4 File Manager. check_access_permission used os.path.abspath, which resolves '..' but does not resolve symbolic links, while the subsequent kernel write follows symlinks. An authenticated user could plant a symbolic link inside their own storage directory pointing outside it and induce pgAdmin to write to any path reachable by the pgAdmin process. Fix switches the access check to os.path.realpath for both source and destination, and adds an _open_upload_target helper that opens the target with O_NOFOLLOW (mode 0o600) to close the leaf-component TOCTOU between the access check and the open. File mode is hardened from 0o644 to 0o600. This issue affects pgAdmin 4: before 9.15.

Weaknesses (CWE)

  • CWE-61 — UNIX Symbolic Link (Symlink) Following

References

Scores

VersionScoreVectorScored by
CVSS 3.1HIGH 8.1CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:HPostgreSQL
CVSS 4.0HIGH 7.2CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:NPostgreSQL
CVSS 4.0HIGH 7.2CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:XNVD · f86ef6dc-4d3a-42ad-8f28-e6d5547a5007 (Secondary)
CVSS 3.1HIGH 8.1CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:HNVD · f86ef6dc-4d3a-42ad-8f28-e6d5547a5007 (Secondary)

Advisories

European references

Affected configurations (NVD CPE)

Affected products

ProductVersions
pgadmin.org · pgAdmin 4affected 0 < 9.15

Sources

SourceLicence
CVE List (CVEProject cvelistV5)CVE Program Terms of Use
EPSS (FIRST.org)FIRST — attribution requested
ENISA EUVDENISA — reproduction authorised, source acknowledged
NVD (NIST) via fkie-cad/nvd-json-data-feedsPublic domain — this product uses data from the NVD API but is not endorsed or certified by the NVD