Improper Neutralization of Special Elements used in an Expression Language Statement
CWE-917
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.
We track 62 vulnerabilities of this type. 100% are rated high or critical, and the average CVSS score is 8.9. 9 have been exploited in real attacks.
How this weakness is prevented
- Architecture and Design: Avoid adding user-controlled data into an expression interpreter when possible.
- 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
- 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.
Latest Improper Neutralization of Special Elements used in an Expression Language Statement vulnerabilities
- 7.1 High severity
Edito CMS: Improper Neutralization of Special Elements used in an Expression Language Statement
Edito CMS is vulnerable to Dynamic LINQ injection. Due to improper input validation, an authenticated attacker can inject conditional expressions into the sort parameter of paginated administrative endpoints. Analyzing the returned result order allows the atta
- 8.8 High severity
Apache OFBiz: Improper Neutralization of Special Elements used in an Expression Language Statement
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 and
- 9.8 Critical severity
Camunda 7: Improper Neutralization of Special Elements used in an OS Command
Camunda 7.24.0 before 7.24.14 and 7.23.0 before 7.23.17 contains an expression injection vulnerability where AdhocQueryValidator.validate() fails to check sub-query expression maps within the orQueries field exposed by TaskQueryDto, allowing authenticated user
- 8.8 High severity
Apache Camel: Improper Control of Generation of Code
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
- 7.4 High severity
Red Hat Connectivity Link 1.4: Improper Neutralization of Special Elements used in an Expression Language Statement
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 HTTPRout
- 9.8 Critical severity
Apache Struts: Improper Neutralization of Special Elements used in an Expression Language Statement
Improper neutralization of special elements used in an expression language statement ('Expression Language Injection') vulnerability in Apache Struts. If the application is configured to use the legacy RESTful action mapper, a crafted request can inject an OGN
- 9.1 Critical severity
Apache WSS4J: Improper Neutralization of Special Elements used in an Expression Language Statement
In the StAX streaming WS-SecurityPolicy validator, certain relative or unsupported XPath expressions can be converted into paths that never match the actual XML element path. A remote SOAP peer may therefore send a required element without the expected signatu
- 7.1 High severity
Activiti: Improper Neutralization of Special Elements used in an Expression Language Statement
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 conte
- 8.8 High severity
n8n: Improper Neutralization of Special Elements used in an Expression Language Statement
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 ex
- 8.5 High severity
Jenkins Script Security Plugin: Improper Neutralization of CRLF Sequences
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
- 9.8 Critical severity
Apinizer: Improper Neutralization of Special Elements used in an Expression Language Statement
Improper neutralization of special elements used in an expression language statement ('expression language injection') vulnerability in Soagen Informatics Technologies Software and Consulting Inc. Apinizer allows Code Injection. This issue affects Apinizer: fr
- 8.1 High severity
Spring Data REST: Improper Neutralization of Special Elements used in an Expression Language Statement
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 key
- 8.1 High severity
Spring Data MongoDB: Improper Neutralization of Special Elements used in an Expression Language Statement
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. Affected
- 7.5 High severity
Securly Chrome Extension: Improper Neutralization of Special Elements used in an Expression Language Statement
Version 3.0.7 of the Securly Chrome Extension downloads config.json over HTTP and compiles server-provided patterns as JavaScript regular expressions via new RegExp() without complexity validation. An on-path attacker can inject specific patterns to cause cata
- 7.5 High severity
banks: Improper Neutralization of Special Elements Used in a Template Engine
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 v
- 9.6 Critical severity
Eclipse Glassfish: Improper Neutralization of Special Elements used in an Expression Language Statement
A critical Remote Code Execution (RCE) vulnerability was identified in the server-side template rendering mechanism used by the Glassfish gadget handler. The application processes .xml files and evaluates user-supplied values within a context where Expression
- 9.1 Critical severity
Eclipse Glassfish: Improper Control of Generation of Code
An authenticated Remote Code Execution (RCE) vulnerability was identified in GlassFish's Administration Console. A user with access to the panel can send crafted requests that allow the execution of arbitrary operating system commands with the privileges of th
- 7.3 High severity
A vulnerability was identified in xiandafu beetl up to 3.20.2.
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 leads
- 9.0 Critical severity
thymeleaf: Improper Neutralization of Special Elements used in an Expression Language Statement
Thymeleaf is a server-side Java template engine for web and standalone environments. Prior to 3.1.5.RELEASE, a security bypass vulnerability exists in the expression execution mechanisms of Thymeleaf. Although the library provides mechanisms to avoid the execu
- 8.6 High severity
Spring AI: Improper Neutralization of Special Elements used in an Expression Language Statement
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
- 8.1 High severity
omnifaces: Improper Neutralization of Special Elements used in an Expression Language Statement
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 mapping
- 7.8 High severity
An improper input validation, together with an overly permissive default CORS configuration in…
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 o
- 9.9 Critical severity
In plain terms, Apache Polaris is supposed to issue short-lived GCS credentials that only work…
In plain terms, Apache Polaris is supposed to issue short-lived GCS credentials that only work for one table's files, but a crafted namespace or table name can cause those credentials to work across the configured bucket instead. Apache Polaris builds Google C
- 8.8 High severity
mathjs: Improperly Controlled Modification of Dynamically-Determined Object Attributes
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 evaluate
- 9.0 Critical severity
thymeleaf: Improper Neutralization of Special Elements used in an Expression Language Statement
Thymeleaf is a server-side Java template engine for web and standalone environments. Versions 3.1.3.RELEASE and prior contain a security bypass vulnerability in the the expression execution mechanisms. Although the library provides mechanisms to prevent expres
- 9.0 Critical severity
thymeleaf: Improper Neutralization of Special Elements used in an Expression Language Statement
Thymeleaf is a server-side Java template engine for web and standalone environments. Versions 3.1.3.RELEASE and prior contain a security bypass vulnerability in the expression execution mechanisms. Although the library provides mechanisms to prevent expression
- 9.9 Critical severity
openremote: Improper Control of Generation of Code
OpenRemote is an open-source IoT platform. Versions 1.21.0 and below contain two interrelated expression injection vulnerabilities in the rules engine that allow arbitrary code execution on the server. The JavaScript rules engine executes user-supplied scripts
- 8.6 High severity
Vim: Improper Neutralization of Special Elements used in an OS Command
Vim before 9.2.0272 allows code execution that happens immediately upon opening a crafted file in the default configuration, because %{expr} injection occurs with tabpanel lacking P_MLE.
- 9.8 Critical severity
happy-dom: Improper Control of Generation of 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 inject
- 8.1 High severity
handlebars.js: Improper Control of Generation of Code
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 ac
- 7.7 High severity
traefik: Improper Neutralization of Special Elements in Output Used by a Downstream Component
Traefik is an HTTP reverse proxy and load balancer. Prior to versions 3.6.11 and 3.7.0-ea.2, Traefik's Knative provider builds router rules by interpolating user-controlled values into backtick-delimited rule expressions without escaping. In live cluster valid
- 9.8 Critical severity
Spring AI: Improper Neutralization of Special Elements used in an Expression Language Statement
In Spring AI, a SpEL injection vulnerability exists in SimpleVectorStore when a user-supplied value is used as a filter expression key. A malicious actor could exploit this to execute arbitrary code. Only applications that use SimpleVectorStore and pass user-s
- 8.6 High severity
Spring AI: Improper Neutralization of Special Elements used in an Expression Language Statement
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
- 9.8 Critical severity
Apache IoTDB: Improper Neutralization of Special Elements used in an Expression Language Statement
Improper Input Validation vulnerability in Apache IoTDB. This issue affects Apache IoTDB: from 1.0.0 before 1.3.7, from 2.0.0 before 2.0.7. Users are recommended to upgrade to version 1.3.7 or 2.0.7, which fixes the issue.
- 8.1 High severity
jsPDF: Improper Encoding or Escaping of Output
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 one
- 8.8 High severity
Mediawiki - DiscussionTools Extension: Improper Neutralization of Special Elements used in an Expression Language Statement
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 affec
- 7.5 High severity
Spring Cloud Gateway Server Webflux: Improper Neutralization of Special Elements used in an Expression Language Statement
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 application
- 10.0 Critical severity
Cloud Gateway: Improper Control of Generation of Code
Spring Cloud Gateway Server Webflux may be vulnerable to Spring Environment property modification. An application should be considered vulnerable when all the following are true: * The application is using Spring Cloud Gateway Server Webflux (Spring Cloud Gate
- 9.0 Critical severity
Cognos Analytics: Improper Neutralization of Special Elements used in an Expression Language Statement
IBM Cognos Analytics 11.2.0 through 11.2.4 FP4 and 12.0.0 through 12.0.4 is vulnerable to an Expression Language (EL) Injection vulnerability. A remote attacker could exploit this vulnerability to expose sensitive information, consume memory resources, and/or
- 8.8 High severity
DataGear: Improper Neutralization of Special Elements used in an Expression Language Statement
A vulnerability was found in DataGear up to 5.0.0. It has been declared as critical. Affected by this vulnerability is the function evaluateVariableExpression of the file ConversionSqlParamValueMapper.java of the component Data Schema Page. The manipulation le