Skip to content
OpenAdvisories
Critical · 9.3 CVE-2026-77414 EUVD-2026-64083GHSA-2943-5xfg-gq5f

JSONata: Arbitrary Code Execution via crafted JSONata expressions

Published Aug 21, 2026 · Updated Aug 26, 2026 · Assigned by GitHub_M

Description

JSONata is a JSON query and transformation language. Prior to 1.8.8 and 2.2.1, the src/jsonata.js environment.lookup function used a bypassable hasOwnProperty check. Crafted expressions could use $hasOwnProperty, $spread, $string, prototype access, and $constructor to reach the object prototype and invoke process.getBuiltinModule with child_process, executing arbitrary code with the privileges of the host process. This issue is fixed in versions 1.8.8 and 2.2.1.

Affected products

VendorProductAffectedFixed
jsonata-js jsonata < 1.8.8, >= 2.0.0, < 2.2.1 —

Affected packages

EcosystemPackageAffectedFixedRecord
npm jsonata >= 2.0.0, < 2.2.1 2.2.1 GHSA-2943-5xfg-gq5f
npm jsonata < 1.8.8 1.8.8 GHSA-2943-5xfg-gq5f

References