9 grudnia zostały opublikowane informacje na temat krytycznej podatności w Log4j umożliwiającą zdalne uruchomienie kodu (ang. Remote Code Execution).
Podatność CVE-2021-44228 dotyczy Log4j w wersji 2 (podatne są wersje od 2.0-beta-9 do 2.14.1). Błąd został naprawiony w wersji 2.15.0.
Biblioteka Apache Log4j wspiera wyszukiwania JNDI (Java Naming and Directory Interface) które mogą wykonać kod dostarczony przez zdalne usługi takie jak LDAP, RMI i DNS.
Atakujący poprzez spreparowanie odpowiedniej wiadomości, która zostanie zapisana w logach może spowodować, że Log4j połączy się do zdalnej usługi kontrolowanej przez atakującego i pobierze oraz uruchomi złośliwy kod.
log4j2.formatMsgNoLookups=true
Dodatkowo można ustawić zmienną LOG4J_FORMAT_MSG_NO_LOOKUPS=true
zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
W bibliotece w wersji 2.15.0 wykryto nową podatność pozwalającą na atak odmowy dostępu (DoS) w specyficznej, nie domyślnej, konfiguracji. Aktualnie rekomendowana wersja biblioteki to 2.16.0.