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-2024-6387 — SSH-Exploit für CVE-2024-6387 : RCE im OpenSSH-Server auf glibc-basierten Linux-Systemen | Kitploit
Tools/GitHubGitHub/symbolexe/cve-2024-6387
SchwachstellenanalyseExploitationPenetrationstestsRed TeamingRemote-Access-ToolPayload-Entwicklung
GitHubsymbolexe/cve-2024-6387

CVE-2024-6387

SSH-Exploit für CVE-2024-6387 : RCE im OpenSSH-Server auf glibc-basierten Linux-Systemen

Repository anzeigen
36vor 2 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

CVE-2024-6387

Screenshot 2024-07-04 182931 CVE-2024-6387 ist ein hypothetisches Beispiel, aber nehmen wir an, es handelt sich um eine reale Schwachstelle in der OpenSSH-Serverimplementierung. Diese Schwachstelle könnte einen Pufferüberlauf oder einen Speicherfehler beinhalten, der es entfernten Angreifern ermöglicht, beliebigen Code auf dem Server auszuführen. Hier ist eine allgemeine Erklärung, wie eine solche Schwachstelle ausgenutzt werden könnte:

  1. Heap Spraying: Der Angreifer bereitet den Heap so vor, dass er vorhersagbar wird.
  2. Speicherkorruption: Der Angreifer sendet speziell präparierte Pakete, die Speicherfehler verursachen.
  3. Beliebige Codeausführung: Der Angreifer platziert Shellcode (schädlichen Code) an einer bekannten Stelle und leitet die Ausführung dorthin um.

Der Exploit-Code

Der bereitgestellte Python-Code ist ein Exploit, der die Schwachstelle CVE-2024-6387 ausnutzt. Hier ist eine detaillierte Aufschlüsselung der Schritte: Verbindungsaufbau: Stellt eine TCP-Verbindung zum Ziel-SSH-Server her.

root@kitploit:~
def setup_connection(ip, port):
    # ...

Pakete senden und empfangen: Kümmert sich um das Senden und Empfangen von Paketen an/vom SSH-Server.

root@kitploit:~
def send_packet(sock, packet_type, data):
    # ...

SSH-Versionsaustausch: Initiiert den SSH-Handshake durch Senden und Empfangen der SSH-Versionszeichenfolge.

root@kitploit:~
def send_ssh_version(sock):
    # ...
def receive_ssh_version(sock):
    # ...

Schlüsselaustauschinit (KEX_INIT): Sendet und empfängt das Paket zur Initialisierung des Schlüsselaustauschs.

root@kitploit:~
def send_kex_init(sock):
    # ...
def receive_kex_init(sock):
    # ...

SSH-Handshake durchführen: Kombiniert die obigen Schritte, um den SSH-Handshake abzuschließen.

root@kitploit:~
def perform_ssh_handshake(sock):
    # ...

Heap-Vorbereitung: Sendet eine Reihe von Paketen, um den Heap-Zustand auf dem Server zu manipulieren.

root@kitploit:~
def prepare_heap(sock):
    # ...

Gefälschte Dateistruktur: Erstellt gefälschte Dateistrukturen, um die Speicherfehler-Schwachstelle auszunutzen.

root@kitploit:~
def create_fake_file_structure(data, glibc_base):
    # ...

Parse-Zeit messen: Misst die Zeit, die der Server zum Analysieren bestimmter Pakete benötigt, um die zeitliche Abstimmung des endgültigen Exploits zu unterstützen.

root@kitploit:~
def time_final_packet(sock):
    # ...

Öffentliches Schlüsselpaket: Erstellt ein Paket, das die Exploit-Nutzlast einschließlich des Shellcodes enthält.

root@kitploit:~
def create_public_key_packet(packet, size, glibc_base):
    # ...

Race-Condition-Exploit: Versucht, die Race-Condition durch korrekte zeitliche Abstimmung des letzten Pakets auszunutzen.

root@kitploit:~
def attempt_race_condition(sock, parsing_time, glibc_base):
    # ...

Hauptfunktion: Koordiniert den gesamten Exploit-Prozess, einschließlich mehrerer Versuche mit verschiedenen glibc-Basen.

root@kitploit:~
def main():
    # ...

Exploit-Workflow

  • Verbindungsaufbau: Der Exploit beginnt mit dem Aufbau einer Verbindung zum SSH-Server.
  • Handshake und Heap-Vorbereitung: Der Exploit führt den SSH-Handshake durch und sendet mehrere Pakete, um den Heap vorzubereiten.
  • Zeitmessung: Der Exploit misst die Antwortzeit des Servers auf bestimmte Pakete, um die zeitliche Abstimmung des endgültigen Exploits zu bestimmen.
  • Letzter Exploit-Versuch: Der Exploit erstellt und sendet ein letztes Paket, das den Shellcode enthält. Er versucht, dieses Paket so zu senden, dass die Schwachstelle ausgelöst wird.

Zusätzliche Überlegungen

  • Robuste Fehlerbehandlung: Der bereitgestellte Code enthält eine verbesserte Fehlerbehandlung, um sicherzustellen, dass das Skript sich von häufigen Netzwerkproblemen erholen kann.
  • Modularität: Der Code ist modular aufgebaut, was das Verständnis und die Wartung erleichtert.
  • Zeitsteuerung und Synchronisation: Das Ausnutzen einer Race-Condition erfordert oft eine präzise Zeitsteuerung, die das Skript durch Messen und Anpassen der Sendezeitpunkte von Paketen zu bewältigen versucht.

Zusammenfassung

CVE-2024-6387 stellt eine schwerwiegende Schwachstelle in OpenSSH dar, die die Ausführung von remoteem Code ermöglicht. Das bereitgestellte Python-Skript nutzt diese Schwachstelle aus, indem es den Heap manipuliert und die Sendezeit von Paketen timet, um Speicherfehler zu verursachen, und letztlich den Shellcode des Angreifers auf dem Server ausführt. Das Skript demonstriert typische Exploit-Entwicklungstechniken, darunter Heap Spraying, Speicherkorruption und präzise Zeitsteuerung für Race-Conditions.

Tool herunterladen