CVE-2026-66009
ŚrednieCVSS 6.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 38 - wyżej niż 38% wszystkich znanych CVE
Streszczenie
Parse Server w wersjach od 9.0.0 do 9.10.0-alpha.5 oraz od 8.2.2 do 8.6.86 zwraca komunikaty błędów walidacji GraphQL, które ujawniają nazwy wymaganych niestandardowych pól wejściowych, nawet gdy publiczna introspekcja jest wyłączona (graphQLPublicIntrospection: false, domyślnie). Klient posiadający tylko publiczny identyfikator aplikacji, bez sesji użytkownika, klucza głównego ani klucza konserwacji, może wywołać błędy walidacji, aby poznać nazwy wymaganych pól niestandardowych w klasach, które już zna po nazwie, częściowo omijając cel ukrywania schematu poprzez wyłączenie publicznej introspekcji. Nie są ujawniane żadne przechowywane dane, poświadczenia, nazwy pól opcjonalnych, nazwy klas nieprzywoływanych ani nazwy funkcji Cloud Code.
Ocena ryzyka
Ryzyko polega na częściowym ujawnieniu struktury schematu GraphQL, co może pomóc atakującemu w zrozumieniu modelu danych i zaplanowaniu dalszych ataków, choć nie prowadzi bezpośrednio do wycieku danych.
Rekomendacja
Należy zaktualizować Parse Server do wersji 9.10.0-alpha.6 lub nowszej (dla gałęzi 9.x) albo 8.6.87 lub nowszej (dla gałęzi 8.x), która nie ujawnia nazw pól w komunikatach błędów walidacji.
Inne podatności w Parse Server
Zobacz wszystkie- CVE-2026-120310Niskie
Parse Server przed 8.6.109 oraz 9.0.0 przed 9.10.6-alpha.1 zwraca przechowywane wartości pól w odpowiedziach aktualizacji obiektów bez sprawdzania uprawnień odczytu. Klienci, których uprawnienia klasowe lub ACL obiektu pozwalają na aktualizację, ale nie na odczyt, mogą zobaczyć dane obiektu, w tym wyniki operacji atomowych, wartości ustawiane przez Cloud Code oraz całe pola nadrzędne przy notacji kropkowej.
- CVE-2026-119571Niskie
Parse Server od wersji 9.7.0 przed 9.10.5-alpha.10 zawiera błąd autoryzacji, który stosuje aktualizacje _Installation adresowane przez identyfikator obiektu do instalacji wskazanej w nagłówku X-Parse-Installation-Id. Gdy włączono protectedFieldsTriggerExempt, atakujący znający identyfikator obiektu innej instalacji może spowodować, że trigger beforeSave przetworzy chronione pola tej instalacji podczas zapisu w innym miejscu.
- CVE-2026-34532Krytyczne
Parse Server przed wersjami 8.6.67 i 9.7.0-alpha.11 zawiera podatność, w której atakujący może ominąć kontrolę dostępu walidatora Cloud Function, dodając "prototype.constructor" do nazwy funkcji w URL. Powoduje to pominięcie całej kontroli dostępu, umożliwiając nieuwierzytelnionym wywołanie funkcji chronionych walidatorami.
- CVE-2026-27804Krytyczne
Parse Server przed wersjami 8.6.3 i 9.1.1-alpha.4 jest podatny na atak, w którym nieautoryzowany napastnik może sfałszować token uwierzytelniający Google z algorytmem 'alg: "none"', co pozwala na logowanie się jako dowolny użytkownik powiązany z kontem Google bez znajomości jego danych uwierzytelniających.
- CVE-2025-67727Krytyczne
Parse Server to open source backend, który można wdrożyć na dowolnej infrastrukturze działającej na Node.js. W wersjach przed 8.6.0-alpha.2, przepływ pracy GitHub CI jest wyzwalany w sposób, który przyznaje podwyższone uprawnienia GitHub Actions, dając dostęp do sekretów GitHub i uprawnień zapisu zdefiniowanych w przepływie pracy. Kod z forka lub skrypty cyklu życia mogą być potencjalnie uwzględnione. Dotyczy to tylko infrastruktury CI/CD repozytorium, w tym publicznych forków GitHub z włączonym GitHub Actions. Problem został naprawiony w wersji 8.6.0-alpha.2 oraz commitach 6b9f896 i e3d27fe.
- CVE-2023-36475Krytyczne
Parse Server przed wersjami 5.5.2 i 6.2.1 jest podatny na zanieczyszczenie prototypu, co może prowadzić do zdalnego wykonania kodu poprzez parser BSON MongoDB.
- CVE-2026-119570Niskie
Parse Server od wersji 9.7.0 przed 9.10.5-alpha.7 zawiera podatność ujawnienia informacji, która pozwala klientom otrzymywać wartości chronionych pól zapisanych przez triggery beforeSave przy użyciu kluczy notacji kropkowej. Gdy protectedFieldsSaveResponseExempt ma wartość false, klienci z uprawnieniami do tworzenia lub aktualizacji mogą odczytać wartości zapisane przez trigger pod chronionym polem w tym samym żądaniu.
- CVE-2026-119569Średnie
Parse Server przed wersją 8.6.108 oraz 9.0.0 przed 9.10.5-alpha.9 zawiera podatność prototype pollution, ponieważ klucze kontrolowane przez użytkownika są rozwijane do obiektów bez sprawdzania własnych właściwości. Klienci z prawem zapisu do klasy mogą wysyłać klucze pól w notacji kropkowej lub nazwy wpisów ACL pasujące do wbudowanych członków obiektu, aby uszkodzić wbudowane funkcje, powodując awarię wszystkich żądań do czasu restartu serwera.
- CVE-2026-119126Niskie
Parse Server przed 8.6.106 oraz 9.0.0 przed 9.10.5-alpha.7 nieprawidłowo obsługuje klucze notacji kropkowej z wartościami null lub undefined podczas budowania zapisywanego obiektu, więc zapis jest przechowywany, ale zwraca błąd i pomija wyzwalacze afterSave oraz zdarzenia LiveQuery. Klient z prawem zapisu może to wykorzystać do obejścia logowania audytowego, powiadomień i aktualizacji danych pochodnych.
- CVE-2026-119125Niskie
Parse Server przed 8.6.107 oraz 9.0.0 przed 9.10.5-alpha.8 zwraca przechowywaną wartość pola przywróconego przez wyzwalacz beforeSave w odpowiedziach na aktualizację obiektu, nawet klientom bez prawa odczytu tego obiektu lub pola. Uwierzytelniony klient mogący aktualizować obiekt, którego wyzwalacz beforeSave przywraca pole (poprzez revert() lub walidator constant: true), może odczytać chronione wartości, w tym surowe authData MFA własnego konta, gdy włączone jest protectedFieldsTriggerExempt.
Oryginalny opis (angielski, źródło NVD)
Parse Server versions >= 9.0.0 before 9.10.0-alpha.5 and >= 8.2.2 before 8.6.86 return GraphQL validation error messages that name required custom input fields even when public introspection is disabled (graphQLPublicIntrospection: false, the default). A client holding only the public application id — with no user session, master key, or maintenance key — can trigger validation errors to learn the names of required (non-null) custom fields on classes it already references by name, partially defeating the schema-hiding intent of disabling public introspection. No stored data, credentials, optional field names, unreferenced class names, or Cloud Code function names are exposed.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

