{"description":"Trending threats, MITRE ATT\u0026CK coverage, and detection metadata. Fed continuously.","favicon":"https://feed.craftedsignal.io/favicon-32x32.png","feed_url":"https://feed.craftedsignal.io/products/grav-2.0.0-rc.1-through-2.0.21/feed.json","home_page_url":"https://feed.craftedsignal.io/","icon":"https://feed.craftedsignal.io/apple-touch-icon.png","items":[{"_cs_actors":[],"_cs_cpes":["cpe:2.3:a:getgrav:grav:*:*:*:*:*:*:*:*"],"_cs_cves":[{"cvss":7.5,"id":"CVE-2026-92917"}],"_cs_exploited":false,"_cs_has_poc":false,"_cs_poc_references":[],"_cs_products":["Grav (2.0.0-rc.1 through 2.0.21)","Grav (\u003c= 2.0.15)"],"_cs_severities":["high"],"_cs_tags":["cms","web-application","security-misconfiguration","information-disclosure"],"_cs_type":"advisory","_cs_vendors":["Grav"],"content_html":"\u003cp\u003eGrav CMS, a popular flat-file content management system, contains a vulnerability (CVE-2026-92917) within its Twig content sandbox implementation in versions 2.0.0-rc.1 through 2.0.21. The vulnerability stems from an incorrect implementation of the sandbox security check in \u003ccode\u003eGravExtension::assertSandboxDumpSafe()\u003c/code\u003e. Instead of checking if specific filters like \u003ccode\u003eprint_r\u003c/code\u003e, \u003ccode\u003ejson_encode\u003c/code\u003e, or \u003ccode\u003eyaml_encode\u003c/code\u003e are sandboxed relative to the source, the extension queries the global sandbox flag, which remains permanently disabled in Grav. Consequently, the safety guards intended to restrict data dumping fail. An authenticated attacker with page-edit permissions can leverage this by embedding Twig template code within a page. When rendered, the application processes the request, ignores the sandbox restrictions, and outputs the entire internal \u003ccode\u003eConfig\u003c/code\u003e object, including sensitive secrets stored in private properties that are normally redacted. This exposure allows attackers to harvest SMTP credentials, API tokens, webhook secrets, and cache backend passwords. The vulnerability is resolved in Grav version 2.0.22, where the filters are correctly registered with Twig’s \u003ccode\u003eneeds_is_sandboxed\u003c/code\u003e flag.\u003c/p\u003e\n\u003ch2 id=\"impact\"\u003eImpact\u003c/h2\u003e\n\u003cp\u003eSuccessful exploitation allows an authenticated user to gain access to sensitive application configuration data. This includes administrative secrets required for third-party integrations and backend services. Exposure of these credentials can facilitate further compromise of internal infrastructure, external services, and data exfiltration, significantly increasing the attacker's footprint within the environment.\u003c/p\u003e\n\u003ch2 id=\"recommendation\"\u003eRecommendation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade all instances of Grav CMS to version 2.0.22 or later immediately to patch CVE-2026-92917.\u003c/li\u003e\n\u003cli\u003eAudit web application logs for administrative users accessing Twig-related rendering functions, specifically looking for attempts to use \u003ccode\u003eprint_r\u003c/code\u003e, \u003ccode\u003evardump\u003c/code\u003e, or \u003ccode\u003ejson_encode\u003c/code\u003e filters within page content updates.\u003c/li\u003e\n\u003cli\u003eRevoke and rotate all secrets (SMTP, API tokens, webhooks) found in the Grav configuration if a compromise is suspected to have occurred between version 2.0.0-rc.1 and 2.0.22.\u003c/li\u003e\n\u003c/ul\u003e\n","date_modified":"2026-09-18T01:12:38Z","date_published":"2026-09-17T13:57:24Z","id":"https://feed.craftedsignal.io/briefs/2026-09-grav-cms-sandbox-bypass/","summary":"CVE-2026-92917 allows an authenticated user with page-edit privileges in Grav CMS 2.0.0-rc.1 through 2.0.21 to bypass Twig sandboxing and exfiltrate the full application configuration, including API keys and credentials.","title":"Grav CMS Twig Sandbox Bypass via Configuration Exposure","url":"https://feed.craftedsignal.io/briefs/2026-09-grav-cms-sandbox-bypass/"}],"language":"en","title":"CraftedSignal Threat Feed - Grav (2.0.0-Rc.1 Through 2.0.21)","version":"https://jsonfeed.org/version/1.1"}