
Detecta y corrige la vulnerabilidad log4j Log4Shell (CVE-2021-44228)
Esta herramienta sirve para detectar y corregir la vulnerabilidad log4j log4shell (CVE-2021-44228) buscando y eliminando la clase JndiLookup de los archivos .jar/.war/.ear sin dependencias y de forma gratuita. Esta herramienta ha sido probada en: - Linux de 32 bits y 64 bits - Windows de 32 bits y 64 bits - OpenBSD de 64 bits
Esta herramienta está escrita en el lenguaje de programación Go, lo que significa cero dependencias y binarios independientes que se ejecutan en cualquier lugar.
Descargue los binarios (Windows, Linux, Darwin, OpenBSD) aquí https://github.com/nanitor/log4fix/releases/tag/v4.2.0
Escanear un archivo en busca de vulnerabilidades
log4fix detect </path/to/file.war>
Escanear un archivo en busca de vulnerabilidades y eliminar la clase vulnerable.
log4fix fix </path/to/file.war> --overwrite
Escanear un solo directorio en busca de vulnerabilidades.
log4fix scan </path/to/dir>
Escanear múltiples directorios en busca de vulnerabilidades.
log4fix scan </path/to/dir/1> </path/to/dir/2>
Escanear un directorio en busca de vulnerabilidades y eliminar los archivos vulnerables. Nota: este comando sobrescribe los archivos war/ear/jar que contienen la clase vulnerable que se encuentren.
log4fix scan </path/to/dir> --fix
Escanear un directorio en busca de vulnerabilidades y escribir los archivos jar/ear/war vulnerables encontrados en el archivo proporcionado.
log4fix scan </path/to/dir> --output </path/to/text/file.txt>
Recomendamos realizar una copia de seguridad de los archivos antes de sobrescribirlos. En Windows, puede ser necesario detener el servicio antes de aplicar la corrección. Una vez que se haya aplicado la corrección, el servicio debe reiniciarse.
go build
Esto es funcionalmente equivalente a la mitigación recomendada de
zip -q -d log4j-core-*.jar org/apache/logging/log4j/core/lookup/JndiLookup.class
excepto que también puede examinar otros archivos .jar/.war/.ear y buscar el archivo log4j-core-*.jar dentro de ellos y eliminar la clase JndiLookup de ahí.
Y, por supuesto, funciona en todas las plataformas.