CVE-2026-66009
ŚrednieCVSS 6.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 18 - wyżej niż 18% 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-109954Średnie
Parse Server w wersji od 5.4.0 do 8.6.96 oraz od 9.0.0 do 9.10.2-alpha.5 współdzieli stan transakcyjny partii między równoczesnymi żądaniami, pozwalając żądaniu transakcyjnemu dowolnego klienta zakłócać zapisy do bazy danych innych klientów. W przypadku PostgreSQL lub zestawów replik i klastrów shardowanych MongoDB potwierdzone zapisy innych klientów są wycofywane, jeśli partia zawiedzie, a transakcje PostgreSQL mogą pozostać otwarte bezterminowo, powodując niepowodzenie kolejnych zapisów.
- CVE-2026-109302Niskie
Podatność w Parse Server umożliwia nieuwierzytelnionym atakującym, posiadającym publiczne Application Id i klucz klienta, odtworzenie zapytania introspection z pamięci podręcznej Apollo Server, aby uzyskać schemat GraphQL, w tym prywatne nazwy klas i pól. Kontrola introspection jest stosowana tylko do bezpośrednio przesyłanych zapytań, nie do tych z pamięci podręcznej.
- CVE-2026-109301Średnie
Parse Server przed wersją 8.6.95 oraz w gałęzi 9.0.0 przed 9.10.2-alpha.3 nie rozwiązuje referencji do plików pozbawionych URL przed przekazaniem obiektów do wyzwalaczy Cloud Code i LiveQuery, co powoduje nieprzechwycony wyjątek i zakończenie procesu. Atakujący, którzy mogą zapisywać do klasy z wyzwalaczami Cloud Code (save, find, delete) lub włączonym LiveQuery, w tym nieuwierzytelnieni użytkownicy, jeśli publiczny zapis lub rejestracja jest dozwolona, mogą zawiesić serwer lub przerwać kolejne żądania.
- 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-109303Średnie
Parse Server przed wersją 8.6.93 oraz w gałęzi 9.0.0 przed 9.10.1-alpha.13 nie egzekwuje ochrony pól chronionych (authenticated, role lub grupy per-user) na zapytaniach count używających operatora $relatedTo, ujawniając rozmiar chronionych pól Relation. Uwierzytelniony użytkownik, który może odczytać właściciela obiektu, może połączyć liczby z ograniczeniem objectId jako wyrocznię członkostwa, aby ujawnić poufne członkostwa, takie jak prywatne grupy lub listy blokowane.
- CVE-2026-105828Średnie
Parse Server w wersjach od 8.2.2 do 8.6.92 oraz od 9.0.0 do 9.10.1-alpha.12 zawiera podatność ujawnienia informacji, w której komunikaty błędów walidacji GraphQL ujawniają ukryte nazwy klas, gdy publiczna introspekcja jest wyłączona. Nieuwierzytelnieni atakujący posiadający jedynie publiczny Application Id mogą wysyłać spreparowane operacje wywołujące błędy nieznanego argumentu lub nieprawidłowej wartości enum, aby poznać klasy docelowe wskaźników i relacji.
- CVE-2026-101042Średnie
Parse Server w wersjach >= 9.0.0 < 9.10.1-alpha.10 i >= 8.0.2 < 8.6.91 nie weryfikuje kodu autoryzacyjnego u dostawcy zewnętrznego podczas logowania z nazwą użytkownika i hasłem, gdy używane są adaptery uwierzytelniania oparte na kodzie (GitHub, Google Play Games, Instagram, LINE, LinkedIn, Microsoft, QQ, Spotify, WeChat, Weibo). Umożliwia to uwierzytelnionemu użytkownikowi o niskich uprawnieniach dołączenie dowolnej, niezweryfikowanej tożsamości dostawcy do swojego konta, a także przejęcie konta ofiary, która później zaloguje się przez tego dostawcę. Problem został naprawiony w wersjach 9.10.1-alpha.10 i 8.6.91.
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

