GitHub Advisoryadvisory · Maven

GHSA-7rjr-3q55-vv33 Incomplete fix for Apache Log4j vulnerability

CRITICAL Published 2021-12-14 Modified 2026-10-02 Official page ↗
Aliases
CVE-2021-45046
Ecosystem
Maven
Packages
org.apache.logging.log4j:log4j-core, org.ops4j.pax.logging:pax-logging-log4j2
Severity
Critical
CVSS vector
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H
Weaknesses
CWE-502, CWE-917
Reviewed
2021-12-14

Affected packages

• Maven org.apache.logging.log4j:log4j-core: >= 2.13.0, < 2.16.0 → fixed in 2.16.0 • Maven org.apache.logging.log4j:log4j-core: >= 2.4.0, < 2.12.2 → fixed in 2.12.2 • Maven org.ops4j.pax.logging:pax-logging-log4j2: >= 1.8.0, < 1.9.2 → fixed in 1.9.2 • Maven org.ops4j.pax.logging:pax-logging-log4j2: >= 1.10.0, < 1.10.8 → fixed in 1.10.8 • Maven org.ops4j.pax.logging:pax-logging-log4j2: >= 1.11.0, < 1.11.11 → fixed in 1.11.11 • Maven org.ops4j.pax.logging:pax-logging-log4j2: >= 2.0.0, < 2.0.12 → fixed in 2.0.12 • Maven org.apache.logging.log4j:log4j-core: < 2.3.1 → fixed in 2.3.1

Description

Impact The fix to address CVE-2021-44228 in Apache Log4j 2.15.0 was incomplete in certain non-default configurations. This could allow attackers with control over Thread Context Map (MDC) input data when the logging configuration uses a non-default Pattern Layout with either a Context Lookup (for example, $${ctx:loginId}) or a Thread Context Map pattern (%X, %mdc, or %MDC) to craft malicious input data using a JNDI Lookup pattern resulting in a remote code execution (RCE) attack. Affected packages Only the `org.apache.logging.log4j:log4j-core` package is directly affected by this vulnerability. The `org.apache.logging.log4j:log4j-api` should be kept at the same version as the `org.apache.logging.log4j:log4j-core` package to ensure compatability if in use. Mitigation Log4j 2.16.0 fixes this issue by removing support for message lookup patterns and disabling JNDI functionality by default. This issue can be mitigated in prior releases (< 2.16.0) by removing the JndiLookup class from the classpath (example: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class). Log4j 2.15.0 restricts JNDI LDAP lookups to localhost by default. Note that previous mitigations involving configuration such as to set the system property `log4j2.formatMsgNoLookups` to `true` do NOT mitigate this specific vulnerability.

Related

Alias · CVE (1)

  • CVE-2021-45046 It was found that the fix to address CVE-2021-44228 in Apache Log4j 2.15.0 was incomplete in certain non-default configurations. vulnerability

Weakness · CWE (2)

  • CWE-502 Deserialization of Untrusted Data weakness
  • CWE-917 Improper Neutralization of Special Elements used in an Expression Language Statement weakness

References