Security Resilience

CVE-2026-24002

Getgrist Grist-Core ≤ 1.7.9

Published
22 January 2026
Modified
17 February 2026
Patch / advisory
CVSS Score v3.1 9.0
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H
EPSS Score 0.0052 43th percentile
Risk Priority 64 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2026-24002 is a critical-severity Injection (CWE-74) vulnerability in Getgrist Grist-Core. Its CVSS base score is 9.0 (Critical).

Operationally, ranked at the 43th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to SI-10 (Information Input Validation) — see the control section below for these in your framework.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

CVE-2026-24002 is a sandbox escape vulnerability in Grist, an open-source spreadsheet software that uses Python as its formula language. The issue affects the pyodide-based sandbox method when running on Node.js, which lacks an effective isolation barrier. This allows malicious Python formulas in untrusted spreadsheets to execute arbitrary processes on the hosting server if the `GRIST_SANDBOX_FLAVOR` environment variable is set to `pyodide`. The vulnerability is rated at CVSS 9.0 (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H) and is associated with CWE-74 (Improper Neutralization of Special Elements used in an SQL Command).

An attacker can exploit this vulnerability by crafting a malicious Grist document containing Python formulas that escape the pyodide sandbox. Exploitation requires a Grist user or administrator to configure the server with `GRIST_SANDBOX_FLAVOR=pyodide` and then open the document, enabling network-based attacks with no privileges needed but high complexity due to the need for a targeted document. Successful exploitation grants arbitrary code execution on the server, resulting in high confidentiality, integrity, and availability impacts with a changed scope.

The Grist security advisory (GHSA-7xvx-8pf2-pv5g) and documentation confirm the issue is fixed in Grist version 1.7.9 and later by running pyodide under Deno for improved sandboxing. As a workaround, administrators should set `GRIST_SANDBOX_FLAVOR` to `gvisor` to use the gvisor-based sandbox instead.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

Grist is spreadsheet software using Python as its formula language. Grist offers several methods for running those formulas in a sandbox, for cases where the user may be working with untrusted spreadsheets. One such method runs them in pyodide, but…

more

pyodide on node does not have a useful sandbox barrier. If a user of Grist sets `GRIST_SANDBOX_FLAVOR` to `pyodide` and opens a malicious document, that document could run arbitrary processes on the server hosting Grist. The problem has been addressed in Grist version 1.7.9 and up, by running pyodide under deno. As a workaround, a user can use the gvisor-based sandbox by setting `GRIST_SANDBOX_FLAVOR` to `gvisor`.

CWE(s)

Related Threats

CVEs Like This One

CVE-2024-39906Shared CWE-74
CVE-2023-36210Shared CWE-74
CVE-2024-50340Shared CWE-74
CVE-2025-47867Shared CWE-74
CVE-2026-34041Shared CWE-74
CVE-2024-28181Shared CWE-74
CVE-2024-28114Shared CWE-74
CVE-2026-41234Shared CWE-74
CVE-2026-35515Shared CWE-74
CVE-2023-42135Shared CWE-74

Affected Assets

getgrist
grist-core
≤ 1.7.9

Mitigating Controls

Mitigating Controls (NIST 800-53 r5) AI

SI-10 directly requires validation of information inputs to reject malformed or special-element content before it reaches downstream parsers.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

Security testing in development catches injection vulnerabilities before release.

finds

Monitoring activities can identify active injection attacks after they occur.

prevents

Secure coding standards require proper neutralization of special elements, directly addressing CWE-74.

Hardening callouts derived

DISA STIG baselines are authored against specific weaknesses. Where this CVE cites a broad weakness class, the mapping is not asserted at that abstraction (owner ruling, 2026-09-25: grade only at Base and below), so no rule is shown here rather than a rule shown against the wrong grain.

  • No fine-grained STIG row for CWE-74, a class-level weakness, and none of its children carries one either.

References