Apache Log4j2 versions 2.0-alpha1 through 2.16.0 (excluding 2.12.3) did not protect from uncontrolled recursion from self-referential lookups. This allows an attacker with control over Thread Context Map data to cause a denial of service when a crafted string is interpreted. This issue was fixed in Log4j 2.17.0 and 2.12.3.
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.