Katalog CVE

CVE-2026-92917

WysokieCVSS 7.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.33%

Percentyl 27 - wyżej niż 27% wszystkich znanych CVE

Streszczenie

Grav to flat-file CMS. W wersjach 2.0.0-rc.1 do 2.0.21 sandbox treści Twig nie ogranicza filtrów dump i serialize (print_r, vardump, json_encode, yaml_encode, string), ponieważ GravExtension::assertSandboxDumpSafe() sprawdza stan sandboxa bez argumentu Source, przez co zabezpieczenie nigdy się nie uruchamia. Uwierzytelniony użytkownik z prawem edycji stron może wyrenderować {{ config|print_r }} i ujawnić całą scaloną konfigurację Grav, w tym sekrety wtyczek, takie jak dane SMTP, tokeny API, sekrety webhooków i hasła backendu cache.

Ocena ryzyka

Uwierzytelniony użytkownik z uprawnieniami edycji stron może ujawnić krytyczne sekrety konfiguracyjne, co może prowadzić do przejęcia kont, dostępu do systemów zewnętrznych i dalszej eskalacji. Grav 1.7 nie jest podatny, ponieważ nie zawiera sandboxa treści Twig.

Rekomendacja

Zaktualizuj Grav do wersji 2.0.22, w której problem został naprawiony. Do czasu aktualizacji ogranicz prawa edycji stron do zaufanych użytkowników i rozważ wyłączenie przetwarzania Twig w treści stron.

Inne podatności w Grav

Zobacz wszystkie
Oryginalny opis (angielski, źródło NVD)

Grav is a flat-file CMS. In versions 2.0.0-rc.1 through 2.0.21, the Twig content sandbox fails to restrict the dump and serialize filters (print_r, vardump, json_encode, yaml_encode, string): GravExtension::assertSandboxDumpSafe() determines sandbox state by calling SandboxExtension::isSandboxed() without a Source argument, which reports only the global sandbox flag that Grav never enables, so the guard added in GHSA-mc5q-6hpj-rp7j never executes. As a result, an authenticated user with page-edit rights can render {{ config|print_r }} in page content with Twig processing enabled and dump Grav's entire merged configuration — print_r reflects the real Config object held in a private property of the SandboxConfig facade, bypassing its path redaction — exposing plugin secrets such as SMTP credentials, API tokens, webhook secrets and cache backend passwords. Grav 1.7 is not affected because it ships no Twig content sandbox. The issue is fixed in 2.0.22, where the affected filters are registered with Twig's needs_is_sandboxed flag.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS