Impact
Grist is a spreadsheet application that uses Python as its formula language. The vulnerability arises from the use of the pyodide sandbox option, which, when run under Node, lacks a proper sandbox barrier. A malicious spreadsheet opened by a user running Grist with the environment variable GRIST_SANDBOX_FLAVOR set to pyodide can execute arbitrary processes on the server that hosts Grist. This flaw is classified as CWE‑74, indicating improper input validation leading to code execution. The CVSS score reflects a high severity impact of 9.1.
Affected Systems
The product affected is Grist Core from Grist Labs. Versions prior to 1.7.9 are vulnerable when the GRIST_SANDBOX_FLAVOR variable is set to pyodide. The vulnerability is mitigated in Grist 1.7.9 and later, which runs pyodide under an additional deno sandbox, and also in configurations that use the gvisor sandbox.
Risk and Exploitability
Although the EPSS score is below 1%, the high CVSS rating and the direct nature of the flaw give it significant risk. The attack requires an attacker to upload or otherwise provide a malicious spreadsheet and to trigger Grist with the pyodide sandbox flavor. Once the document is opened, the attacker can run arbitrary commands on the host system, potentially compromising the entire server. The flaw is not listed in the CISA KEV catalog, but the absence of a sandbox barrier makes exploitation straightforward if the environment permits the insecure pyodide option.
OpenCVE Enrichment