CVE-2026-75829
WysokieCVSS 8.1Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 21 - wyżej niż 21% wszystkich znanych CVE
Streszczenie
Wtyczka grav-plugin-api przed wersją 1.0.15 nie waliduje zawartości Twig w punkcie końcowym translate(), co pozwala atakującym z uprawnieniami api.pages.write na utrwalanie stron z włączonym process.twig. Atakujący mogą przesłać spreparowane parametry header i content, aby wykonać ładunki wstrzyknięcia szablonów po stronie serwera, które są oceniane podczas renderowania.
Ocena ryzyka
Ryzyko polega na zdalnym wykonaniu kodu po stronie serwera, co może prowadzić do pełnego przejęcia kontroli nad serwerem i naruszenia poufności danych.
Rekomendacja
Zaleca się natychmiastową aktualizację wtyczki grav-plugin-api do wersji 1.0.15 lub nowszej oraz ograniczenie uprawnień api.pages.write tylko do zaufanych użytkowników.
Inne podatności w grav-plugin-api
Zobacz wszystkie- CVE-2026-86195Wysokie
grav-plugin-api przed wersją 1.0.20 zawiera podatność eskalacji uprawnień w InvitationsController, gdzie metoda stripSuperFlags() usuwa tylko zagnieżdżone super flagi, ale nie usuwa odpowiedników z kropką, takich jak api.super. Menedżer niebędący super użytkownikiem z uprawnieniami api.access i api.users.write może utworzyć zaproszenie z super flagą z kropką w ładunku dostępu, która omija zabezpieczenia i utrwala się na nowym koncie. Atakujący mogą zaakceptować zaproszenie przez publiczny punkt końcowy bez rzeczywistej interakcji zaproszonego, aby utworzyć konto super-admina i natychmiast otrzymać ważny JWT do pełnej kontroli nad stroną.
- CVE-2026-86193Wysokie
grav-plugin-api przed wersją 1.0.20 nie waliduje uprawnień super odziedziczonych po grupach w zabezpieczeniach zarządzania użytkownikami, co pozwala menedżerom niebędącym super użytkownikami modyfikować konta super-adminów. Atakujący z uprawnieniami api.access i api.users.write mogą zmienić pola hasła na kontach z super uprawnieniami grupowymi, aby uzyskać pełną kontrolę administracyjną.
- CVE-2026-75830Wysokie
grav-plugin-api (getgrav/grav-plugin-api) w wersjach >= 1.0.0-beta.10 i <= 1.0.14 zawiera podatność na przechodzenie po ścieżkach w metodzie PagesController::batchCopy(). Niekompletna poprawka dla GHSA-qjq4-jp55-4mx2 pozostawiła niesprawdzony parametr 'suffix' kontrolowany przez użytkownika (przez POST /api/v1/pages/batch). Uwierzytelniony użytkownik z uprawnieniem api.pages.write (poziom edytora, nie super-admin) może podać sekwencje przechodzenia po ścieżkach (np. /../../../) w parametrze suffix, aby uciec z zamierzonego katalogu user/pages/ i zapisać treść strony oraz media strony kontrolowane przez atakującego w dowolnych lokalizacjach systemu plików zapisywalnych przez proces serwera WWW. Podatność naprawiono w wersji 1.0.15.
- CVE-2026-74908Średnie
Grav plugin-api przed wersją 1.0.15 zawiera podatność na wstrzykiwanie skryptów, gdzie sanitizer SVG sprawdza tylko dokładne rozszerzenie 'svg', pozwalając plikom .svgz i .xhtml ominąć sanityzację i być przechowywanym bez oczyszczenia. Atakujący z uprawnieniami api.media.write mogą przesyłać pliki zawierające wykonywalne ładunki skryptów, które wykonują się w originie witryny, gdy są dostępne przez administratorów lub odwiedzających.
- CVE-2026-72828Wysokie
Grav Plugin API (getgrav/grav-plugin-api) przed wersją 1.0.13 nie egzekwuje limitów zakresu kluczy API w InvitationsController. Decyzje strip-super i accept-groups są oparte na zwykłym sprawdzeniu isSuperAdmin() zamiast sprawdzenia uprawnień uwzględniającego zakres, więc klucz API o najmniejszych uprawnieniach (zakres api.users.write) wygenerowany na koncie super może utworzyć rekord zaproszenia zawierający flagi dostępu super-admina. Po zaakceptowaniu zaproszenia te flagi są zapisywane dosłownie na nowym koncie, co prowadzi do eskalacji uprawnień do w pełni kontrolowanego konta super.
Oryginalny opis (angielski, źródło NVD)
grav-plugin-api versions before 1.0.15 fail to validate Twig content in the translate() endpoint, allowing attackers with api.pages.write permission to persist pages with process.twig enabled. Attackers can submit crafted header and content parameters to execute server-side template injection payloads that are evaluated at render time.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

