Skip to content
OpenAdvisories

Vendor

pgadmin.org

56 known vulnerabilities.

Products

16 results · Clear filters · Feed

  • Medium 6.5

    pgAdmin 4: Materialized view refresh redirects its connection through a crafted database name

    pgAdmin 4's materialized view refresh passed the target database's name to psql's --dbname argument unchanged. libpq treats a --dbname value containing "=" (or a postgresql:// URI) as a full connection string, whose keywords override the host, port and other …

  • Medium 4.2

    pgAdmin 4: A user's other sessions survive a change of their password

    pgAdmin 4 did not invalidate a user's existing sessions when their password changed, either through the user's own change password dialog or through an administrator resetting it in User Management. A session established before the change, for example on anot…

  • Medium 6.5

    pgAdmin 4: Files opened in a storage directory follow a symbolic link, hard link or FIFO planted after the containment check

    In server mode pgAdmin 4 validates a path a user gives for a file in their storage directory with check_access_permission() and then opened it by name. Several places opened it with a plain open() or handed the path to a utility that opened it later: the serv…

  • Medium 6.8

    pgAdmin 4: Non-administrators can share a server with every user

    In pgAdmin 4 server mode only administrators are meant to share a server with all users; the server dialog shows the Shared switch only to them. The create and update endpoints of the server API, however, stored the "shared" flag and shared username they were…

  • Medium 6.5

    pgAdmin 4: Server passwords are left in pgAdmin's process environment

    To pass a server's password to psql and to the utilities pgAdmin 4 runs as background processes, the server manager wrote it into pgAdmin's own process environment: as PGPASSWORD for the PSQL tool, and under a per-process variable for a utility. Nothing remov…

  • Medium 6.5

    pgAdmin 4: File Manager and storage-path tools act on a different path from the one checked

    In server mode pgAdmin 4 validates a path into the user's storage directory with check_access_permission(), which builds the absolute path with get_abs_path(). Several callers then acted on a path they built differently, so the path checked and the path used …

  • Medium 6.5

    pgAdmin 4: Connection-string injection via the database field in the Restore and Maintenance tools

    pgAdmin 4's Restore and Maintenance tools passed the client-supplied 'database' field directly as the value of the --dbname option given to pg_restore and psql. libpq expands a database name containing an equals sign into a full connection string, and connect…

  • Medium 5.9

    pgAdmin 4: File Manager save_file writes through a symbolic link planted after the containment check

    pgAdmin 4's File Manager save_file endpoint, which backs saving from the Query Tool and ERD, validated the requested path with Filemanager.check_access_permission() and then opened the file for writing with a plain open() call. CVE-2026-7819 had previously ha…

  • Medium 5.4

    pgAdmin 4: Tool permission bypass via backend routes and Socket.IO handlers

    The per-tool permission system (custom roles / role-based tool permissions, introduced in pgAdmin 4 9.3) did not enforce its permission check consistently. In SERVER mode, pgAdmin 4 gates each tool behind a per-tool Flask-Security permission, but the permissi…

  • Medium 6.5

    pgAdmin 4: Missing authentication decorator on Constraints, preferences, Debugger and Schema Diff routes allows unauthenticated access in SERVER mode (incomplete fix for CVE-2026-12046)

    In SERVER mode, pgAdmin 4 enforces authentication per route via the @pga_login_required decorator; the application's before_request hook only handles desktop-mode auto-login and the Kerberos/Webserver-auth redirect, so any route shipped without the decorator …

  • Medium 4.3

    pgAdmin 4: Open redirect in multi-factor authentication flow via unvalidated 'next' parameter

    Open redirect in pgAdmin 4's multi-factor authentication flow. The MFA validate and register endpoints honoured the user-supplied 'next' query/form parameter without confirming the target pointed back inside pgAdmin, so an authenticated victim who clicked /mf…

  • Medium 4.3

    pgAdmin 4: SQL injection in named restore point endpoint

    SQL injection in pgAdmin 4's named restore point endpoint (POST /browser/server/restore_point/{gid}/{sid}). The user-supplied 'value' field was interpolated directly into the SQL string with str.format() instead of being passed as a bound parameter, allowing …

  • Medium 6.5

    pgAdmin 4: Account-lockout bypass via Flask-Security default /login view

    Improper restriction of excessive authentication attempts (CWE-307) in pgAdmin 4. pgAdmin enforces MAX_LOGIN_ATTEMPTS only inside its custom /authenticate/login view. Flask-Security's default /login view, which is registered automatically by security.init_app…

  • Medium 6.5

    pgAdmin 4: Local file inclusion and server-side request forgery in LLM API configuration endpoints

    Local file inclusion (LFI) and server-side request forgery (SSRF) vulnerabilities in pgAdmin 4 LLM API configuration endpoints. User-supplied api_key_file and api_url preferences were passed to the LLM provider clients without validation. An authenticated use…

  • Medium 4.8

    pgAdmin 4: Stored XSS via crafted PostgreSQL object names in Browser Tree and Explain Visualizer

    Stored cross-site scripting (XSS) vulnerability in pgAdmin 4 Browser Tree and Explain Visualizer modules. User-controlled PostgreSQL object names (database, schema, table, column, etc.) were assigned to DOM elements via innerHTML, allowing crafted object name…

  • Medium 6.8

    Command injection vulnerability allowing arbitrary command execution on Windows

    pgAdmin 4 versions up to 9.9 are affected by a command injection vulnerability on Windows systems. This issue is caused by the use of shell=True during backup and restore operations, enabling attackers to execute arbitrary system commands by providing special…