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
CVE-2024-23724 — Exploit de prueba de concepto para CVE-2024-23724 en Ghost CMS, que demuestra escalada de privilegios mediante la carga de una imagen de perfil SVG maliciosa. | Kitploit
Herramientas/GitHubGitHub/youssefdds/cve-2024-23724
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebCTFPruebas de PenetraciónAprendizaje y Educación
GitHubyoussefdds/cve-2024-23724

CVE-2024-23724

Exploit de prueba de concepto para CVE-2024-23724 en Ghost CMS, que demuestra escalada de privilegios mediante la carga de una imagen de perfil SVG maliciosa.

Ver Repositorio
2hace 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 →
Compartir

Instalación

Instalación automática (recomendada)

Para probar la vulnerabilidad, necesitamos dos cuentas: una cuenta con el rol de administrador (propietario) y una cuenta con el rol de contribuidor. En Ghost CMS, primero hay que acceder al panel de administración para crear la cuenta de propietario, y luego, desde esa cuenta, invitar a un contribuidor para que cree su propia cuenta. Sin embargo, en Ghost, la única forma de invitar a un contribuidor es enviando un enlace de invitación por correo electrónico, lo que requiere un servicio de entrega de correos para enviar el mensaje a la cuenta del contribuidor. Para facilitar las cosas, hemos creado una cuenta de Mailgun, añadido un contribuidor a Ghost y luego creado un archivo de volcado de la base de datos en el estado en que lo teníamos. En nuestra configuración de Docker Compose, primero restauramos la base de datos a partir del volcado antes de iniciar Ghost, de modo que no necesite un servicio de entrega de correos para probar esta vulnerabilidad. Sin embargo, si desea comenzar con una instalación limpia y no usar el volcado de base de datos proporcionado, puede usar el Docker Compose en la carpeta manual-setup para iniciar una instalación limpia de Ghost. A continuación, encontrará los pasos para configurar Mailgun (un servicio de entrega de correos que usamos) y hacerlo funcionar con Ghost. Para esta instalación, estas son las credenciales de administrador y contribuidor que debe usar para iniciar sesión:

  • Admin:
    • Email: [email protected]
    • Contraseña: ZtXfMq2FaRHGm@!
  • Contribuidor:
    • Email: [email protected]
    • Contraseña: ZtXfMq2FaRHGm@!

Instalación manual con Mailgun

Para empezar, debe crear una cuenta de Mailgun. Una vez creada su cuenta, obtenga sus credenciales SMTP. Después de obtener sus credenciales, colóquelas en el archivo config.development.json siguiendo el mismo formato que se muestra en el archivo config.example.json.

Aquí tiene una guía paso a paso:

  1. Cree una cuenta de Mailgun en Mailgun.
  2. Acceda a la sección de credenciales SMTP en su panel de control de Mailgun.
  3. Copie sus credenciales SMTP.
  4. Duplique el archivo config.example.json y renómbrelo como config.development.json.
  5. Complete sus credenciales SMTP en el archivo config.development.json. Esto garantizará que su entorno de desarrollo esté configurado correctamente para enviar correos electrónicos a través de Mailgun.
  6. Si ha creado una cuenta de Mailgun, el dominio Mailgun que tendrá por defecto es un dominio sandbox, lo que significa que debe autorizar el correo electrónico del contribuidor que desea usar para recibir el enlace de invitación. Puede hacerlo en el panel de control de Mailgun, en (barra lateral izquierda) Send > Sending > Overview. Mailgun solo enviará correos electrónicos a destinatarios autorizados cuando use un dominio sandbox. Al agregar un destinatario autorizado, recibirá un correo para confirmar la autorización. Después de confirmar la autorización, Ghost ya puede enviar correos electrónicos a ese destinatario a través de Mailgun.
  7. Después de crear una cuenta de propietario en Ghost visitando http://localhost:3001/ghost y de agregar el correo electrónico del contribuidor a la lista de destinatarios autorizados en Mailgun, ya puede enviar un enlace de invitación al contribuidor a ese correo electrónico con Mailgun desde http://localhost:3001/ghost/#/settings/staff.
  8. Ahora puede usar el enlace de invitación recibido en el correo para crear una cuenta de contribuidor. Después de esto, tendrá una configuración idéntica a la que usamos con la restauración de la base de datos.

Cómo probar el ataque

Puede iniciar la instalación que haya elegido usando el siguiente comando:

root@kitploit:~
docker-compose up

Para probar el ataque, siga estos pasos:

  1. Genere la foto de perfil SVG maliciosa usando el script generate-malicious-svg.py. Para ello, ejecute el siguiente comando reemplazando [USERNAME] y [PASSWORD] por las credenciales de la cuenta de contribuidor que haya creado:
root@kitploit:~
python generate-malicious-svg.py -u [USERNAME] -p [PASSWORD] -t http://localhost

Para la instalación automática, el comando es:

root@kitploit:~
python generate-malicious-svg.py -u [email protected] -p ZtXfMq2FaRHGm@! -t http://localhost

Este comando genera un archivo SVG malicioso llamado tenant-takeover.svg en el directorio actual.

  1. Conéctese a la interfaz de administración de Ghost usando las credenciales de la cuenta de contribuidor que haya creado. Para ello, visite http://localhost:3001/ghost e inicie sesión con las credenciales de la cuenta de contribuidor.

  2. Acceda a la página de modificación de su perfil haciendo clic en su foto de perfil en la parte inferior izquierda de la pantalla y luego en el botón "Your profile".

  3. Haga clic en el icono de perfil para cambiar su foto de perfil. Seleccione el archivo SVG malicioso que generó en el paso 1.

  4. Guarde los cambios haciendo clic en el botón "Save & close". Puede refrescar la página para verificar que la foto de perfil se haya cambiado.

  5. Ahora puede cerrar sesión de la cuenta de contribuidor e iniciar sesión en la cuenta de administrador. En http://localhost:3001/ghost/#/settings/staff?tab=contributors, puede ver que la foto de perfil del contribuidor ha cambiado. Si hace clic derecho sobre la foto de perfil y abre la imagen en una nueva pestaña, se desencadenará el ataque. Ahora puede volver a http://localhost:3001/ghost/#/settings/staff y verá que el contribuidor ahora es propietario del blog y usted se ha convertido en administrador.

🎥 Video Explicativo

Hemos realizado un video que describe en detalle todo el proceso y los pasos necesarios para implementar la CVE. Este video sirve como guía visual para comprender mejor nuestro enfoque y las acciones realizadas.

Enlace al video: Haga clic aquí para ver el video

No dude en consultar este video para obtener una visión completa del proyecto y de los pasos técnicos seguidos.

Descargar herramienta