🔍 CVE-2026-116243

7.5
CVSS Score
HIGH
2026-10-30
2026-10-30 20:17
✅ 완료

🇰🇷 한글 설명

pgAdmin 4는 사용자가 설정한 바이너리 경로에서 pg_dump, pg_restore, pg_dumpall, psql을 실행합니다. 서버 모드에서 해당 경로 검사가 사용자별 저장소(STORAGE_DIR)에만 적용되어, 일반 사용자가 업로드할 수 있는 공유 저장소(SHARED_STORAGE)에 있는 실행 파일이 pgAdmin 운영체제 계정 권한으로 실행될 수 있습니다. 9.19 이전 버전에 영향을 줍니다.

💡 쉬운 설명

사용자가 공유 폴더에 프로그램 파일을 올리고 pgAdmin 설정에서 그 파일을 데이터베이스 도구로 지정하면, pgAdmin이 그 파일을 실행해 버릴 수 있습니다. 이 문제는 공유 폴더 검사가 빠져 있어서 생겼습니다.

🇺🇸 원문 (English)

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. The 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. This issue affects pgAdmin 4: before 9.19.

📍 영향받는 시스템

pgAdmin 4 9.19 이전 버전 (특히 Windows 서버 모드 배포)

⚔️ 공격 벡터

일반 사용자가 공유 저장소에 실행 파일을 업로드한 뒤 바이너리 경로 설정을 해당 파일로 지정해 pgAdmin 운영 계정 권한으로 코드를 실행

🛡️ 대응 방법

pgAdmin 4를 9.19 이상으로 업그레이드하고, 그전까지는 서버 모드에서 공유 저장소 업로드 권한을 제한

🔧 검증 코드

출력된 버전이 9.19 미만이면 취약하므로 업그레이드가 필요하고, 9.19 이상이면 패치가 적용된 것입니다.

Shell / Script
pgadmin4 --version 2>/dev/null || (pip show pgadmin4 2>/dev/null | grep -i version)

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Windows Server