{"id":"CVE-2026-116242","kind":"vulnerability","aliases":["CVE-2026-116242"],"related":[],"title":"pgAdmin 4: SSH tunnels reuse the service account's keys in server mode","description":"pgAdmin 4 opens SSH tunnels with the sshtunnel library but gave it neither host_pkey_directories nor ssh_config_file, so it always loaded the unencrypted private keys in ~/.ssh of the operating-system account running pgAdmin, read that account's ~/.ssh/config (IdentityFile, User, HostName, ProxyCommand) for the tunnel host, and could use its ssh-agent. In server mode any user could therefore configure a tunnel to a host that accepts the service account's key, with no credentials of their own or with an identity file that did not exist in their storage, and reach it as that account.\n\nThe fix makes tunnels in server mode use only the identity file or password the user configured: the service account's keys, configuration and agent are no longer used, and an identity file that cannot be found in the user's storage is reported instead of falling back to ~/.ssh. Desktop mode is unchanged.\n\nThis issue affects pgAdmin 4: before 9.19.","summary":"In server mode, any pgAdmin user could open an SSH tunnel that used the private keys, ssh config and ssh-agent of the operating-system account running pgAdmin. An attacker could reach any host that accepts that account's key without holding credentials of their own.","severity":"high","cvss":8.2,"epss":null,"exploited":false,"exploited_at":null,"products":[],"ecosystems":[],"tags":["package","pgadmin","self-hosted","ssh"],"not_affected_if":["desktop-mode","no-ssh-tunnels","pgadmin-9.19-or-later"],"how_to_check":"- Check the installed pgAdmin 4 version against the fixed release.\n- Look for `~/.ssh` and `~/.ssh/config` in the home directory of the account running pgAdmin 4 on a server-mode deployment.","fix":"- pgAdmin 4: `9.19` or later (the sources say 'before 9.19' is affected).","status":"open","published_at":"2026-10-30T20:17:03+00:00","first_seen_at":"2026-10-30T20:25:37+00:00","triaged_at":"2026-10-30T20:26:27+00:00","updated_at":"2026-10-30T20:26:27+00:00","category":"package","confidence":0.8,"triage":{"at":"2026-10-30T20:26:27Z","model":"claude-haiku-5-5","output":{"fix":"- pgAdmin 4: `9.19` or later (the sources say 'before 9.19' is affected).","reach":"network","title":"pgAdmin 4: SSH tunnels reuse the service account's keys in server mode","impact":"high","summary":"In server mode, any pgAdmin user could open an SSH tunnel that used the private keys, ssh config and ssh-agent of the operating-system account running pgAdmin. An attacker could reach any host that accepts that account's key without holding credentials of their own.","audience":"businesses","category":"package","nicknames":[],"who_cares":["pgadmin","self-hosted","ssh"],"confidence":0.8,"fix_status":"available","needs_auth":"yes","worst_case":"Attacker reaches SSH hosts as the pgAdmin service account.","analyst_note":"","how_to_check":"- Check the installed pgAdmin 4 version against the fixed release.\n- Look for `~/.ssh` and `~/.ssh/config` in the home directory of the account running pgAdmin 4 on a server-mode deployment.\n- unknown: the sources do not say which config or log entries show tunnels using those keys.","plain_action":"","needs_analyst":false,"not_affected_if":["desktop-mode","no-ssh-tunnels","pgadmin-9.19-or-later"],"who_is_affected":"Teams running pgAdmin 4 in server mode, where several users share one instance, are exposed. Desktop-mode installs are unchanged by the fix, so single-user installs are not affected by this change. A deployment where the service account has no SSH keys, no ssh config and no agent is less exposed.","user_interaction":"no","needs_special_setup":"yes","severity_if_unknown":"high"},"cost_usd":0.000733,"input_tokens":4350,"output_tokens":596,"severity_before":"high"},"analyst_status":null,"analyst_note":null,"search":"'-116242':16A,19A '-2026':15A,18A '/.ssh':100C,222C '/.ssh/config':113C '4':2A,72C,231C '9.19':233C 'accept':63B,143C 'account':8A,53B,65B,106C,111C,146C,172C,192C 'affect':229C 'agent':47B,128C,197C 'alway':93C 'attack':57B 'back':220C 'cannot':207C 'config':43B,89C 'configur':136C,189C,195C 'could':32B,58B,123C,134C 'credenti':70B,151C 'cve':14A,17A 'desktop':223C 'directori':86C 'exist':163C 'fall':219C 'file':90C,159C,184C,205C 'fix':174C 'found':209C 'gave':81C 'hold':69B 'host':24B,61B,84C,121C,141C 'hostnam':116C 'ident':158C,183C,204C 'identityfil':114C 'instead':217C 'issu':228C 'key':10A,41B,67B,98C,148C,194C 'librari':79C 'load':94C 'longer':200C 'make':175C 'mode':13A,28B,131C,179C,224C 'neither':83C 'open':33B,73C 'oper':51B,104C 'operating-system':50B,103C 'packag':20B 'password':186C 'pgadmin':1A,21B,30B,55B,71C,108C,230C 'pkey':85C 'privat':40B,97C 'proxycommand':117C 'reach':59B,168C 'read':109C 'report':216C 'reus':5A 'run':54B,107C 'self':23B 'self-host':22B 'server':12A,27B,130C,178C 'servic':7A,145C,191C 'ssh':3A,25B,35B,42B,46B,74C,88C,127C 'ssh-agent':45B,126C 'sshtunnel':78C 'storag':166C,214C 'system':52B,105C 'therefor':135C 'tunnel':4A,36B,75C,120C,138C,176C 'unchang':226C 'unencrypt':96C 'use':38B,124C,180C,201C 'user':31B,115C,133C,188C,212C 'without':68B","nicknames":[],"mitigations":[],"who_affected":"Teams running pgAdmin 4 in server mode, where several users share one instance, are exposed. Desktop-mode installs are unchanged by the fix, so single-user installs are not affected by this change. A deployment where the service account has no SSH keys, no ssh config and no agent is less exposed.","tier":"B","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"businesses","plain_action":null,"first_public_at":"2026-10-30T20:17:03+00:00","kev":null,"cvss_vector":"CVSS:4.0/AV:N/AC:H/AT:P/PR:L/UI:N/VC:H/VI:N/VA:N/SC:H/SI:H/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-116242","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-116242","severity":null,"published_at":"2026-10-30T20:17:03+00:00","modified_at":"2026-10-30T20:17:03+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"}