CVE 9.8 CRITICAL

jmespath.php has CompilerRuntime code injection via unescaped function names_CVE-2026-54133

9.8 / 10
CRITICAL
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

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.

AI Analysis

CompilerRuntime code injection via unescaped function names in jmespath.php

Basic Information

ID CVE-2026-54133
Source GitHub_M
Published Jun 12, 2026 at 13:56
Modified Jun 12, 2026 at 15:07

Affected Product

Vendor jmespath
Product jmespath.php
Version < 2.9.1
Affected Versions jmespath jmespath.php < 2.9.1

CWE Classification

AI Assessment

AI Score 9.8 / 10
AI Severity Critical
Vendor jmespath
Product jmespath.php
Version < 2.9.1

References

💭 Join the Security Discussion

🔒 Your email address will not be published. Required fields are marked *

⚠️ Please be respectful and constructive in your comments. Security discussions should remain professional.