CRITICAL🇬🇧 English

CVE-2024-2044

pgAdmin 4: path traversal i niebezpieczna deserializacja prowadzące do RCE

CVSS 9.9v3.1pub. 2024-03-07upd. 2025-09-19

pgAdmin w wersji 8.3 i wcześniejszych zawiera podatność path traversal w kodzie obsługi sesji użytkowników, która umożliwia wykonanie dowolnego kodu (RCE) poprzez deserializację złośliwych obiektów pickle. W zależności od systemu operacyjnego atak może być przeprowadzony bez uwierzytelnienia (Windows) lub przez uwierzytelnionego użytkownika (Linux/POSIX).

Pokaż oryginał (EN)

pgAdmin <= 8.3 is affected by a path-traversal vulnerability while deserializing users’ sessions in the session handling code. If the server is running on Windows, an unauthenticated attacker can load and deserialize remote pickle objects and gain code execution. If the server is running on POSIX/Linux, an authenticated attacker can upload pickle objects, deserialize them, and gain code execution.

🤖 Analiza AI
Jak działa

Podczas deserializacji sesji użytkowników kod aplikacji nie weryfikuje poprawnie ścieżek, co skutkuje podatnością path traversal (CWE-31). Na systemach Windows napastnik nieuwierzytelniony może wskazać zdalny obiekt pickle i doprowadzić do jego deserializacji przez serwer, uzyskując tym samym wykonanie kodu. Na systemach POSIX/Linux uwierzytelniony atakujący może przesłać spreparowany obiekt pickle na serwer, a następnie zmusić aplikację do jego deserializacji, co również prowadzi do RCE. Mechanizm Python pickle jest z natury niebezpieczny — deserializacja niezaufanych danych pozwala na wykonanie dowolnego kodu w kontekście procesu serwera.

Skutki

Atakujący może uzyskać pełne wykonanie kodu na serwerze (RCE) w kontekście procesu pgAdmin, co w praktyce oznacza możliwość przejęcia kontroli nad serwerem, kradzieży danych oraz dalszego lateral movement w sieci.

Mitygacja

Należy zaktualizować pgAdmin 4 do wersji nowszej niż 8.3, w której błąd został usunięty. Szczegóły dotyczące patcha dostępne są w referencjach producenta (GitHub pgadmin-org/pgadmin4 issue #7258) oraz w komunikatach Fedora Package Announce. Do czasu aktualizacji należy rozważyć ograniczenie dostępu do interfejsu pgAdmin wyłącznie do zaufanych sieci lub adresów IP, a na systemach Windows — blokowanie wychodzących połączeń sieciowych z procesu pgAdmin.

Kogo dotyczy

pgAdmin 4 w wersji 8.3 i wcześniejszych (pgadmin-org/pgadmin4); dotyczy instalacji na systemach Windows oraz POSIX/Linux. Podatność dotyczy również pakietów pgAdmin dostępnych w Fedora Linux.

Uwagi

Podatność została szczegółowo opisana przez firmę Shielder w ich publicznym advisory (shielder.com). Na systemach Windows atak nie wymaga uwierzytelnienia, co znacząco podnosi jego krytyczność — stąd ocena CVSS 9.9 z zakresem wpływu Scope:Changed.

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

    OS
    Fedoraproject
    40
  • Pgadmin 4

    APP
    Pgadmin
    < 8.4
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
RCEAuth BypassDeserialization
CWE
Referencje

Powiązane podatności

CVE-2024-4577CRITICAL9.8⚠ KEVPL ✓ten sam produkt

PHP CGI argument injection – RCE na Windows przez mechanizm Best-Fit

CVE-2024-5274CRITICAL9.6⚠ KEVPL ✓ten sam produkt

Type Confusion w V8 (Google Chrome) — RCE przez spreparowaną stronę HTML

CVE-2024-4947CRITICAL9.6⚠ KEVPL ✓ten sam produkt

Type Confusion w silniku V8 Chrome — zdalne wykonanie kodu (RCE)

CVE-2024-4671CRITICAL9.6⚠ KEVPL ✓ten sam produkt

Use-after-free w Google Chrome Visuals umożliwiający ucieczkę z sandbox

CVE-2023-6345CRITICAL9.6⚠ KEVPL ✓ten sam produkt

Integer overflow w Skia w Google Chrome — sandbox escape