Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2021-44228-Scanner — Escáner de vulnerabilidades y parche de mitigación para Log4j2 CVE-2021-44228 | Kitploit
Herramientas/GitHubGitHub/logpresso/cve-2021-44228-scanner
Escáneres de VulnerabilidadesAnálisis de VulnerabilidadesAuditoría de ConfiguraciónSeguridad de Cadena de SuministroRespuesta a IncidentesAnálisis de Registros
GitHublogpresso/cve-2021-44228-scanner

CVE-2021-44228-Scanner

Escáner de vulnerabilidades y parche de mitigación para Log4j2 CVE-2021-44228

Ver Repositorio
861169hace 4 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Logotipo de Logpresso

log4j2-scan es una herramienta de línea de comandos binaria única para escanear y aplicar parches de mitigación de la vulnerabilidad CVE-2021-44228. También admite el escaneo y parcheo de archivos JAR anidados. Además, detecta las vulnerabilidades CVE-2021-45046 (log4j 2.15.0), CVE-2021-45105 (log4j 2.16.0), CVE-2021-44832 (log4j 2.17.0), CVE-2021-4104, CVE-2019-17571, CVE-2017-5645, CVE-2020-9488, CVE-2022-23302, CVE-2022-23305, CVE-2022-23307 (log4j 1.x) y CVE-2021-42550 (logback 0.9-1.2.7).

Gestión de riesgos de Log4j

Puede integrar log4j2-scan con el servicio Logpresso Watch para informes y gestión de parches. Visite https://logpresso.watch para más detalles.

Descarga

  • log4j2-scan 3.0.1 (Windows x64, 7z)
  • log4j2-scan 3.0.1 (Windows x64, zip)
    • Si recibe el error VCRUNTIME140.dll not found, instale Visual C++ Redistributable.
    • Si el ejecutable nativo no funciona, use el JAR en su lugar. No se admite 32 bits.
    • 7zip está disponible en www.7zip.org, es de código abierto y gratuito.
  • log4j2-scan 3.0.1 (Linux x64)
  • log4j2-scan 3.0.1 (Linux aarch64)
    • Si el ejecutable nativo no funciona, use el JAR en su lugar. No se admite 32 bits.
  • log4j2-scan 3.0.1 (Mac OS)
  • log4j2-scan 3.0.1 (Cualquier SO, 620KB)

Compilación

  • Cómo compilar una imagen nativa

Cómo usar

Simplemente ejecute log4j2-scan.exe o log4j2-scan con la ruta del directorio de destino. El archivo logpresso-log4j2-scan.jar debería funcionar con JRE/JDK 7+

La opción --fix es compatible con las siguientes vulnerabilidades:

  • Log4j v2
    • CVE-2021-44228 (JndiLookup)
    • CVE-2021-45046 (JndiLookup)
  • Log4j v1
    • CVE-2021-4104 (JMSAppender)
    • CVE-2019-17571 (SocketServer)
    • CVE-2020-9488 (SMTPAppender)
    • CVE-2022-23302 (JMSSink)
    • CVE-2022-23305 (JDBCAppender)
    • CVE-2022-23307 (paquete chainsaw)

La opción --fix no mitiga las siguientes vulnerabilidades:

  • Log4j v2
    • CVE-2021-44832 (JDBCAppender)
    • CVE-2021-45105 (DoS)
    • CVE-2017-5645 (SocketServer)
    • CVE-2020-9488 (SMTPAppender)
  • Logback
    • CVE-2021-42550

Uso

root@kitploit:~
Logpresso CVE-2021-44228 Vulnerability Scanner 3.0.1 (2022-02-13)
Usage: log4j2-scan [--scan-log4j1] [--fix] target_path1 target_path2

-f [config_file_path]
        Specify config file path which contains scan target paths.
        Paths should be separated by new line. Prepend # for comment.
--scan-log4j1
        Enables scanning for log4j 1 versions.
--scan-logback
        Enables scanning for logback CVE-2021-42550.
--scan-zip
        Scan also .zip extension files. This option may slow down scanning.
--zip-charset
        Specify an alternate zip encoding other than utf-8. System default charset is used if not specified.
--fix
        Backup original file and remove JndiLookup.class from JAR recursively.
        With --scan-log4j1 option, it also removes JMSAppender.class, SocketServer.class, SMTPAppender.class, SMTPAppender$1.class,
        JMSSink.class, JDBCAppender.class, and all classes of org.apache.log4j.chainsaw package
--force-fix
        Do not prompt confirmation. Don't use this option unless you know what you are doing.
--restore [backup_file_path]
        Unfix JAR files using zip archived file.
--backup-path [zip_output_path]
        Specify backup file path.
--backup-ext [zip]
        Specify backup file extension. zip by default.
        If --backup-path is specified, this option is ignored.
--all-drives
        Scan all drives on Windows
--drives c,d
        Scan specified drives on Windows. Spaces are not allowed here.
--no-symlink
        Do not detect symlink as vulnerable file.
--exclude [path_prefix]
        Path prefixes of directories whose absolute path starts with the specified value will be excluded.
        Does not support relative paths. You can specify multiple --exclude [path_prefix] pairs
