Podatności Parse Server
27 znanych podatności CVE w Parse Server, przetłumaczonych i ocenionych.
- 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-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.
- CVE-2026-64627Średnie
Podatność w Parse Server w wersjach >= 9.0.0 przed 9.10.0-alpha.4 i wersjach przed 8.6.85 powoduje ujawnienie schematu. Mimo wyłączenia publicznej introspekcji GraphQL, błędy zmiennych ujawniają sugestie 'Did you mean ...?', co pozwala nieuwierzytelnionemu atakującemu na odtworzenie ukrytych identyfikatorów schematu.
- CVE-2026-61448Niskie
Parse Server w wersjach od 9.0.0 do 9.10.0-alpha.2 oraz od 8.6.83 i wcześniejszych zawiera podatność na trwałe XSS. Nieprawidłowo sformowany Content-Type pliku (np. 'image//svg+xml') omija blokadę rozszerzeń i jest przechowywany bez zmian, co w przypadku adapterów S3, GCS lub Azure powoduje, że przeglądarka interpretuje plik jako HTML i wykonuje osadzony skrypt.
- CVE-2026-57481Niskie
Podatność w Parse Server umożliwia subskrybentowi LiveQuery odbieranie wartości pól obiektu, do których nie ma uprawnień odczytu. Problem występuje, gdy pojedyncza operacja zapisu zmienia zarówno pole obiektu, jak i uprawnienia ACL subskrybenta, powodując błędne przetwarzanie zdarzeń leave i enter.
- CVE-2026-57480Wysokie
Podatność w Parse Server pozwala na blokadę pętli zdarzeń Node.js poprzez wysłanie głęboko zagnieżdżonych operatorów zapytań $or, $and i $or w REST API lub LiveQuery. Przetwarzanie takich zapytań może prowadzić do wykładniczego czasu wykonania, co uniemożliwia obsługę innych żądań.
- CVE-2026-55778Niskie
Podatność w Parse Server umożliwia ominięcie domyślnej blokady rozszerzeń plików poprzez przesłanie pliku z niestandardowym lub złożonym rozszerzeniem oraz niebezpiecznym typem treści. Pozwala to adapterom pamięci masowej, takim jak S3 i GCS, na serwowanie aktywnej treści dostarczonej przez atakującego, co prowadzi do przechowywanego cross-site scripting (XSS).
- CVE-2026-53726Średnie
W Parse Server przed wersjami 8.6.80 i 9.9.1-alpha.6 występowała podatność, która pozwalała na odczytanie członkostwa w polu relacyjnym za pomocą operatora $relatedTo, nawet gdy pole to było ukryte dla klienta. Umożliwiało to nieautoryzowanym klientom enumerację obiektów powiązanych z chronioną relacją.
- CVE-2026-53725Średnie
Parse Server w wersjach od 9.8.0 do przed 9.9.1-alpha.5 ma lukę, która pozwala na ujawnienie wrażliwych danych użytkowników przez punkty końcowe /login i /verifyPassword, gdy włączono MFA i zablokowano dostęp do klasy _User. W przypadku odmowy dostępu do danych użytkownika, serwer zwraca surowe dane z bazy, co może prowadzić do ujawnienia tajnych informacji, takich jak sekrety MFA i kody odzyskiwania.
- CVE-2026-53724Niskie
Parse Server przed wersjami 8.6.79 i 9.9.1-alpha.4 pozwalał na obejście domyślnej listy blokowanych rozszerzeń plików poprzez dodanie kropki na końcu nazwy pliku. To umożliwia atakującym przesyłanie plików z niebezpiecznymi typami MIME, co prowadzi do możliwości wykonania ataków XSS.
- CVE-2026-50008Średnie
Parse Server w wersjach od 9.8.0 do przed 9.9.1-alpha.3 ma lukę, która pozwala na obejście listy dozwolonych tras API. Zewnętrzni klienci mogą wysyłać sub-zapytania do tras, które nie zostały uwzględnione w tej liście, co stwarza ryzyko nieautoryzowanego dostępu.
- CVE-2026-47248Średnie
Parse Server przed wersjami 8.6.78 i 9.9.1-alpha.2 ujawnia metadane schematu przez komunikaty o błędach walidacji GraphQL, co pozwala nieautoryzowanym użytkownikom na rekonstrukcję nazw klas i pól.
- CVE-2026-47138Wysokie
Parse Server przed wersjami 8.6.77 i 9.9.1-alpha.1 jest podatny na atak, w którym nieautoryzowany użytkownik może wysłać złośliwe żądanie HTTP, co prowadzi do nadmiernego zużycia CPU na serwerze.
- CVE-2026-39381Średnie
Parse Server jest podatny na ujawnienie chronionych pól sesji poprzez endpoint GET /sessions/me. Endpoint ten zwraca pola _Session, które administrator skonfigurował jako chronione, podczas gdy inne endpointy poprawnie je usuwają.
- CVE-2026-35200Średnie
Podatność w Parse Server (wersje przed 8.6.73 i 9.7.1-alpha.4) polegająca na możliwości przesłania pliku z rozszerzeniem dozwolonym (np. .txt) ale z nagłówkiem Content-Type niezgodnym z rozszerzeniem (np. text/html). Niektóre adaptery pamięci masowej (S3, GCS) serwują plik z podanym Content-Type, co może prowadzić do ataków.
- CVE-2026-34784Wysokie
Parse Server przed wersjami 8.6.71 i 9.7.1-alpha.1 pozwala na pobieranie plików przez żądania HTTP Range z pominięciem triggera afterFind(Parse.File) i walidatorów, gdy adapter pamięci masowej obsługuje strumieniowanie (np. domyślny GridFS). Umożliwia to dostęp do plików chronionych logiką autoryzacji.
- CVE-2026-34215Średnie
Parse Server przed wersjami 8.6.63 i 9.7.0-alpha.7 zwraca niesanitowane dane uwierzytelniające z endpointu weryfikacji hasła, w tym sekrety MFA TOTP, kody odzyskiwania i tokeny OAuth. Atakujący znający hasło użytkownika może wyodrębnić sekret MFA i generować ważne kody MFA.
- CVE-2026-34595Średnie
W Parse Server przed wersjami 8.6.70 i 9.7.0-alpha.18 uwierzytelniony użytkownik z uprawnieniami find na poziomie klasy może ominąć ustawienie protectedFields w subskrypcjach LiveQuery. Wysyłając subskrypcję z operatorem $or, $and lub $nor jako obiekt podobny do tablicy, ochrona jest pomijana, co pozwala na odczytanie chronionych pól.
- CVE-2026-34574Średnie
Parse Server przed wersjami 8.6.69 i 9.7.0-alpha.14 pozwala uwierzytelnionemu użytkownikowi na ominięcie ochrony niezmienności pól sesji (expiresAt, createdWith) poprzez wysłanie wartości null w żądaniu PUT do punktu końcowego aktualizacji sesji. Umożliwia to unieważnienie wygaśnięcia sesji, czyniąc ją ważną bezterminowo i omijając skonfigurowane zasady długości sesji.
- CVE-2026-34573Wysokie
Parse Server przed wersjami 8.6.68 i 9.7.0-alpha.12 ma podatność na atak DoS przez GraphQL. Wysyłając spreparowane zapytanie z binarnym rozgałęzieniem fragmentów, nieuwierzytelniony atakujący może zablokować pętlę zdarzeń Node.js na kilka sekund, uniemożliwiając działanie innym użytkownikom. Problem dotyczy tylko instalacji z włączonymi opcjami requestComplexity.graphQLDepth lub requestComplexity.graphQLFields.
- CVE-2026-34373Wysokie
Parse Server przed wersjami 8.6.66 i 9.7.0-alpha.10 nie respektuje opcji serwera allowOrigin w API GraphQL, zezwalając na żądania cross-origin z dowolnej strony. REST API poprawnie egzekwuje to ograniczenie.
- CVE-2026-34363Średnie
Parse Server przed wersjami 8.6.65 i 9.7.0-alpha.9 ma lukę w LiveQuery. Gdy wielu klientów subskrybuje tę samą klasę, współdzielone obiekty modyfikowane przez filtry danych wrażliwych mogą powodować wyciek chronionych pól lub danych uwierzytelniających do nieuprawnionych klientów. Ponadto modyfikacje z triggera afterEvent Cloud Code mogą wyciekać do innych subskrybentów.
- CVE-2026-34224Średnie
W Parse Server przed wersjami 8.6.64 i 9.7.0-alpha.8, atakujący posiadający ważny token dostawcy uwierzytelniania oraz jeden kod odzyskiwania MFA lub jednorazowe hasło SMS może utworzyć wiele uwierzytelnionych sesji poprzez wysyłanie równoczesnych żądań logowania do endpointu authData. Obejmuje to gwarancję jednorazowości kodów MFA, umożliwiając utrzymanie sesji nawet po odwołaniu wykrytych sesji przez uprawnionego użytkownika.

