CRITICAL🇬🇧 English

CVE-2026-30966

Parse Server: nieautoryzowany dostęp do wewnętrznych tabel relacji przez REST/GraphQL API

CVSS 10.0v3.1pub. 2026-03-10upd. 2026-03-11

Podatność w Parse Server umożliwia dowolnemu klientowi posiadającemu wyłącznie klucz aplikacji (application key) bezpośredni dostęp do wewnętrznych tabel relacji (Relation) przez REST API lub GraphQL API bez wymagania klucza master. Jest to podatność krytyczna (CVSS 10.0), ponieważ pozwala na pełne obejście mechanizmów kontroli dostępu opartych na rolach.

Pokaż oryginał (EN)

Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Prior to 9.5.2-alpha.7 and 8.6.20, Parse Server's internal tables, which store Relation field mappings such as role memberships, can be directly accessed via the REST API or GraphQL API by any client using only the application key. No master key is required. An attacker can create, read, update, or delete records in any internal relationship table. Exploiting this allows the attacker to inject themselves into any Parse Role, gaining all permissions associated with that role, including full read, write, and delete access to classes protected by role-based Class-Level Permissions (CLP). Similarly, writing to any such table that backs a Relation field used in a pointerFields CLP bypasses that access control. This vulnerability is fixed in 9.5.2-alpha.7 and 8.6.20.

🤖 Analiza AI
Jak działa

Wewnętrzne tabele Parse Server, przechowujące mapowania pól relacji (np. przynależności do ról), nie są prawidłowo chronione przed dostępem zewnętrznym (CWE-284 — nieprawidłowa kontrola dostępu). Atakujący, dysponując jedynie kluczem aplikacji, może wykonywać operacje CRUD (tworzenie, odczyt, aktualizacja, usuwanie) na dowolnej wewnętrznej tabeli relacji. Dzięki temu może wstrzyknąć dowolne konto do wybranej roli (Parse Role), przejmując wszystkie uprawnienia z nią związane. Analogicznie możliwe jest ominięcie mechanizmu pointerFields CLP poprzez bezpośredni zapis do tabeli backing danego pola Relation.

Skutki

Atakujący może przyznać sobie pełne uprawnienia odczytu, zapisu i usuwania do klas chronionych przez Class-Level Permissions (CLP) oparte na rolach, skutecznie przejmując kontrolę nad danymi aplikacji. Możliwe jest również całkowite ominięcie innych mechanizmów kontroli dostępu opartych na polach wskaźnikowych (pointerFields CLP).

Mitygacja

Należy zaktualizować Parse Server do wersji 9.5.2-alpha.7 (gałąź 9.x) lub 8.6.20 (gałąź 8.x), w których podatność została naprawiona. Patche dostępne są w referencjach producenta na GitHub.

Kogo dotyczy

Parse Server (Parseplatform parse-server) w wersjach wcześniejszych niż 9.5.2-alpha.7 oraz wcześniejszych niż 8.6.20

Uwagi

Podatność posiada maksymalny wynik CVSS 10.0 z wektorem sieciowym, bez wymagań co do uprawnień i interakcji użytkownika oraz ze zmianą zakresu (Scope: Changed), co odzwierciedla możliwość wpływu na zasoby wykraczające poza pierwotnie dostępny kontekst. Szczegółowe informacje dostępne w security advisory GHSA-5f92-jrq3-28rc.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:L
  • Parseplatform Parse Server

    APP
    Parseplatform
    9.5.2< 8.6.209.0.0 – 9.5.2 (bez)
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2026-34532CRITICAL9.1PL ✓ten sam produkt

Parse Server: obejście walidatorów Cloud Functions przez prototype chain

CVE-2026-32248CRITICAL9.3PL ✓ten sam produkt

Parse Server — przejęcie konta przez manipulację zapytaniem (Auth Bypass)

CVE-2026-32242CRITICAL9.1PL ✓ten sam produkt

Race condition w Parse Server — błędna walidacja tokenów OAuth2

CVE-2026-31871CRITICAL9.3PL ✓ten sam produkt

SQL Injection w Parse Server (PostgreSQL) — operacje Increment na polach zagnieżdżonych

CVE-2026-31856CRITICAL9.3PL ✓ten sam produkt

SQL Injection w Parse Server (PostgreSQL) — operacje Increment na zagnieżdżonych polach