CVE-2026-100671
Grav precedente alla 2.0.25 Furto del Cookie di Sessione tramite Twig Sandbox
- Pubblicato
- 26 set 2026
- Aggiornato
- 26 set 2026
- Assegnazione CNA
- VulnCheck
- Evidenza osservata
- 3 ott 2026
CVSS primario
nvd · CVSS 4.0
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:XRiepilogo
Grav è un CMS flat-file. Nelle versioni dalla 2.0.19 alla 2.0.24 — e nelle versioni dalla 2.0.0 alla 2.0.18 e 1.7.x solo dove il contenuto Twig è stato esplicitamente abilitato — il contenuto della pagina creato da un utente con soli permessi di scrittura sulla pagina viene renderizzato attraverso una sandbox Twig che consente get_cookie(), che restituisce qualsiasi cookie inviato con la richiesta corrente, incluso il cookie di sessione del visitatore. Poiché la lettura avviene lato server tramite filter_input(INPUT_COOKIE, ...), gli attributi HttpOnly, Secure e SameSite non offrono alcuna protezione. Grav memorizza quindi l'output finale post-Twig in una cache del contenuto della pagina indicizzata solo sull'identità della pagina e sul checksum della configurazione, senza dimensione di sessione, utente o richiesta e senza bypass per i visitatori autenticati. Una pagina pubblicata da un utente con permessi di scrittura sulla pagina può quindi catturare l'identificatore di sessione del prossimo amministratore che la visualizza, dopodiché l'output memorizzato nella cache fornisce quell'identificatore ai visitatori non autenticati, che possono riprodurre il cookie per autenticarsi come quell'amministratore. Dalla 2.0.19, security.twig_content.process_enabled è impostato per impostazione predefinita su true e Security::applyTwigContentDefault() deriva il flag process.twig di ogni pagina da quel gate, quindi il contenuto Twig viene eseguito su ogni pagina senza alcuna azione da parte del frontmatter o dell'operatore. Corretto nella 2.0.25; la 1.7.x è al di fuori dell'ambito del backport.
Fonti
Verificatore proof-of-concept solo locale per CVE-2026-100671, che riproduce la divulgazione e il replay del cookie di sessione della cache delle pagine Twig di Grav su target loopback.
Utilizzo responsabile
Utilizza le informazioni sulla vulnerabilità solo sui sistemi che possiedi o che sei autorizzato a testare. Kitploit si collega ai metadati della ricerca pubblica e non memorizza codici exploit o payload dannosi.