
trabajo de mitigación de log4j
Este rol de Ansible despliega un script basado en Python para mitigar programáticamente la vulnerabilidad Log4Shell (CVE-2021-44228) eliminando la clase vulnerable JndiLookup de los archivos JAR de Log4j afectados.
Está diseñado para ejecutarse mediante Ansible, pero también puedes ejecutar el script manualmente si lo deseas.
Lea más sobre la vulnerabilidad Log4Shell aquí:
JndiLookup.class está presenteJndiLookup.class del JARzip y zipinfo instalados en los sistemas de destinoPyYAML instalado en los sistemas de destino (pip install pyyaml)El script se configura mediante un archivo YAML, generado automáticamente por el rol.
Ejemplo config.yaml:
app_directories:
- /opt/apps
backup_directory: /opt/backups
log_file: /var/log/log4j_mitigation.log
app_directories: lista de directorios para escanear archivos JARbackup_directory: directorio donde almacenar las copias de seguridad de los JAR originaleslog_file: ruta a un archivo de log para el seguimiento de operacionesAñade este rol a tu playbook:
- name: Mitigate Log4Shell CVE-2021-44228
hosts: all
become: true
roles:
- log4shell_mitigation
Si deseas ejecutar el script manualmente, puedes hacerlo:
Copia el script a tu máquina de destino:
files/log4shell_mitigator.py
Crea tu propio config.yaml en el mismo directorio.
Ejecútalo:
python3 log4shell_mitigator.py
/var/log/log4j_mitigation.log) para ver qué JARs fueron parcheadosMIT
Se aceptan PRs y mejoras -> por favor, haz un fork y envía una solicitud de merge.
Este software y el rol de Ansible que lo acompaña se proporcionan “tal cual” y sin garantías de ningún tipo, expresas o implícitas. Usted es el único responsable de evaluar y probar la idoneidad, seguridad y eficacia de este código antes de aplicarlo a cualquier entorno. AxisOps Ltd (GB08681761) rechaza expresamente cualquier responsabilidad por daños, pérdida de datos, interrupción del servicio u otros perjuicios derivados del uso o mal uso de este código.
Úselo bajo su propio riesgo. Siempre audite, pruebe y valide el código en un entorno controlado antes del despliegue en producción.
Equipo SysOps de AxisOps