Log4J: Erstes Update für Log4Shell-Lücke nicht vollständig

Das Log4J-Team musste das Update für die Sicherheitslücke Log4Shell nachbessern. Die eigentliche Ursache des Fehlers steht nicht mehr bereit.

Artikel veröffentlicht am ,
Die Lücke in der Java-Anwendung Log4J wird durch das Deaktivieren von JNDI wohl komplett geschlossen.
Die Lücke in der Java-Anwendung Log4J wird durch das Deaktivieren von JNDI wohl komplett geschlossen. (Bild: Pixabay)

Die Entwickler des Logging-Werkzeugs Log4J haben mit den Versionen 2.16 und 2.12.2 erneut sicherheitskritische Notfallupdates veröffentlicht. Geschlossen wird damit nun die Sicherheitslücke CVE-2021-45046, bei der es sich offenbar um eine Erweiterung der auch als Log4Shell bezeichneten Sicherheitslücke (CVE-2021-44228) handelt, die Ende der vergangenen Woche bekanntgeworden ist. Offenbar waren die ersten Fehlerbehebungen hierfür nicht vollständig.

Stellenmarkt
  1. Anwendungsentwickler / Anwendungsbetreuer (m/w/d) Datenbanken
    ING Deutschland, Nürnberg
  2. UX Designer (m/w/d)
    INIT Group, Karlsruhe
Detailsuche

In der Sicherheitsmeldung des Projekts heißt es dazu: "Es wurde festgestellt, dass der Fix (...) in bestimmten nicht standardmäßigen Konfigurationen unvollständig war". Und weiter heißt es mit Bezug auf die konkreten Voraussetzungen: "Dies könnte Angreifern (...) ermöglichen, bösartige Eingabedaten mithilfe eines JNDI-Lookup-Musters zu erstellen, was zu einem Denial-of-Service-Angriff (DOS) führt".

Vorkehrungen helfen nur bedingt

Betroffen davon seien wiederum sämtliche bisher verfügbaren Versionen von Log4J 2, also 2.0-beta9 bis 2.12.1, sowie die Versionen 2.13 bis 2.15. Darüber hinaus warnt das Team, dass die bisher offiziell empfohlene Vorkehrung, die Systemeigenschaft Log4j2.noFormatMsgLookup auf true zu setzen, das Ausnutzen der spezifischen neuen Lücke nicht verhindert. Anwender, die dies umgesetzt haben, könnten also ohne die neuen Patches auch weiter angreifbar sein.

Da die neue Lücke für die bisher unvollständig gepatchte Version laut dem Entwicklungsteam nur unter ganz bestimmten Voraussetzungen ausgenutzt werden kann und es sich dabei um einen Denial-of-Service-Angriff handelt, wird die Lücke noch mit einem "moderaten" Sicherheitslevel bezeichnet. Das Sicherheitsunternehmen Luna Sec widerspricht dem jedoch bedingt, da sich je nach eingespielten Patches und Vorkehrungen für die erste Lücke nun auch die zweite Lücke weiter zum Ausführen von Code (Remote Code Execution, RCE) eignen könnte.

Golem Akademie
  1. Hands-on C# Programmierung: virtueller Zwei-Tage-Workshop
    9.–10. Februar 2022, virtuell
  2. Java EE 8 Komplettkurs: virtueller Fünf-Tage-Workshop
    24.–28. Januar 2022, virtuell
Weitere IT-Trainings

Darüber hinaus schreibt der Sicherheitsforscher Márcio Almeida, dass es ihm gelungen ist, die ursprüngliche Lücke auch dann ausnutzen zu können, wenn die Java-Einstellung trustURLCodebase=false genutzt wird. Auch diese Konfiguration wurde zuvor als mögliche Vorkehrung gegen die ursprüngliche Lücke beschrieben und wird standardmäßig in einigen aktuellen Versionen des JDK genutzt. Einige Betroffene könnten sich damit eventuell in falscher Sicherheit gewogen und mit dem Einspielen von Patches gewartet haben, was sich mit dem Code von Almeida als trügerisch herausstellt.

