Skip to content
OpenAdvisories

Weakness (CWE)

CWE-917: Improper Neutralization of Special Elements used in an Expression Language Statement

Base Incomplete

The product constructs all or part of an expression language (EL) statement in a framework such as a Java Server Page (JSP) using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended EL statement before it is executed.

How to prevent it (3 mitigations)
  1. Architecture and Design

    Avoid adding user-controlled data into an expression interpreter when possible.

  2. Implementation

    If user-controlled data must be added to an expression interpreter, one or more of the following should be performed:

    - Validate that the user input will not evaluate as an expression

    - Encode the user input in a way that ensures it is not evaluated as an expression

  3. System Configuration, Operation

    The framework or tooling might allow the developer to disable or deactivate the processing of EL expressions, such as setting the isELIgnored attribute for a JSP page to "true".

Source: MITRE CWE-917

34 results · Clear filters · Feed

  • High 8.8

    Apache OFBiz: Unsandboxed Groovy compiled from a service parameter

    Improper Neutralization of Special Elements Used in an Expression Language Statement ('Expression Language Injection') in EmailServices in Apache OFBiz 24.09 before 24.09.08 on all platforms allows a remote authenticated attacker holding only OFBTOOLS_VIEW an…

  • High 8.8
    CVE-2026-83531 Public exploit

    Apache Camel: Camel-Dynamic-Router Control Endpoint Compiles Predicate Expressions Supplied by Control Messages

    Improper Control of Generation of Code ('Code Injection'), Improper Neutralization of Special Elements used in an Expression Language Statement ('Expression Language Injection') vulnerability in Apache Camel. This issue affects Apache Camel: from 4.4.0 before…

  • High 7.4

    Github.com/kuadrant/kuadrant-operator/internal/wasm: github.com/rh-api-management/rhcl-operator-product-build/kuadrant-operator: kuadrant-operator: crafted httproute match values can bypass gateway policy overrides

    A flaw was found in the internal WebAssembly (WASM) shim used by the Kuadrant operator. When generating the CEL predicate that determines whether Gateway-level authentication and rate limiting should run, the shim does not correctly escape values from HTTPRou…

  • High 7.1

    Activiti through 7.1.0.M6 Expression Injection via Mail Task

    Activiti through 7.1.0.M6 fails to validate hash-brace deferred expressions in process variables, allowing attackers to bypass expression filtering. Attackers can inject expressions beginning with #{ that are stored and later evaluated in the full Spring cont…

  • High 8.9
    CVE-2026-65591 Public exploit

    n8n before 1.123.64 Sanitizer Bypass Remote Code Execution

    n8n contains a sanitizer bypass vulnerability in the legacy expression evaluator's computed-member handler. An authenticated user with workflow create or modify permissions can craft a malicious expression to bypass the sanitizer and achieve host-level code e…

  • High 7.5

    Jenkins Script Security Plugin has a script security bypass vulnerability

    Jenkins Script Security Plugin 1402.v94c9ce464861 and earlier does not reject Groovy AST transformation annotations carrying an extensions member, allowing attackers able to run sandboxed Groovy scripts to execute code outside the sandbox if a suitable script…

  • High 8.1
    CVE-2026-41729 Public exploit

    Spring Data REST SpEL Injection via Map Key in JSON Patch

    Spring Data REST is vulnerable to SpEL expression injection through map-typed properties when processing JSON Patch (application/json-patch+json) requests. When a persistent entity exposes a Map-typed property, the JSON Pointer path segment used as the map ke…

  • High 8.1

    Spring Data MongoDB - SpEL Expression Injection via Annotated Query Parameter Binding

    Spring Data MongoDB contains a SpEL (Spring Expression Language) expression injection vulnerability. The issue occurs during parameter binding when a user-defined repository query method is annotated with @Query and utilizes a capture-all placeholder. Affecte…

  • High 7.5

    Banks: Critical Remote Code Execution (RCE) via Jinja2 SSTI

    Banks generates meaningful LLM prompts using a template language that makes sense. Prior to 2.4.2, banks uses jinja2.Environment() (unsandboxed) to render prompt templates. Applications that pass user-supplied strings as the template argument to Prompt() are …

  • High 7.3

    Offline Hospital Management System 5.3.0 allows remote code execution due to an improper Electron renderer configuratio…

  • High 7.3

    xiandafu beetl SpELFunction SpELFunction.java expression language injection

    A vulnerability was identified in xiandafu beetl up to 3.20.2. Affected is an unknown function of the file beetl-classic-integration/beetl-spring-classic/src/main/java/org/beetl/ext/spring/SpELFunction.java of the component SpELFunction. The manipulation lead…

  • High 8.6

    Spring AI's MilvusVectorStore#doDelete(List) implementation is vulnerable to filter-expression injection via unsanitized document IDs

    Spring AI's MilvusVectorStore#doDelete(List) implementation is vulnerable to filter-expression injection via unsanitized document IDs. Spring AI 1.0.x: affected from 1.0.0 through latest 1.0.x; upgrade to 1.0.7 or greater. Spring AI 1.1.x: affected from 1.1.0…

  • High 8.1

    OmniFaces: EL injection via crafted resource name in wildcard CDN mapping

    OmniFaces is a utility library for Faces. Prior to versions 1.14.2, 2.7.32, 3.14.16, 4.7.5, and 5.2.3, there is a server-side EL injection leading to Remote Code Execution (RCE). This affects applications that use CDNResourceHandler with a wildcard CDN mappin…

  • High 8.7

    SurrealDB Injection on Open Notebook

    An improper input validation, together with an overly permissive default CORS configuration in Open Notebook v1.8.1 allows remote attacker to trick a legitimate user to alter or delete arbitrary database entries via specially crafted malicious URL. Depending …

  • High 8.8
    CVE-2026-40897 Public exploit

    Math.js: Unsafe object property setter in mathjs

    Math.js is an extensive math library for JavaScript and Node.js. From 13.1.1 to before 15.2.0, a vulnerability allowed executing arbitrary JavaScript via the expression parser of mathjs. You can be affected when you have an application where users can evaluat…

  • High 8.8

    Happy DOM ECMAScriptModuleCompiler: unsanitized export names are interpolated as executable code

    Happy DOM is a JavaScript implementation of a web browser without its graphical user interface. In versions 15.10.0 through 20.8.7, a code injection vulnerability in `ECMAScriptModuleCompiler` allows an attacker to achieve Remote Code Execution (RCE) by injec…

  • High 8.1

    Handlebars.js has JavaScript Injection via AST Type Confusion by tampering @partial-block

    Handlebars provides the power necessary to let users build semantic templates. In versions 4.0.0 through 4.7.8, the `@partial-block` special variable is stored in the template data context and is reachable and mutable from within a template via helpers that a…

  • High 8.6

    CVE-2026-22729: JSONPath Injection in Spring AI Vector Stores FilterExpressionConverter

    A JSONPath injection vulnerability in Spring AI's AbstractFilterExpressionConverter allows authenticated users to bypass metadata-based access controls through crafted filter expressions. User-controlled input passed to FilterExpressionBuilder is concatenated…

  • High 8.1

    jsPDF has a PDF Injection in AcroFormChoiceField which allows Arbitrary JavaScript Execution

    jsPDF is a library to generate PDFs in JavaScript. Prior to 4.1.0, user control of properties and methods of the Acroform module allows users to inject arbitrary PDF objects, such as JavaScript actions. If given the possibility to pass unsanitized input to on…

  • High 8.8

    DiscussionTools should use better regex

    Improper Neutralization of Special Elements used in an Expression Language Statement ('Expression Language Injection') vulnerability in The Wikimedia Foundation Mediawiki - DiscussionTools Extension allows Regular Expression Exponential Blowup.This issue affe…

  • High 7.5

    Spring Cloud Gateway Webflux SpEL Injection Vulnerability Allowing Exposure of Environment Variables

    The following versions of Spring Cloud Gateway Server Webflux may be vulnerable to the ability to expose environment variables and system properties to attackers. An application should be considered vulnerable when all the following are true: * The applicatio…

  • High 8.6

    EL Injection Vulnerability in Hitachi Tuning Manager

    Expression Language Injection vulnerability in Hitachi Tuning Manager on Windows, Linux, Solaris allows Code Injection.This issue affects Hitachi Tuning Manager: before 8.8.7-00.

  • High 7.6

    EL Injection Vulnerability in Hitachi Global Link Manager

    Expression Language Injection vulnerability in Hitachi Global Link Manager on Windows allows Code Injection.This issue affects Hitachi Global Link Manager: before 8.8.7-03.

  • High 8.8

    InSpec Archive Command Vulnerable to Maliciously Crafted Profile

    Archive command in Chef InSpec prior to 4.56.58 and 5.22.29 allow local command execution via maliciously crafted profile.

  • High 7.3

    EL Injection Vulnerability in Hitachi Replication Manager

    Expression Language Injection vulnerability in Hitachi Replication Manager on Windows, Linux, Solaris allows Code Injection.This issue affects Hitachi Replication Manager: before 8.8.5-02.

  • High 8.0

    Apache Ambari: Allows authenticated metrics consumers to perform RCE

    SpringEL injection in the metrics source in Apache Ambari version 2.7.0 to 2.7.6 allows a malicious authenticated user to execute arbitrary code remotely. Users are recommended to upgrade to 2.7.7.

  • High 8.0

    Apache Ambari: A malicious authenticated user can remotely execute arbitrary code in the context of the application.

    SpringEL injection in the server agent in Apache Ambari version 2.7.0 to 2.7.6 allows a malicious authenticated user to execute arbitrary code remotely. Users are recommended to upgrade to 2.7.7.

  • High 8.8

    Apache Jena: Exposure of execution in script engine expressions.

    There is insufficient restrictions of called script functions in Apache Jena versions 4.8.0 and earlier. It allows a remote user to execute javascript via a SPARQL query. This issue affects Apache Jena: from 3.7.0 through 4.8.0.

  • High 7.2

    Improper Input Validation in GeoServer

    GeoServer is an open source software server written in Java that allows users to share and edit geospatial data. The GeoServer security mechanism can perform an unchecked JNDI lookup, which in turn can be used to perform class deserialization and result in ar…

  • High 8.1
    CVE-2021-21479 EPSS 10%

    Remote Code Execution in SCIMono

    In SCIMono before 0.0.19, it is possible for an attacker to inject and execute java expression compromising the availability and integrity of the system.

  • High 7.7

    Remote Code Execution in SyliusResourceBundle

    In SyliusResourceBundle before versions 1.3.14, 1.4.7, 1.5.2 and 1.6.4, rrequest parameters injected inside an expression evaluated by `symfony/expression-language` package haven't been sanitized properly. This allows the attacker to access any public service…

  • High 8.8
    CVE-2020-10199 Exploited Public exploit EPSS 99%

    Nexus Repository Manager 3 - Remote Code Execution

    Sonatype Nexus Repository before 3.21.2 allows JavaEL Injection (issue 1 of 2).

    KEV Nov 3, 2021
  • High 7.5

    Apache MyFaces Vulnerable to EL Injection

    Information disclosure vulnerability in Apache MyFaces Core 2.0.1 through 2.0.10 and 2.1.0 through 2.1.4 allows remote attackers to inject EL expressions via crafted parameters.

  • High 8.8
    CVE-2010-1871 Exploited Public exploit EPSS 83%

    JBoss Seam 2 (jboss-seam2), as used in JBoss Enterprise Application Platform 4.3.0 for Red Hat Linux, does not properly…

    KEV Dec 10, 2021