Alerta de Seguridad No. 25/21: Vulnerabilidad crítica de día cero en Apache Log4j 2

  • 11/12/2021
  • 381
Alerta de Seguridad No. 25/21: Vulnerabilidad crítica de día cero en Apache Log4j 2

El pasado 9 de diciembre se hizo pública la explotación activa de una vulnerabilidad de día cero que afecta a Apache Log4j 2, herramienta de registro basada en el lenguaje de programación Java, desarrollada por Apache Foundation, que se utiliza ampliamente en el desarrollo de sistemas empresariales para registrar información. Dicha vulnerabilidad, conocida como Log4Shell o LogJam, tiene como identificador el CVE-2021-44228, y ha sido calificada como crítica por su gran impacto en diversos sectores.

Recursos afectados:

  • Están afectados todos los productos que utilizan la librería Apache Log4 desde la versión 2.0 hasta la versión 2.14.1.

 

Descripción:

La explotación exitosa de esta vulnerabilidad aprovecha una validación de entrada incorrecta al procesar solicitudes LDAP, permitiendo la ejecución remota de código (RCE) sin autenticación para tomar el control total del servidor afectado, por lo que se compromete por completo la confidencialidad e integridad de los datos, así como la disponibilidad del sistema.

Log4j 2 se usa ampliamente en muchos productos y servicios tales como Minecraft, Elasticsearch, Hadoop, Apache Struts2, Apache Solr, Apache Druid, Apache Flink, Apple iCloud, Cisco, Fortinet, Debian, Citrix, RedHat, Docker, VMware, entre otros. Además, Log4j 2 se encuentra con mucha frecuencia en el software empresarial que emplea Java. Debido a esta metodología de implementación el impacto de esta vulnerabilidad es difícil de cuantificar. De manera similar a otras vulnerabilidades de perfil alto, como Heartbleeds y Shellshock, se estima que se descubran un número cada vez mayor de productos vulnerables en las próximas semanas. Muchos productos de fabricantes importantes están siendo todavía evaluados.

La base de datos del NIST ha registrado esta vulnerabilidad, pero por el momento, no se le ha asignado puntuación de acuerdo a la escala CVSSv3. No obstante, ha sido calificada como crítica por su gran impacto en múltiples aplicaciones y porque ya se encuentran disponibles en Internet exploits y una prueba de concepto (PoC).

Diferentes analistas y compañías de ciberseguridad están publicando reglas para los sistemas de detección, con el objetivo de identificar un intento de explotación de la vulnerabilidad.

Apache ha lanzado la versión Log4j 2.15.0 para abordar esta vulnerabilidad. 

 

Recomendaciones:

Se recomienda a los usuarios y administradores de sistemas que apliquen los parches de seguridad en cuanto se encuentren disponibles, con el fin de evitar la exposición a ataques externos y la toma de control de los sistemas informáticos.

La vulnerabilidad también se puede mitigar en versiones anteriores (sólo versión 2.10 y posteriores) estableciendo la propiedad del sistema "log4j2.formatMsgNoLookups" en "true" o eliminando la clase JndiLookup del classpath.

Si se está utilizando una versión anterior a la 2.10.0 y no se puede actualizar, existen dos opciones de mitigación:

  • Modificar el diseño de cada patrón de registro para cambiar %m{nolookups} por %m en los archivos de configuración de registro. (Ver referencia No. 7).
  • Sustituir una implementación vacía o no vulnerable de la clase apache.logging.log4j.core.lookup.JndiLookup, de manera que su cargador de clases use el reemplazo en lugar de la versión vulnerable de la clase.

 

Referencias:

  • http://cve.mitre.org/cgi-bin/cvename.cgi?name=2021-44228
  • https://nvd.nist.gov/vuln/detail/CVE-2021-44228
  • https://logging.apache.org/log4j/2.x/download.html
  • https://www.lunasec.io/docs/blog/log4j-zero-day/
  • https://www.ccn-cert.cni.es/seguridad-al-dia/alertas-ccn-cert/11435-ccn-cert-al-09-21-vulnerabilidad-en-apache-log4j-2.html
  • https://www.picussecurity.com/resource/blog/simulating-and-preventing-cve-2021-44228-apache-log4j-rce-exploits
  • https://issues.apache.org/jira/browse/LOG4J2-2109
  • https://gist.github.com/Neo23x0/e4c8b03ff8cdf1fa63b7d15db6e3860b
  • https://github.com/tangxiaofeng7/CVE-2021-44228-Apache-Log4j-Rce
  • ttps://github.com/NCSC-NL/log4shell/blob/main/software/README.md#software-overview