Una vulnerabilidad crítica en la biblioteca Apache Log4j

Unos investigadores han descubierto una vulnerabilidad crítica en la biblioteca Apache Log4j, que obtiene una puntuación perfecta de 10 sobre 10 en el CVSS. A continuación, te indicamos cómo protegerte.

Algunos medios de noticias de seguridad de la información ya han reportado el descubrimiento de la vulnerabilidad crítica CVE-2021-44228 en la biblioteca Apache Log4j (nivel de gravedad CVSS 10 de 10). Millones de aplicaciones Java utilizan esta biblioteca para registrar mensajes de error. Y, lo que es peor, los atacantes ya están explotando activamente esta vulnerabilidad. Por esta razón, la Apache Foundation recomienda a todos los desarrolladores que actualicen la biblioteca a la versión 2.15.0 y, si esto no fuera posible, usar uno de los métodos descritos en la página Apache Log4j Security Vulnerabilities.

Por qué la CVE-2021-44228 es tan peligrosa

La CVE-2021-44228, también llamada Log4Shell o LogJam, es una vulnerabilidad del tipo de ejecución remota de código (RCE), por lo que, si los atacantes logran explotarla en uno de los servidores, obtienen la capacidad de ejecutar código arbitrario y tomar el control total del sistema.

Lo que hace que la CVE-2021-44228 sea especialmente peligrosa es su facilidad de explotación: incluso un ciberdelincuente sin experiencia podría ejecutar con éxito un ataque utilizando esta vulnerabilidad. De acuerdo con los investigadores, todo lo que tienen que hacer los atacantes es obligar a la aplicación a escribir una única cadena en el registro y luego pueden cargar su propio código en la aplicación debido a la función de sustitución de búsqueda de mensajes.

Las pruebas de concepto (PoC) para los ataques a través de la CVE-2021-44228 ya están disponibles en Internet. Por lo tanto, no es sorprendente que las empresas de ciberseguridad ya estén registrando escaneos masivos de redes en busca de aplicaciones vulnerables, así como ataques a honeypots, también conocidos como los sistemas señuelo.

Esta vulnerabilidad fue descubierta por Chen Zhaojun de Alibaba Cloud Security Team.

¿Qué es Apache Log4J y por qué es tan popular esta biblioteca?

Apache Log4j forma parte del Apache Logging Project. En general, el uso de esta biblioteca es una de las formas más fáciles de registrar errores, por ello, la mayoría de los desarrolladores de Java la usan.

Muchas de las grandes empresas de software y servicios online utilizan la biblioteca Log4j, entre las que se incluyen Amazon, Apple iCloud, Cisco, Cloudflare, ElasticSearch, Red Hat, Steam, Tesla, Twitter, etc. Dada la popularidad de la biblioteca, algunos investigadores de seguridad de la información esperan un aumento significativo en los ataques a servidores vulnerables en los próximos días.

¿Qué versiones de la biblioteca Log4j son vulnerables y cómo puedes proteger tus servidores de los ataques?

Casi todas las versiones de Log4j son vulnerables, desde la 2.0-beta9 hasta la 2.14.1. El método de protección más simple y eficaz es instalar la versión más reciente de la biblioteca, la 2.15.0. Puedes descargarla en la página del proyecto.

Si por algún motivo no es posible actualizar la biblioteca, Apache Foundation recomienda usar uno de los métodos de mitigación. En el caso de las versiones de Log4J de la 2.10 a la 2.14.1, recomiendan configurar la propiedad del sistema log4j2.formatMsgNoLookups o configurar la variable de entorno LOG4J_FORMAT_MSG_NO_LOOKUPS con el valor true.

Para proteger las versiones anteriores de Log4j (de la 2.0-beta9 a la 2.10.0), los desarrolladores de la biblioteca recomiendan eliminar la clase JndiLookup de la ruta de clases: zip -q -d log4j-core – *. Jar org / apache / logging / log4j / core / lookup / JndiLookup .class.

Además, te recomendamos instalar soluciones de seguridad en tus servidores; en muchos casos, esto te permitirá detectar el lanzamiento de código malicioso y detener el desarrollo del ataque.

Consejos