--exclude-config [config_file_path]
        Specify exclude path prefix list in text file. Paths should be separated by new line. Prepend # for comment.
--exclude-pattern [pattern]
        Exclude specified paths of directories by pattern. Supports fragments.
        You can specify multiple --exclude-pattern [pattern] pairs (non regex)
--exclude-file-config [config_file_path]
        Specify exclude file path list in text file. Paths should be separated by new line. Prepend # for comment.
--exclude-fs nfs,tmpfs
        Exclude paths by file system type. nfs, nfs3, nfs4, afs, cifs, autofs,
        tmpfs, devtmpfs, fuse.sshfs, smbfs and iso9660 is ignored by default.
--api-key [key]
        Send reports to Logpresso Watch service.
--http-proxy [addr:port]
        Send reports via specified HTTP proxy server.
--syslog-udp [host:port]
        Send reports to remote syslog host.
        Send vulnerable, potentially vulnerable, and mitigated reports by default.
--syslog-level [level]
        Send reports only if report is higher or equal to specified level.
        Specify alert for vulnerable and potentially vulnerable reports.
        Specify info for vulnerable, potentially vulnerable, and mitigated reports.
        Specify debug for vulnerable, potentially vulnerable, mitigated, and error reports.
--syslog-facility [code]
        Default value is 16 (LOCAL0). Facility value must be in the range of 0 to 23 inclusive.
--rfc5424
        Follow RFC5424 The Syslog Protocol strictly.
--report-csv
        Generate log4j2_scan_report_yyyyMMdd_HHmmss.csv in working directory if not specified otherwise via --report-path [path]
--report-json
        Generate log4j2_scan_report_yyyyMMdd_HHmmss.json in working directory if not specified otherwise via --report-path [path]
--report-patch
        Report also patched log4j file.
--report-path
        Specify report output path including filename. Implies --report-csv.
--report-dir
        Specify report output directory. Implies --report-csv.
--no-empty-report
        Do not generate empty report.
--csv-log-path
        Specify csv log file path. If log file exists, log will be appended.
--json-log-path
        Specify json log file path. If log file exists, log will be appended.
--old-exit-code
        Return sum of vulnerable and potentially vulnerable files as exit code.
--debug
        Print exception stacktrace for debugging.
--trace
        Print all directories and files while scanning.
--silent
        Do not print progress message.
--throttle
        Limit scan files per second.
--help
        Print this help.

En Windows

root@kitploit:~
log4j2-scan [--fix] target_path

En Linux

root@kitploit:~
./log4j2-scan [--fix] target_path

En UNIX (AIX, Solaris, etc.)

root@kitploit:~
java -jar logpresso-log4j2-scan-3.0.1.jar [--fix] target_path

Si añade 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. Todos los archivos .bak se archivan en un único archivo zip con el nombre log4j2_scan_backup_yyyyMMdd_HHmmss.zip y luego se eliminan de forma segura. En la mayoría de los entornos, la funcionalidad de búsqueda JNDI no se utiliza. Sin embargo, debe usar esta opción bajo su propio riesgo. Puede restaurar fácilmente los archivos JAR originales vulnerables usando la opción --restore.

Según el sistema operativo:

  • Windows: Es necesario cerrar cualquier proceso JVM en ejecución antes de aplicar el parche debido a los bloqueos de archivos. Inicie el proceso JVM afectado después del parche.
  • Linux/macOS: Aplique el parche, reinicie la JVM después.

Si desea automatizar el trabajo de parcheo, use la opción --force-fix. Con esta opción, el 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 añade la opción --trace, este programa imprimirá todos los directorios y archivos visitados. Use esta opción solo para depuración.

En Windows:

root@kitploit:~
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

Cómo funciona

Se ejecuta en 5 pasos:

  1. Busca recursivamente todos los archivos .jar, .war, .ear, .aar, .rar, .nar.
  2. Busca la entrada META-INF/maven/org.apache.logging.log4j/log4j-core/pom.properties dentro del archivo JAR.
  3. Lee groupId, artifactId y version.
  4. Compara la versión de log4j2 e imprime la versión vulnerable.
  5. Si se usa la opción --fix, realiza una copia de seguridad del archivo vulnerable y lo parchea.
    • Por ejemplo, el archivo vulnerable.jar original se copia a vulnerable.jar.bak
  6. Archiva todos los archivos de copia de seguridad en el archivo zip log4j2_scan_backup_yyyyMMdd_HHmmss.zip y luego elimina los archivos .bak.

Código de salida para automatización

  • -1 fallo al ejecutar
  • 0 para limpio (sin vulnerabilidad)
  • 1 para encontrado
  • 2 para algunos errores

Integraciones de herramientas

  • HCL BigFix
  • Checkmk
    • Ver también el plugin de agente checkmk CVE-log4j

Contacto

Si tiene alguna pregunta o problema, cree un issue en este repositorio.

Acerca de Logpresso

Logpresso es una empresa líder en la industria de la IA y big data ubicada en Corea del Sur. Logpresso proporciona soluciones SIEM, SOAR, gestión de logs y FDS con su propia plataforma de big data.

Descargar herramienta