
Proof-of-Concept-Skript für CVE-2016-10708, das OpenSSH-Server auf die Schwachstelle scannt und durch Überschwemmung mit manipulierten SSH_MSG_NEWKEYS-Paketen einen Denial-of-Service ausführt.
Dieses Proof-of-Concept-Skript nutzt eine Schwachstelle in OpenSSH-Versionen vor 7.4 (CVE-2016-10708) aus, indem es unerwartete SSH_MSG_NEWKEYS-Pakete sendet, die zu einem DoS führen können. Es kann in zwei Modi betrieben werden:
NEWKEYS-Nachrichten, um einen Denial-of-Service-Zustand auszulösen.Dieses Tool wird ausschließlich zu Forschungs- und Bildungszwecken bereitgestellt. Das unbefugte Scannen oder Angreifen von Systemen, die Ihnen nicht gehören oder für die Sie keine ausdrückliche Erlaubnis zum Testen haben, kann gegen geltende Gesetze und Vorschriften verstoßen.
Verwenden Sie dieses Skript verantwortungsbewusst:
-t, --targets
Durch Kommas getrennte Liste der Ziel-IPs oder Hostnamen (erforderlich)
-p, --port
SSH-Port, zu dem verbunden werden soll (Standard: 22)
-m, --mode
Betriebsmodus: scan oder attack (erforderlich)
--sockets
Anzahl der TCP-Verbindungen pro Ziel (Standard: 5)
--threads
Maximale Anzahl gleichzeitiger Worker-Threads (Standard: 10)
-v, --verbose
Debug-Level-Logging-Ausgabe aktivieren
Banner-Austausch Im Scan-Modus verbindet sich das Skript mit jedem Ziel und liest das SSH-Banner, um die OpenSSH-Version zu extrahieren.
Verbindungsaufbau
Im Angriffsmodus öffnet es die angegebene Anzahl von TCP-Sockets pro Ziel und sendet sofort ein gefälschtes Client-Banner (SSH-2.0-OpenSSH_8.9), dann hält es die Verbindungen offen.
Paketerstellung
Es erstellt rohe SSH-Transportpakete, die nur die SSH_MSG_NEWKEYS-Nutzlast enthalten. Paketlänge, Padding-Länge und zufälliges Padding werden so berechnet, dass sie dem SSH-Binärpaketprotokoll entsprechen.
Flood-Schleife
Das Skript tritt in eine Endlosschleife ein, die das erstellte NEWKEYS-Paket auf jedem Socket mit zufälligen Verzögerungen unterhalb der Millisekunde sendet. Nicht gepatchte sshd-Instanzen werden die außer der Reihe eintreffenden NEWKEYS-Nachrichten falsch behandeln und schließlich abstürzen oder instabil werden.