claranet.log4shell
Rol de Ansible - log4shell
:star: ¡Dános una estrella en GitHub — nos motiva mucho!
Encuentra Log4Shell CVE-2021-44228 en tu sistema
Este rol intenta encontrar JAR y WAR en el sistema de archivos y en archivos abiertos (lsof).
:warning: Tu sistema puede funcionar lentamente durante el escaneo debido a una búsqueda en /
y al proceso de descompresión para buscar dentro de los JAR/WAR.
Este rol llena la variable log4shell_analyze_versions
con un diccionario como este:
{
"/tmp/rundeck.war": {
"version": "2.13.2",
"type": "war",
"jndilookup": false
},
"/tmp/apache-log4j-2.12.1-bin/log4j-core-2.12.1.jar": {
"version": "2.12.1",
"type": "jar",
"jndilookup": true
},
"/tmp/apache-log4j-2.12.1-bin/log4j-core-2.12.1-tests.jar": {
"version": "2.12.1",
"type": "jar",
"jndilookup": false
}
}
La clave es la ruta donde el rol ha encontrado la biblioteca log4j.
El valor es un diccionario que contiene la versión de log4j en version
, el tipo de archivo en type
(war/jar) y la clave jndilookup
que indica si el archivo org/apache/logging/log4j/core/lookup/JndiLookup.class
está presente en un JAR.
Un JAR sin JndiLookup.class no es vulnerable según https://www.kb.cert.org/vuls/id/930724.
:warning: Requisitos
Ansible >= 4
:zap: Instalación
ansible-galaxy install claranet.log4shell
:gear: Variables del rol
Variable | Valor por defecto | Descripción |
---|---|---|
log4shell_scan_path | / | Ruta del sistema de archivos a escanear |
:arrows_counterclockwise: Dependencias
N/A
:pencil2: Ejemplo de Playbook
---
- hosts: all
roles:
- role: claranet.log4shell
log4shell_scan_path: /opt
:closed_lock_with_key: Fortalecimiento
:heart_eyes_cat: Contribuciones
:copyright: Licencia
Finding Log4Shell CVE-2021-44228 on your system
ansible-galaxy install claranet.log4shell