org.apache.logging.log4j:log4j-core@2.3.1 vulnerabilities

Direct Vulnerabilities

Known vulnerabilities in the org.apache.logging.log4j:log4j-core package. This does not include vulnerabilities belonging to this package’s dependencies.

Automatically find and fix vulnerabilities affecting your projects. Snyk scans for vulnerabilities and provides fixes for free.
Fix for free
Vulnerability Vulnerable Version
  • M
Arbitrary Code Execution

org.apache.logging.log4j:log4j-core is a logging library for Java.

Affected versions of this package are vulnerable to Arbitrary Code Execution.
Note: Even though this vulnerability appears to be related to the log4Shell vulnerability, this vulnerability requires an attacker to have access to modify configurations to be exploitable, which is rarely possible.

An attacker with access to modification of logging configuration is able to configure JDBCAppender with a data source referencing a JNDI URI - which can execute malicious code.

In the fixed versions, JDBCAppender is using JndiManager and disables JNDI lookups by default (via log4j2.enableJndiJdbc=false).

How to fix Arbitrary Code Execution?

Upgrade org.apache.logging.log4j:log4j-core to version 2.3.2, 2.12.4, 2.17.1 or higher.

[2.0-beta7,2.3.2) [2.4,2.12.4) [2.13.0,2.17.1)
  • L
Man-in-the-Middle (MitM)

org.apache.logging.log4j:log4j-core is a logging library for Java.

Affected versions of this package are vulnerable to Man-in-the-Middle (MitM). Improper validation of certificate with host mismatch in Apache Log4j SMTP appender. This could allow an SMTPS connection to be intercepted by a man-in-the-middle attack which could leak any log messages sent through that appender.

How to fix Man-in-the-Middle (MitM)?

Upgrade org.apache.logging.log4j:log4j-core to version 2.13.2 or higher.

[,2.13.2)
  • C
Deserialization of Untrusted Data

org.apache.logging.log4j:log4j-core is a logging library for Java.

Affected versions of this package are vulnerable to Deserialization of Untrusted Data. When using the TCP socket server or UDP socket server to receive serialized log events from another application, a specially crafted binary payload can be sent that, when deserialized, can execute arbitrary code.

How to fix Deserialization of Untrusted Data?

Upgrade org.apache.logging.log4j:log4j-core to version 2.8.2 or higher.

[,2.8.2)