
Scanneur de système de fichiers qui détecte les versions vulnérables de Log4J (CVE-2021-44228, CVE-2021-45046) en analysant les classes Java compilées, y compris les archives imbriquées. Fonctionne sous Linux, Windows et Mac.

Scanner qui détecte les versions vulnérables de Log4J pour aider les équipes à évaluer leur exposition aux CVE-2021-44228 (CRITIQUE), CVE-2021-45046, CVE-2021-45105, et CVE-2021-44832. Peut rechercher des instances Log4J en examinant soigneusement tout le système de fichiers, y compris toutes les applications installées. Il est capable de trouver des instances Log4J cachées à plusieurs niveaux de profondeur. Fonctionne sous Linux, Windows et Mac, et partout ailleurs où Java s'exécute également !
log4j-core. Qu'en est-il de log4j-api ? Signale actuellement les versions log4j-core 2.3.2, 2.12.4 et 2.17.1 comme _SAFE_, 2.3.1, 2.12.2, 2.12.3, 2.15.0, 2.16.0 et 2.17.0 comme _OKAY_ et toutes les autres versions comme _VULNERABLE_ (bien qu'il signale les versions antérieures à 2.0-beta9 comme _POTENTIALLY_SAFE_). Il signale les anciennes versions log4j-1.x comme _OLD_.
Peut détecter correctement log4j à l'intérieur de jars/wars exécutables Spring Boot, des dépendances mélangées dans des uber jars, des jars shaded, et même des fichiers jar décompressés simplement posés sur le système de fichiers (alias *.class).
Nous maintenons actuellement une collection d'échantillons log4j que nous utilisons pour les tests.
java -jar log4j-detector-2021.12.29.jar ./samples
-- github.com/mergebase/log4j-detector v2021.12.29 (by mergebase.com) analyzing paths (could take a while).
-- Note: specify the '--verbose' flag to have every file examined printed to STDERR.
false-hits/log4j-core-2.12.2.jar contains Log4J-2.x == 2.12.2 _OKAY_
false-hits/log4j-core-2.12.3.jar contains Log4J-2.x == 2.12.3 _OKAY_
false-hits/log4j-core-2.12.4.jar contains Log4J-2.x == 2.12.4 _SAFE_
false-hits/log4j-core-2.15.0.jar contains Log4J-2.x == 2.15.0 _OKAY_
false-hits/log4j-core-2.16.0.jar contains Log4J-2.x == 2.16.0 _OKAY_
false-hits/log4j-core-2.17.0.jar contains Log4J-2.x == 2.17.0 _OKAY_
false-hits/log4j-core-2.17.1.jar contains Log4J-2.x >= 2.17.1 _SAFE_
false-hits/log4j-core-2.3.1.jar contains Log4J-2.x == 2.3.1 _OKAY_
false-hits/log4j-core-2.3.2.jar contains Log4J-2.x == 2.3.2 _SAFE_
true-hits/log4j-core-2.0-beta9.jar contains Log4J-2.x >= 2.0-beta9 (< 2.10.0) _VULNERABLE_
true-hits/log4j-core-2.10.0.jar contains Log4J-2.x >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.10.0.zip contains Log4J-2.x >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.11.0.jar contains Log4J-2.x >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.11.1.jar contains Log4J-2.x >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.11.2.jar contains Log4J-2.x >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.12.0.jar contains Log4J-2.x >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.12.1.jar contains Log4J-2.x >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.14.0.jar contains Log4J-2.x >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.14.1.jar contains Log4J-2.x >= 2.10.0 _VULNERABLE_
true-hits/log4j-core-2.2.jar contains Log4J-2.x >= 2.0-beta9 (< 2.10.0) _VULNERABLE_
true-hits/log4j-core-2.3.jar contains Log4J-2.x >= 2.0-beta9 (< 2.10.0) _VULNERABLE_
true-hits/log4j-core-2.4.1.jar contains Log4J-2.x >= 2.0-beta9 (< 2.10.0) _VULNERABLE_
true-hits/log4j-core-2.4.jar contains Log4J-2.x >= 2.0-beta9 (< 2.10.0) _VULNERABLE_
true-hits/log4j-core-2.9.1.jar contains Log4J-2.x >= 2.0-beta9 (< 2.10.0) _VULNERABLE_
old-hits/log4j-1.1.3.jar contains Log4J-1.x <= 1.2.17 _OLD_
old-hits/log4j-1.2.17.jar contains Log4J-1.x <= 1.2.17 _OLD_
old-hits/log4j-core-2.0-beta2.jar contains Log4J-2.x <= 2.0-beta8 _POTENTIALLY_SAFE_ (Did you remove JndiLookup.class?)
_VULNERABLE_ -> Vous devez mettre à niveau ou supprimer ce fichier.
_OKAY_ -> Nous signalons cela pour les versions Log4J 2.3.1, 2.12.2, 2.12.3, 2.15.0, 2.16.0 et 2.17.0. Nous recommandons de passer à la version 2.17.1.
_SAFE_ -> Nous ne signalons actuellement cela que pour les versions Log4J 2.3.2, 2.12.4 et 2.17.1 (et ultérieures).
_OLD_ -> Vous êtes à l'abri de CVE-2021-44228, mais vous devriez prévoir de mettre à niveau car Log4J 1.2.x est en fin de vie depuis 7 ans et présente plusieurs vulnérabilités connues.
_POTENTIALLY_SAFE_ -> Le fichier « JndiLookup.class » n'est pas présent, soit parce que votre version de Log4J est très ancienne (antérieure à 2.0-beta9), soit parce que quelqu'un a déjà supprimé ce fichier. Assurez-vous que c'est bien un membre de votre équipe ou entreprise qui a supprimé « JndiLookup.class » si tel est le cas, car des attaquants sont connus pour supprimer eux-mêmes ce fichier afin d'empêcher d'autres attaquants concurrents d'accéder aux systèmes compromises.
java -jar log4j-detector-2021.12.29.jar
Usage: java -jar log4j-detector-2021.12.29.jar [--verbose] [--json] [--stdin] [--exclude=X] [paths to scan...]
--json - Output STDOUT results in JSON. (Errors/warning still emitted to STDERR)
--stdin - Read STDIN for paths to explore (one path per line)
--exclude=X - Where X is a JSON list containing full paths to exclude. Must be valid JSON.
Example: --exclude='["/dev", "/media", "Z:\TEMP"]'
Exit codes: 0 = No vulnerable Log4J versions found.
1 = At least one legacy Log4J 1.x version found.
2 = At least one vulnerable Log4J version found.
About - MergeBase log4j detector (version 2021.12.29)
Docs - https://github.com/mergebase/log4j-detector
(C) Copyright 2021 Mergebase Software Inc. Licensed to you via GPLv3.
git clone https://github.com/mergebase/log4j-detector.git
cd log4j-detector/
mvn install
java -jar target/log4j-detector-latest.jar
Nous maintenons une collection d'échantillons log4j ici : https://github.com/mergebase/log4j-samples
GPL version 3.0