Hacking & Security: Das umfassende Handbuch. 2. aktualisierte Auflage des IT-Standardwerks (Deutsch) Gebundene Ausgabe

Updates einspielen oder JNDI entfernen

Die offizielle Vorgehensweise, um die JNDI-Lücken in Log4J zu beheben, ist nun laut dem Team ein Update auf Version 2.16 für Java 8 oder neuere Versionen. Für Java 7 stellt das Team außer der Reihe das Update 2.12.2 bereit. Alle anderen Nutzer sollen, wie bereits beschrieben, die betroffene Klasse für den JNDI-Lookup aus ihren Installationen löschen: zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class

Das Team weist außerdem darauf hin, dass von den Lücken nur die Jar-Datei Log4J-Core betroffen ist. Anwendungen, die lediglich die Jar-Datei Log4J-API verwenden, seien nicht betroffen.

In der aktuellen Version 2.16 von Log4J haben die zuständigen Entwickler nun außerdem den Code vollständig dafür entfernt, dass aus den Log-Nachrichten heraus überhaupt ein JNDI-Lookup ausgeführt werden kann. Das war die grundlegende Ursache für den Fehler und wurde bereits mit der vorhergehenden Version 2.15 verhindert, nun fehlt also der Code dazu.

Mit Version 2.16 wird außerdem die Möglichkeit eines JNDI-Lookups in der restlichen Anwendungslogik standardmäßig deaktiviert. Dazu heißt es in den Release Notes: "Das Log4j-Team ist der Ansicht, dass die standardmäßige Aktivierung von JNDI ein unangemessenes Risiko für unsere Benutzer darstellt."

JNDI-Lookups sind zwar nach Aktivieren der Systemeigenschaft log4j2.enableJndi in Log4J weiter möglich, das Team rät aber deutlich von der Nutzung ab. Das Team schreibt: "Die Verwendung von JNDI in einem ungeschützten Kontext stellt ein großes Sicherheitsrisiko dar und sollte sowohl in dieser Bibliothek als auch in allen anderen Java-Bibliotheken, die JNDI verwenden, als solches behandelt werden."

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Aktuell auf der Startseite von Golem.de
Corona-Warn-App
Jede geteilte Warnung kostete 100 Euro

Die Bundesregierung hat für die Corona-Warn-App bisher mehr als 130 Millionen Euro ausgegeben. Derzeit gibt es besonders viele rote Warnungen.

Corona-Warn-App: Jede geteilte Warnung kostete 100 Euro
Artikel
  1. Activision Blizzard: Was passiert mit Call of Duty, Diablo und Xbox Game Pass?
    Activision Blizzard
    Was passiert mit Call of Duty, Diablo und Xbox Game Pass?

    Playstation als Verlierer und Exklusivspiele für den Xbox Game Pass: Golem.de über die bislang größte Übernahme durch Microsoft.
    Eine Analyse von Peter Steinlechner

  2. Dice: Update-Roadmap für Battlefield 2042 vorgestellt
    Dice
    Update-Roadmap für Battlefield 2042 vorgestellt

    Ob das reicht? Das Entwicklerstudio Dice hat seine Pläne für Battlefield 2042 vorgestellt. Der Shooter hat extrem niedrige Spielerzahlen.

  3. Energiespeicher: Große Druckluftspeicher locken Investorengelder an
    Energiespeicher
    Große Druckluftspeicher locken Investorengelder an

    Hydrostor bietet eine langlebige Alternative zu Netzspeichern aus Akkus, die zumindest in den 2020er Jahren wirtschaftlich ist.
    Von Frank Wunderlich-Pfeiffer

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • LG OLED 55" 120Hz 999€ • MindStar (u.a. NZXT WaKü 129€, GTX 1660 499€) • Seagate Firecuda 530 1TB inkl. Kühlkörper + 20€ PSN-Guthaben 189,90€ • HP Omen Gaming-Stuhl 319€ • Sony Pulse 3D Wireless PS5 Headset 79,99€ • Huawei MateBook 16,1" 16GB 512GB SSD 709€ [Werbung]
    •  /