Skip to content

GHSA-g2f6-v5qh-h2mq GHSA-g2f6-v5qh-h2mq

Nexus Repository Manager 3 - Remote Code Execution

High Known exploited Maven
Severity
8.8 / 10
High · CVSS 3.1
Exploit chance (EPSS)
99.06%
Chance of exploitation in the next 30 days. Higher than 99.93% of scored vulnerabilities.
Known exploited
Yes
In CISA's catalog
Weakness
CWE-917 Improper Neutralization of Special Elements used in an Expression Language Statement ('Expression Language Injection')
Fix
3.21.2
Upgrade org.sonatype.nexus:nexus-extdirect to this version or later

Description

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

Affected versions

Maven

PackageVulnerableFixed in
org.sonatype.nexus:nexus-extdirect
< 3.21.2
3.21.2
org.sonatype.nexus:nexus-extdirect
< 3.21.2
3.21.2

How to fix

Move to the fixed version or later with your package manager, update the lockfile, and run your tests. If the package only arrives through another dependency, upgrade that dependency first. If none of its releases pulls a fixed version yet, force the version with your package manager's override.

org.sonatype.nexus:nexus-extdirect Maven → 3.21.2

maven
<dependency><groupId>org.sonatype.nexus</groupId><artifactId>nexus-extdirect</artifactId><version>3.21.2</version></dependency>
gradle
implementation("org.sonatype.nexus:nexus-extdirect:3.21.2")

Severity breakdown

CVSS 3.1 8.8

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

Attack vector
Network
Attack complexity
Low
Privileges required
Low
User interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
Exploit maturity
H

Weakness

CWE-917: Improper Neutralization of Special Elements used in an Expression Language Statement ('Expression Language Injection')

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
  • 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".

References

Timeline

  1. Published
  2. Last updated by the source
AdvisorySeverityWhy it's related
GHSA-pm35-fqvh-cq5g
n8n: Legacy Expression Evaluator Sanitizer Bypass Leads to Authenticated Code Execution
High Same weakness, CWE-917
GHSA-cfj9-2vgr-hpxp
Jenkins Script Security Plugin has a script security bypass vulnerability
High Same weakness, CWE-917
GHSA-3mfm-83xf-c92r
Handlebars.js has JavaScript Injection via AST Type Confusion by tampering @partial-block
High Same weakness, CWE-917
GHSA-67jx-r9pv-98rj
Traefik has Knative Ingress Rule Injection that Allows Host Restriction Bypass
High Same weakness, CWE-917
GHSA-8w3p-qh3x-6gjr
TYPO3 CMS vulnerable to Sensitive Information Disclosure via YAML Placeholder Expressions in Site Configuration
Medium Same weakness, CWE-917
CVE-2022-26134
In affected versions of Confluence Server and Data Center, an OGNL injection vulnerability exists that would allow an unauthenticated attacker to execute…
Critical Known exploited Same weakness, CWE-917
GHSA-v8j6-6c2r-r27c
Expression Language Injection in Apache Struts
Critical Same weakness, CWE-917
GHSA-6v73-fgf6-w5j7
Spring Cloud Function Code Injection with a specially crafted SpEL as a routing expression
Critical Known exploited Same weakness, CWE-917
Is this in your code?

MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.

Check your repos with MergeHarbor