{"id":"CVE-2026-116243","kind":"vulnerability","aliases":["CVE-2026-116243"],"related":[],"title":"pgAdmin 4: uploaded files can be run as the server's OS account","description":"pgAdmin 4 runs pg_dump, pg_restore, pg_dumpall and psql from the binary path a user sets in their preferences. In server mode the binary path was refused only when it lay under the per-user storage directory (STORAGE_DIR), not under a SHARED_STORAGE directory, which ordinary users can upload files to. A user could therefore upload an executable to shared storage, point their binary path at it, and have pgAdmin run it as the operating-system account running pgAdmin. On POSIX, files created through pgAdmin are not executable, so this is exploitable where any file with an executable name can run, such as Windows server mode.\n\nThe fix checks the binary path against every SHARED_STORAGE directory as well, after expanding $DIR, collapsing \"..\" and resolving symbolic links, compares directories in a way a different spelling on a case-insensitive filesystem cannot bypass, refuses a path containing a NUL, and enforces the check wherever binary paths are resolved, including for the PSQL tool.\n\nThis issue affects pgAdmin 4: before 9.19.","summary":"pgAdmin 4 runs pg_dump, pg_restore, pg_dumpall and psql from a binary path the user sets in preferences. In server mode, that path was only refused under per-user storage, not under SHARED_STORAGE, so a user could upload an executable there and have pgAdmin run it as the operating-system account.","severity":"high","cvss":7.7,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["other","pgadmin","server-mode","windows"],"not_affected_if":["no-shared-storage"],"how_to_check":"- Check the pgAdmin 4 version; releases before `9.19` are affected.\n- In server mode, look for a SHARED_STORAGE setting in the pgAdmin configuration; the flaw applies where users can upload files to shared storage.\n- Check whether users can set the binary path for pg_dump, pg_restore, pg_dumpall or psql in their preferences.","fix":"- Upgrade pgAdmin 4 to `9.19` or later.","status":"open","published_at":"2026-10-30T20:17:04+00:00","first_seen_at":"2026-10-30T20:25:37+00:00","triaged_at":"2026-10-30T20:26:37+00:00","updated_at":"2026-10-30T20:26:37+00:00","category":"other","confidence":0.8,"triage":{"at":"2026-10-30T20:26:37Z","model":"claude-haiku-5-5","output":{"fix":"- Upgrade pgAdmin 4 to `9.19` or later.","reach":"network","title":"pgAdmin 4: uploaded files can be run as the server's OS account","impact":"high","summary":"pgAdmin 4 runs pg_dump, pg_restore, pg_dumpall and psql from a binary path the user sets in preferences. In server mode, that path was only refused under per-user storage, not under SHARED_STORAGE, so a user could upload an executable there and have pgAdmin run it as the operating-system account.","audience":"businesses","category":"other","nicknames":[],"who_cares":["pgadmin","server-mode","windows"],"confidence":0.8,"fix_status":"available","needs_auth":"yes","worst_case":"Attacker runs arbitrary code as the pgAdmin operating-system account.","analyst_note":"","how_to_check":"- Check the pgAdmin 4 version; releases before `9.19` are affected.\n- In server mode, look for a SHARED_STORAGE setting in the pgAdmin configuration; the flaw applies where users can upload files to shared storage.\n- Check whether users can set the binary path for pg_dump, pg_restore, pg_dumpall or psql in their preferences.","plain_action":"","needs_analyst":false,"not_affected_if":["no-shared-storage"],"who_is_affected":"Teams that run pgAdmin 4 in server mode, where several users share one instance and can upload files to SHARED_STORAGE, are exposed. The flaw is most serious on Windows, where any file with an executable name can run; on POSIX, files created through pgAdmin are not executable. Single-user desktop installs without shared storage are less exposed.","user_interaction":"no","needs_special_setup":"yes","severity_if_unknown":"high"},"cost_usd":0.001217,"input_tokens":4388,"output_tokens":1557,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-116243':16A,19A '-2026':15A,18A '4':2A,27B,83C,254C '9.19':256C 'account':13A,81B,163C 'affect':252C 'binari':39B,95C,107C,149C,197C,241C 'bypass':229C 'cannot':228C 'case':225C 'case-insensit':224C 'check':195C,239C 'collaps':209C 'compar':214C 'contain':233C 'could':66B,139C 'creat':169C 'cve':14A,17A 'differ':220C 'dir':123C,208C 'directori':121C,129C,203C,215C 'dump':30B,86C 'dumpal':34B,90C 'enforc':237C 'everi':200C 'execut':69B,143C,174C,184C 'expand':207C 'exploit':178C 'file':4A,135C,168C,181C 'filesystem':227C 'fix':194C 'includ':245C 'insensit':226C 'issu':251C 'lay':114C 'link':213C 'mode':24B,48B,105C,192C 'name':185C 'nul':235C 'oper':79B,161C 'operating-system':78B,160C 'ordinari':131C 'os':12A 'path':40B,50B,96C,108C,150C,198C,232C,242C 'per':56B,118C 'per-us':55B,117C 'pg':29B,31B,33B,85C,87C,89C 'pgadmin':1A,21B,26B,73B,82C,155C,165C,171C,253C 'point':147C 'posix':167C 'prefer':45B,102C 'psql':36B,92C,248C 'refus':53B,110C,230C 'resolv':211C,244C 'restor':32B,88C 'run':7A,28B,74B,84C,156C,164C,187C 'server':10A,23B,47B,104C,191C 'server-mod':22B 'set':43B,99C 'share':61B,127C,145C,201C 'spell':221C 'storag':58B,62B,120C,122C,128C,146C,202C 'symbol':212C 'system':80B,162C 'therefor':140C 'tool':249C 'upload':3A,67B,134C,141C 'user':42B,57B,65B,98C,119C,132C,138C 'way':218C 'well':205C 'wherev':240C 'window':25B,190C","nicknames":[],"mitigations":[],"who_affected":"Teams that run pgAdmin 4 in server mode, where several users share one instance and can upload files to SHARED_STORAGE, are exposed. The flaw is most serious on Windows, where any file with an executable name can run; on POSIX, files created through pgAdmin are not executable. Single-user desktop installs without shared storage are less exposed.","tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"businesses","plain_action":null,"first_public_at":"2026-10-30T20:17:04+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:N/VC:H/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:X","cvss_by":"f86ef6dc-4d3a-42ad-8f28-e6d5547a5007","poc_count":0,"sources":[{"source":"nvd","external_id":"CVE-2026-116243","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-116243","severity":null,"published_at":"2026-10-30T20:17:04+00:00","modified_at":"2026-10-30T20:17:04+00:00","first_seen_at":"2026-10-30T20:25:37+00:00","fetched_at":"2026-10-30T20:25:37+00:00","note":null}],"documents":[],"notice":"Free to read at a human pace. An API with keys and an MCP server are in preparation; early access: hello@infrastack.ai"}