CVE-2026-112954
ŚrednieCVSS 5.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 22 - wyżej niż 22% wszystkich znanych CVE
Streszczenie
W ApostropheCMS przed wersją 4.34.0 publiczny typ REST API korzystający z publicApiProjection może ujawniać informacje o wykluczonych polach wyszukiwania lub sortowania poprzez oracle'e przynależności do wyników wyszukiwania i kolejności sortowania. Zwracane pola nadal są filtrowane przez projekcję, więc problem pozwala na ukierunkowane wnioskowanie o ukrytych wartościach, a nie na nieograniczony zrzut pól.
Ocena ryzyka
Atakujący może wywnioskować wartości ukrytych pól (np. wykluczonych z projekcji) poprzez obserwację wyników wyszukiwania i sortowania, co może prowadzić do wycieku informacji. Ryzyko dotyczy organizacji używających ApostropheCMS z publicznym API i projekcją publicApiProjection.
Rekomendacja
Zaktualizuj ApostropheCMS do wersji 4.34.0 lub nowszej. Przejrzyj konfigurację publicznych typów API i projekcji, aby ograniczyć ekspozycję wrażliwych pól.
Inne podatności w ApostropheCMS
Zobacz wszystkie- CVE-2026-113711Wysokie
W ApostropheCMS przed wersją 4.33.0 (oraz import-export przed 3.7.0) trasy importu wywołują bigUploadMiddleware bez wczesnego callbacku autoryzacji. Nieuwierzytelnione żądania mogą wykonać inicjalizację uploadu, zapis chunków, przetwarzanie tymczasowe i zadeklarowane przez atakującego sprzątanie, zanim późniejsza kontrola użytkownika odrzuci import.
- CVE-2026-113710Średnie
ApostropheCMS przed wersją 4.33.0 ma endpoint samoobsługowej zmiany hasła, który weryfikuje bieżące hasło, ale nie korzysta z mechanizmu licznika nieudanych prób, ograniczania, opóźnienia ani blokady modułu logowania. Atakujący z ważną uwierzytelnioną sesją może wielokrotnie zgadywać bieżące hasło bez otrzymania blokady lub ograniczenia. Problem naprawiono w wersji 4.33.0.
- CVE-2026-113670Średnie
ApostropheCMS przed wersją 4.33.0 ma w rdzeniowym REST API stron odczyt pełnych dokumentów stron z .permission(false) w getOne oraz w zrzucie drzewa all=1, co omija sprawdzenia viewRole typu strony, visibility: private i visibility: loginRequired. Nieuwierzytelnieni odwiedzający i kontrybutorzy o niskich uprawnieniach mogą odczytać treść stron przeznaczonych tylko dla administratorów i niepublicznych za pomocą _id/slug. Problem naprawiono w wersji 4.33.0.
- CVE-2026-113668Średnie
ApostropheCMS przed wersją 4.33.0 ma trasę REST GET /api/v1/<piece-type>/:_id/locales (oraz równoważną trasę stron), która nie stosuje bramki publicApiCheckAsync wymuszanej przez inne trasy odczytu ApostropheCMS. Nieuwierzytelniony wywołujący może zapytać tę trasę dla dowolnego _id dokumentu i dowiedzieć się, czy dokument istnieje oraz w jakich lokalizacjach jest opublikowany — ujawnienie istnienia dokumentu i metadanych lokalizacji, które API odczytu powinno normalnie chronić. Problem naprawiono w wersji 4.33.0.
- CVE-2026-113667Średnie
W integracjach CAPTCHA (Form, login-recaptcha, login-hcaptcha) dla ApostropheCMS token odpowiedzi użytkownika jest wstawiany bez kodowania do żądania weryfikacji u dostawcy. Spreparowane tokeny mogą przemycać parametry żądania i zakłócać weryfikację CAPTCHA oraz chronione nią formularze lub logowanie. Możliwe jest automatyczne sondowanie obejścia, ale nie potwierdzono skutecznego obejścia CAPTCHA ani ujawnienia sekretu.
- CVE-2026-113666Wysokie
W db-connect przed 1.1.0 i ApostropheCMS przed 4.33.0 konto z dostępem view-draft może przesłać ścieżkę wykluczenia projekcji przechodzącą przez łańcuch prototypu konstruktora do współdzielonego elementu prototypu, gdy używany jest adapter SQLite, PostgreSQL lub multipostgres. Helper unsetNestedField usuwa wtedy współdzielony element runtime, powodując trwałe skutki dla integralności i dostępności procesu; domyślny adapter MongoDB nie jest podatny.
- CVE-2026-113662Średnie
W module import-export ApostropheCMS przed wersją 3.7.0 uwierzytelniony użytkownik z dostępem do importu dla docelowego typu może podać obiekt lub operator jako wartość klucza aktualizacji, powodując dopasowanie zapytania importu do niezidentyfikowanego istniejącego dokumentu, który użytkownik ma ogólne uprawnienie do edycji. Normalny filtr uprawnień findForEditing nadal ogranicza kandydatów, więc luka nie pozwala na nadpisanie dowolnej chronionej treści bez uprawnień.
- CVE-2026-113660Średnie
W ApostropheCMS przed wersją 4.33.0 API exist-in-locale pozwala uwierzytelnionemu użytkownikowi o niskich uprawnieniach ustalić, czy ograniczone dokumenty istnieją w określonym locale i trybie, w tym w trybie roboczym. Endpoint zwraca identyfikatory zlokalizowanych dokumentów bez stosowania kryteriów autoryzacji na poziomie dokumentu. Luka została naprawiona w wersji 4.33.0.
- CVE-2026-113655Średnie
W ApostropheCMS przed wersją 4.33.0 uwierzytelniony redaktor z uprawnieniami do edycji zwykłej strony zagnieżdżonej pod ograniczonym rodzicem może użyć operacji przenoszenia stron w obrębie tego samego rodzica, aby zmienić kolejność rodzeństwa bez uprawnień do tworzenia w tym rodzicu. Obejście dotyczy wyłącznie kolejności rodzeństwa, a nie dowolnej modyfikacji treści, utraty poufności ani tworzenia ograniczonego zagnieżdżenia.
- CVE-2026-113653Średnie
W ApostropheCMS przed wersją 4.33.0 viewRole nie jest stosowana do anonimowych odwiedzających, gdy deweloper udostępnia obiekty użytkowników przez publicznie renderowaną relację lub jawnie włączone publiczne API. Niewystarczająco ograniczone szablony, w tym serializacja całego powiązanego obiektu użytkownika, mogą warunkowo ujawnić pola użytkownika, ale hasła są przechowywane osobno i nie są objęte problemem.
Oryginalny opis (angielski, źródło NVD)
ApostropheCMS is an open-source Node.js content management system. Prior to 4.34.0, a public REST API type that uses publicApiProjection can expose excluded searchable or sortable field information through search membership and sort ordering oracles. Returned fields remain filtered by the projection, so the issue permits targeted inference about hidden values rather than an unrestricted field dump. This issue is fixed in version 4.34.0.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

