CVE-2026-100631
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 27 - wyżej niż 27% wszystkich znanych CVE
Streszczenie
Parse Server, backend typu open source, w wersjach przed 8.6.90 oraz od 9.0.0 przed 9.10.1-alpha.9, ma podatność w logice deduplikacji tokenów urządzeń dla rekordów instalacji. Logika ta nie sprawdza typu pól dostarczanych przez klienta przed użyciem ich do budowania zapytań do bazy danych. Nieuwierzytelniony atakujący, znający tylko publiczny identyfikator aplikacji, może przesłać wartości niebędące ciągami znaków, aby wstrzyknąć operatory zapytań, co powoduje, że czyszczenie deduplikacji (wykonywane z podwyższonymi uprawnieniami) usuwa wszystkie rejestracje urządzeń w aplikacji lub wybrany podzbiór.
Ocena ryzyka
Atakujący może usunąć wszystkie rejestracje urządzeń, co uniemożliwia dostarczanie powiadomień push do czasu ponownej rejestracji wszystkich klientów. Może to prowadzić do zakłócenia działania aplikacji i utraty zaufania użytkowników.
Rekomendacja
Zaktualizuj Parse Server do wersji 8.6.90 lub 9.10.1-alpha.9, które odrzucają wartości niebędące ciągami znaków i ograniczają czyszczenie deduplikacji do wywołującej aplikacji. Nie ma obejścia.
Inne podatności w Parse Server
Zobacz wszystkie- 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-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-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.
- CVE-2026-100632Średnie
Parse Server w wersjach >= 9.0.0 i < 9.10.1-alpha.8 oraz < 8.6.89 ocenia uprawnienie protectedFields na poziomie klasy względem niekompletnie rozwiązanego kontekstu wywołującego: role subskrybenta nie są rozwiązywane, a gdy subskrypcja nie dostarcza własnego tokenu sesji, ładunek zdarzenia jest redagowany względem tożsamości anonimowej, mimo że odczyt był autoryzowany względem połączonego użytkownika. W rezultacie maski pól zdefiniowane dla roli, uwierzytelnionych użytkowników lub konkretnego użytkownika nie są stosowane, więc uwierzytelniony subskrybent może otrzymywać wartości pól, które REST API poprawnie ukrywa. Dotyczy tylko klas z włączonym LiveQuery, które definiują protectedFields w grupach role:, authenticated lub per-user; maski w grupie public (*) są stosowane poprawnie. Naprawiono w 9.10.1-alpha.8 i 8.6.89.
- CVE-2026-87806Wysokie
Parse Server w wersjach do 8.6.87 oraz od 9.0.0 do 9.10.1-alpha.7 zawiera obejście uwierzytelniania we wbudowanym adapterze LDAP. Adapter przekazuje hasło dostarczone przez klienta do katalogu bez weryfikacji, czy hasło zostało podane, i traktuje każdą odpowiedź bez błędu jako dowód uwierzytelnienia. Atakujący bez uwierzytelnienia, znając nazwę użytkownika w katalogu, może uzyskać ważny token sesji dla tego konta, co prowadzi do przejęcia konta.
- CVE-2026-66009Średnie
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.
- CVE-2026-66008Średnie
Parse Server w wersjach od 9.0.0 do 9.10.0-alpha.6 oraz od 8.2.2 do 8.6.87 ujawnia nazwy klas docelowych wskaźników i relacji poprzez komunikaty błędów walidacji GraphQL i wymuszania typów, gdy publiczna introspekcja schematu jest wyłączona (graphQLPublicIntrospection: false, domyślnie). Ponieważ błędy te są generowane przed uwierzytelnieniem, autoryzacją lub uruchomieniem resolvera, nieuwierzytelniony klient posiadający tylko publiczny identyfikator aplikacji może wywołać błędy na polach wskaźników lub relacji, aby zrekonstruować ukryte nazwy klas schematu, częściowo omijając ochronę ukrywania schematu. Ujawniane są tylko metadane schematu (nazwy klas); żadne dane obiektów, poświadczenia ani rekordy użytkowników nie są ujawniane.
Oryginalny opis (angielski, źródło NVD)
Parse Server is an open source backend server. In versions prior to 8.6.90 and in versions from 9.0.0 prior to 9.10.1-alpha.9, the device token deduplication logic for installation records does not validate the type of client-supplied installation fields before using them to build database queries. An unauthenticated remote attacker who knows only the public application ID can submit non-string values in these fields to inject query operators, causing the deduplication cleanup — which runs with elevated privileges before class-level permissions are evaluated — to delete every device registration in the application or an attacker-chosen subset of them. No account, session token, master key, or user interaction is required. Deleted registrations cannot be recovered on the server, so push notifications cannot be delivered until every client re-registers. Any deployment that exposes the REST API to clients and uses push notifications is affected in its default configuration. Versions 8.6.90 and 9.10.1-alpha.9 fix the issue by rejecting non-string values with a client error and by scoping the deduplication cleanup to the calling application. No workaround other than upgrading is available.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

