CVE-2026-54133

Critical

Description

jmespath.php allows users to use JMESPath, software for declaratively specifying how to extract elements from a JSON document, in PHP applications with PHP data structures. Versions prior to 2.9.1 can generate and execute attacker-controlled PHP code when `JmesPath\CompilerRuntime` is used with an attacker-controlled JMESPath expression. The compiler emits parsed JMESPath function names into generated PHP source without sufficient escaping. A crafted expression can cause the generated cache file to contain executable attacker-controlled PHP, which is then loaded by the compiler runtime. The issue is patched in `2.9.1` and later. As a workaround, disable `JP_PHP_COMPILE` and do not use `JmesPath\CompilerRuntime` with attacker-controlled expressions. Use the default `AstRuntime` for untrusted expressions. Applications that must continue accepting untrusted JMESPath expressions before upgrading should ensure those expressions are never evaluated by the compiler runtime.

SeverityCritical
CVSS9.8
Exploit probability—
ProductJmespath
PublishedJun 12, 2026
First seenJun 12, 2026

How to fix

Update
  • jmespath jmespath2.9.1 or later
  • mtdowling/jmespath.php2.9.1 or later

Affected products

ProductAffected versionsFixed in
jmespath jmespathv < 2.9.12.9.1
mtdowling/jmespath.phpPackagistv < 2.9.12.9.1

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.

CVE-2026-54133 · Jmespath · Dark Radar