---
id: CVE-2021-45046
aliases:
  - GHSA-7rjr-3q55-vv33
title: Incomplete fix for Apache Log4j vulnerability
summary: Incomplete fix for Apache Log4j vulnerability
severity: critical
cvss: 9
cwe:
  - CWE-502
  - CWE-917
vendor: apache
product: 'org.apache.logging.log4j:log4j-core'
ecosystem: maven
affected:
  - 'org.apache.logging.log4j:log4j-core >= 2.13.0, < 2.16.0'
  - 'org.ops4j.pax.logging:pax-logging-log4j2 >= 1.8.0, < 1.9.2'
  - 'org.ops4j.pax.logging:pax-logging-log4j2 >= 1.10.0, < 1.10.8'
  - 'org.ops4j.pax.logging:pax-logging-log4j2 >= 1.11.0, < 1.11.11'
  - 'org.ops4j.pax.logging:pax-logging-log4j2 >= 2.0.0, < 2.0.12'
  - 'org.apache.logging.log4j:log4j-core >= 2.4.0, < 2.12.2'
  - 'org.apache.logging.log4j:log4j-core < 2.3.1'
patched:
  - 'org.apache.logging.log4j:log4j-core 2.16.0'
  - 'org.ops4j.pax.logging:pax-logging-log4j2 1.9.2'
  - 'org.ops4j.pax.logging:pax-logging-log4j2 1.10.8'
  - 'org.ops4j.pax.logging:pax-logging-log4j2 1.11.11'
  - 'org.ops4j.pax.logging:pax-logging-log4j2 2.0.12'
  - 'org.apache.logging.log4j:log4j-core 2.12.2'
  - 'org.apache.logging.log4j:log4j-core 2.3.1'
published: '2021-12-14'
updated: '2026-10-02'
sourceUpdated: '2026-10-02T20:21:54Z'
source: GHSA
sourceUrl: 'https://github.com/advisories/GHSA-7rjr-3q55-vv33'
references:
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2021-45046'
  - url: 'https://logging.apache.org/log4j/2.x/security.html'
  - url: 'https://www.openwall.com/lists/oss-security/2021/12/14/4'
  - url: 'https://www.cve.org/CVERecord?id=CVE-2021-44228'
  - url: >-
      https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00646.html
  - url: 'https://cert-portal.siemens.com/productcert/pdf/ssa-661247.pdf'
  - url: 'https://cert-portal.siemens.com/productcert/pdf/ssa-714170.pdf'
  - url: 'https://www.kb.cert.org/vuls/id/930724'
  - url: 'https://www.debian.org/security/2021/dsa-5022'
  - url: 'https://psirt.global.sonicwall.com/vuln-detail/SNWLID-2021-0032'
  - url: 'https://www.oracle.com/security-alerts/alert-cve-2021-44228.html'
  - url: 'https://cert-portal.siemens.com/productcert/pdf/ssa-397453.pdf'
  - url: 'https://cert-portal.siemens.com/productcert/pdf/ssa-479842.pdf'
  - url: 'https://www.oracle.com/security-alerts/cpujan2022.html'
  - url: 'https://www.oracle.com/security-alerts/cpuapr2022.html'
  - url: 'https://www.oracle.com/security-alerts/cpujul2022.html'
  - url: 'https://security.gentoo.org/glsa/202310-16'
  - url: >-
      https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/SIG7FZULMNK2XF6FZRU4VWYDQXNMUGAJ
  - url: >-
      https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/EOKPQGV24RRBBI4TBZUDQMM4MEH7MXCY
  - url: >-
      https://sec.cloudapps.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-apache-log4j-qRuKNEbd
  - url: >-
      https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2021-45046
  - url: 'https://www.openwall.com/lists/oss-security/2021/12/18/1'
  - url: 'https://www.openwall.com/lists/oss-security/2021/12/15/3'
  - url: 'https://logging.apache.org/security.html#CVE-2021-45046'
  - url: 'https://github.com/apache/logging-log4j2/compare/rel/2.3...rel/2.3.1'
  - url: 'https://github.com/advisories/GHSA-7rjr-3q55-vv33'
tags:
  - ghsa
  - maven
  - kev
  - in-the-wild
  - exploit-available
epss: 0.99977
epssPercentile: 0.9998
kev: true
kevDateAdded: '2023-05-01'
kevDueDate: '2023-05-22'
kevRansomware: true
exploited: true
exploits:
  github: 11
  githubRepos:
    - 'https://github.com/cckuailong/Log4j_CVE-2021-45046'
    - 'https://github.com/BobTheShoplifter/CVE-2021-45046-Info'
    - 'https://github.com/tejas-nagchandi/CVE-2021-45046'
  metasploit:
    - auxiliary/scanner/http/log4shell_scanner
  nuclei:
    - CVE-2021-45046
  checkedAt: '2026-10-02T22:33:43.920Z'
exploitAvailable: true
ingestedAt: '2026-10-02T22:33:09.854Z'
---

## Overview

# Impact

The fix to address [CVE-2021-44228](https://nvd.nist.gov/vuln/detail/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.

## Affected packages

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

## Remediation

Upgrade to a patched release:

- `org.apache.logging.log4j:log4j-core 2.16.0`
- `org.ops4j.pax.logging:pax-logging-log4j2 1.9.2`
- `org.ops4j.pax.logging:pax-logging-log4j2 1.10.8`
- `org.ops4j.pax.logging:pax-logging-log4j2 1.11.11`
- `org.ops4j.pax.logging:pax-logging-log4j2 2.0.12`
- `org.apache.logging.log4j:log4j-core 2.12.2`
- `org.apache.logging.log4j:log4j-core 2.3.1`
