
Eine Java-Anwendung, die absichtlich anfällig für CVE-2021-44228 ist.
Dieses Repository enthält eine Java-Anwendung, die absichtlich anfällig für CVE-2021-44228 ist, umgangssprachlich bekannt als log4shell.
log4stdin ist buchstäblich nichts weiter als ein stdin-Leser, dessen Eingabe in eine anfällige log4j-Instanz eingespeist wird. Der Build log4stdin.jar verwendet die Maven-Artefakte log4j-api 2.14.1 und log4j-core 2.14.1 und nutzt ein Logging-Muster, das Log-Level- und Zeitstempel-Details auslässt. Diese Version ist garantiert verwundbar™️.
Im Ordner versions/ finden sich Builds mit Standard-Logging-Muster und log4j-Versionen von 2.0-beta9 bis 2.20.0.
Verwenden Sie Unix-Pipes für die Eingabe. Um Log-Einträge beispielsweise auf ihre Injizierbarkeit zu untersuchen, führen Sie Folgendes aus:
cat output.log | java -jar log4stdin.jar
Alternativ können Sie für das Echtzeit-Lesen von Logs Folgendes ausführen:
tail -f output.log | java -jar log4stdin.jar
log4stdin gibt alles aus, was an stdin übergeben wird, unternimmt aber nichts, um Benutzereingaben zu verarbeiten. Daher eignet es sich zum Lesen von Logdateien, wie oben beispielhaft gezeigt, oder für Software, die keine Benutzerinteraktion erfordert.
Die Inhalte dieses Repositorys werden von Antivirenprogrammen unweigerlich entweder als infizierte Dateien oder als Versuche, bösartige Befehle auszugeben, eingestuft. Es könnte eine gute Idee sein, den Zielordner vor dem Klonen des Repositorys vom Antiviren-Scan auszuschließen. Eine noch bessere Idee könnte es sein, es in einer virtuellen Umgebung ohne Netzwerkverbindungen auszuprobieren.
Erstens kann es verwendet werden, um die Konsequenzen eines praktisch überall vorhandenen JNDI-Injektionspunkts zu erkunden, ohne dass bestehende Software geforkt werden muss. Es kann bei der Erforschung oder dem Testen von Schutzmethoden nützlich sein.
Zweitens ist es im Grunde das „Hello World“ der Cybersicherheit, geschrieben, um sowohl die Einfachheit als auch die Schwere der Schwachstelle zu unterstreichen.
Drittens kann es verwendet werden, um zu testen, ob eine AV-Lösung in der Lage ist, Software zu erkennen, die CVE-2021-44228 ausnutzt. log4stdin.java oder log4stdin.jar könnte beispielsweise als Generic.Zojfor.G markiert werden.
Wie auch immer – wofür auch immer du es verwendest, du bist für alle Konsequenzen verantwortlich.
MIT-Lizenz. Weitere Informationen in LICENSE.md.
Es war ja nicht so, dass viel schwere Arbeit nötig war, und du kannst das Ganze gerne auf eigene Faust nachbauen – niemand wird dir hinterherjagen.
Copyright 1999–2023 The Apache Software Foundation
Lizenziert unter der Apache License, Version 2.0 (der „Lizenz“); Sie dürfen diese Datei nur in Übereinstimmung mit der Lizenz verwenden. Eine Kopie der Lizenz erhalten Sie unter
Sofern nicht gesetzlich vorgeschrieben oder schriftlich vereinbart, wird die unter der Lizenz verteilte Software auf einer „AS IS“-Basis bereitgestellt, OHNE GEWÄHRLEISTUNG ODER BEDINGUNGEN JEGLICHER ART, weder ausdrücklich noch stillschweigend. Siehe die Lizenz für die spezifischen Berechtigungen und Einschränkungen.