

log4j2-scan es una herramienta de línea de comandos de un solo binario para el escaneo de vulnerabilidades y parche de mitigación de CVE-2021-44228. También admite el escaneo y parcheo de archivos JAR anidados.
Simplemente ejecuta log4j2-scan.exe o log4j2-scan con la ruta del directorio objetivo.
Uso
Logpresso CVE-2021-44228 Vulnerability Scanner 1.3.1 (2021-12-15)
Usage: log4j2-scan [--fix] target_path
--fix
Backup original file and remove JndiLookup.class from JAR recursively.
--force-fix
Do not prompt confirmation. Don't use this option unless you know what you are doing.
--trace
Print all directories and files while scanning.
--exclude [path_prefix]
Exclude specified paths. You can specify multiple --exclude [path_prefix] pairs
--exclude-config [file_path]
Specify exclude path list in text file. Paths should be separated by new line. Prepend # for comment.
--all-drives
Scan all drives on Windows
--drives c,d
Scan specified drives on Windows. Spaces are not allowed here.
En Windows
log4j2-scan [--fix] target_path
En Linux
./log4j2-scan [--fix] target_path
En UNIX (AIX, Solaris, etc.)
java -jar logpresso-log4j2-scan-1.3.1.jar [--fix] target_path
Si agregas la opción --fix, este programa copiará el archivo JAR original vulnerable a un archivo .bak y creará un nuevo archivo JAR sin la entrada org/apache/logging/log4j/core/lookup/JndiLookup.class. En la mayoría de los entornos, la función de búsqueda JNDI no se utilizará. Sin embargo, debes usar esta opción bajo tu propio riesgo. Es necesario detener cualquier proceso JVM en ejecución antes de aplicar el parche. Inicia el proceso JVM afectado después del arreglo.
Si deseas automatizar el trabajo de parcheo, usa la opción --force-fix. Con esta opción, este programa ya no solicitará confirmación.
La etiqueta (mitigated) se mostrará si la entrada org/apache/logging/log4j/core/lookup/JndiLookup.class se elimina del archivo JAR.
Si agregas la opción --trace, este programa imprimirá todos los directorios y archivos visitados. Usa esta opción solo para depuración.
En Windows:
CMD> log4j2-scan.exe D:\tmp
[*] Found CVE-2021-44228 vulnerability in D:\tmp\elasticsearch-7.16.0\bin\elasticsearch-sql-cli-7.16.0.jar, log4j 2.11.1
[*] Found CVE-2021-44228 vulnerability in D:\tmp\elasticsearch-7.16.0\lib\log4j-core-2.11.1.jar, log4j 2.11.1
[*] Found CVE-2021-44228 vulnerability in D:\tmp\flink-1.14.0\lib\log4j-core-2.14.1.jar, log4j 2.14.1
[*] Found CVE-2021-44228 vulnerability in D:\tmp\logstash-7.16.0\logstash-core\lib\jars\log4j-core-2.14.0.jar, log4j 2.14.0
[*] Found CVE-2021-44228 vulnerability in D:\tmp\logstash-7.16.0\vendor\bundle\jruby\2.5.0\gems\logstash-input-tcp-6.2.1-java\vendor\jar-dependencies\org\logstash\inputs\logstash-input-tcp\6.2.1\logstash-input-tcp-6.2.1.jar, log4j 2.9.1
[*] Found CVE-2021-44228 vulnerability in D:\tmp\solr-7.7.3\solr-7.7.3\contrib\prometheus-exporter\lib\log4j-core-2.11.0.jar, log4j 2.11.0
[*] Found CVE-2021-44228 vulnerability in D:\tmp\solr-7.7.3\solr-7.7.3\server\lib\ext\log4j-core-2.11.0.jar, log4j 2.11.0
[*] Found CVE-2021-44228 vulnerability in D:\tmp\solr-8.11.0\contrib\prometheus-exporter\lib\log4j-core-2.14.1.jar, log4j 2.14.1
[*] Found CVE-2021-44228 vulnerability in D:\tmp\solr-8.11.0\server\lib\ext\log4j-core-2.14.1.jar, log4j 2.14.1
Scanned 5047 directories and 26251 files
Found 9 vulnerable files
Completed in 0.42 seconds
Se ejecuta en 5 pasos:
META-INF/maven/org.apache.logging.log4j/log4j-core/pom.properties dentro del archivo JAR.Si tienes alguna pregunta o problema, crea un issue en este repositorio.