oss-sec mailing list archives

CVE-2021-44228: Apache Log4j2 JNDI features do not protect against attacker controlled LDAP and other JNDI related endpoints


From: Ralph Goers <rgoers () apache org>
Date: Fri, 10 Dec 2021 09:23:45 +0000

Severity: critical

Description:

Apache Log4j2 <=2.14.1 JNDI features used in configuration, log messages, and parameters do not protect against 
attacker controlled LDAP and other JNDI related endpoints. An attacker who can control log messages or log message 
parameters can execute arbitrary code loaded from LDAP servers when message lookup substitution is enabled. From log4j 
2.15.0, this behavior has been disabled by default. 

In previous releases (>2.10) this behavior can be mitigated by setting system property "log4j2.formatMsgNoLookups" to 
“true” or by removing the JndiLookup class from the classpath (example: zip -q -d log4j-core-*.jar 
org/apache/logging/log4j/core/lookup/JndiLookup.class). Java 8u121 (see 
https://www.oracle.com/java/technologies/javase/8u121-relnotes.html) protects against remote code execution by 
defaulting "com.sun.jndi.rmi.object.trustURLCodebase" and "com.sun.jndi.cosnaming.object.trustURLCodebase" to "false".

Credit:

This issue was discovered by Chen Zhaojun of Alibaba Cloud Security Team.

References:

https://logging.apache.org/log4j/2.x/security.html


Current thread: