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
BlueGate-CVE-2020-0609 — BlueGate Exploit-Validator – RD-Gateway-Validator für CVE-2020-0609 und CVE-2020-0610 (BlueGate) unter Verwendung von OpenSSL DTLS über UDP/3391. | Kitploit
Tools/GitHubGitHub/bhanunamikaze/bluegate-cve-2020-0609
SchwachstellenscannerSchwachstellenanalyseExploitationNetzwerksicherheitPenetrationstests
GitHubbhanunamikaze/bluegate-cve-2020-0609

BlueGate-CVE-2020-0609

BlueGate Exploit-Validator – RD-Gateway-Validator für CVE-2020-0609 und CVE-2020-0610 (BlueGate) unter Verwendung von OpenSSL DTLS über UDP/3391.

Repository anzeigen
vor 13h 45mNoch 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

RD Gateway BlueGate Validator

CVE-2020-0609 / CVE-2020-0610 Remote-Validierungstool

Ein kleines nur-prüfendes Python-Dienstprogramm zur Remote-Validierung des Patch-Verhaltens im Zusammenhang mit den Microsoft Remote Desktop Gateway-Schwachstellen:

  • CVE-2020-0609
  • CVE-2020-0610

Die Schwachstellen, die allgemein mit der BlueGate-Forschung in Verbindung gebracht werden, betreffen Microsoft Remote Desktop Gateway (RD Gateway) und können es einem nicht authentifizierten Remote-Angreifer potenziell ermöglichen, beliebigen Code auf einem ungepatchten Server auszuführen.

Dieses Dienstprogramm implementiert keine Remote-Codeausführung, keinen Denial-of-Service, keine Persistenz und keine Payload-Zustellung.

Es führt eine einzelne Validierungsanfrage auf Protokollebene durch und wertet die RD-Gateway-Antwort aus.


Zusammenfassung der Schwachstellen

EigenschaftDetails
CVEsCVE-2020-0609, CVE-2020-0610
KomponenteMicrosoft Remote Desktop Gateway
SchwachstellentypRemote-Codeausführung
Authentifizierung erforderlichNein
BenutzerinteraktionNein
AngriffsvektorNetzwerk
SchweregradKritisch
CVSS v3.19.8
CVSS-VektorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Primäres ProtokollRD-Gateway-UDP-Transport
Standard-UDP-Port3391/UDP
Öffentlicher NameBlueGate

Betroffene Windows-Server-Familien umfassen:

root@kitploit:~
Windows Server 2012
Windows Server 2012 R2
Windows Server 2016
Windows Server 2019

Systeme, die Microsofts Sicherheitsupdates vom Januar 2020 oder spätere kumulative Updates installiert haben, sollten die relevanten Korrekturen enthalten.


Warum UDP/3391 statt HTTPS/443?

Eine RD-Gateway-Bereitstellung kann mehrere verwandte Dienste bereitstellen.

Zum Beispiel:

root@kitploit:~
                  Microsoft RD Gateway
                         |
            +------------+------------+
            |                         |
        TCP/443                     UDP/3391
            |                         |
      HTTPS / RDWeb             RD Gateway UDP
      RPC-over-HTTPS             DTLS-Transport

Das RDWeb-Portal kann über einen Browser sichtbar sein unter:

root@kitploit:~
https://gateway.example/RDWeb/

und die RD-Gateway-Funktionalität kann auch über TCP/443 bereitgestellt werden.

Die Angriffsfläche, die von diesem BlueGate-Validator getestet wird, ist jedoch der RD-Gateway-UDP-Transport, der normalerweise auf folgendem Port lauscht:

root@kitploit:~
UDP/3391

Der Scanner verwendet daher DTLS über UDP/3391, nicht HTTPS über TCP/443.

Das Skript auf Port 443 zu ändern würde bedeuten, Folgendes zu testen:

root@kitploit:~
UDP/443

was nicht dasselbe ist wie:

root@kitploit:~
TCP/443

Bestätigen des RD-Gateway-UDP-Dienstes

Vor dem Ausführen des Schwachstellen-Validators kann UDP/3391 mit Nmap überprüft werden:

root@kitploit:~
nmap -Pn -sU -p3391 --reason <ZIEL>

Beispiel:

root@kitploit:~
PORT     STATE SERVICE
3391/udp open  savant

Die Dienstbezeichnung savant ist lediglich Nmaps Portnamen-Zuordnung und identifiziert nicht unbedingt den tatsächlichen Dienst.

Der RD-Gateway-DTLS-Dienst kann zuverlässiger mit OpenSSL bestätigt werden.

DTLS 1.0

root@kitploit:~
openssl s_client \
    -dtls1 \
    -connect <ZIEL>:3391 \
    -state

DTLS 1.2

root@kitploit:~
openssl s_client \
    -dtls1_2 \
    -connect <ZIEL>:3391 \
    -state

Ein erfolgreicher Handshake bestätigt, dass ein DTLS-Dienst auf UDP/3391 antwortet.

Typische erfolgreiche Ausgabe umfasst:

root@kitploit:~
SSL handshake has read ...
New, SSLv3, Cipher is ...
Protocol: DTLSv1

oder:

root@kitploit:~
Protocol: DTLSv1.2

Was dieses Tool tut

Der Validator:

  1. Startet einen OpenSSL-DTLS-Client.
  2. Verbindet sich über UDP/3391 mit dem Ziel-RD-Gateway.
  3. Wartet, bis der DTLS-Handshake abgeschlossen ist.
  4. Sendet ein einzelnes BlueGate-Fragmentierungs-Validierungspaket.
  5. Wartet auf die RD-Gateway-Anwendungsantwort.
  6. Extrahiert den endgültigen Status-DWORD aus einer 16-Byte-Antwort.
  7. Klassifiziert die Antwort.

Für die Validierung sind keine Authentifizierungsdaten erforderlich.

Das Dienstprogramm enthält absichtlich:

root@kitploit:~
KEINE Reverse-Shell
KEINE Befehlsausführung
KEIN Exploit-Payload
KEINE Denial-of-Service-Schleife
KEINE wiederholte Übertragung fehlerhafter Pakete

Anforderungen

Getestet mit:

root@kitploit:~
Python 3
OpenSSL-Befehlszeilenclient
Linux

OpenSSL überprüfen:

root@kitploit:~
openssl version

Python überprüfen:

root@kitploit:~
python3 --version

Kein Python-OpenSSL-Modul ist erforderlich, da das Skript die Systemimplementierung openssl s_client startet.

Dies vermeidet Kompatibilitätsprobleme, die bei älteren BlueGate-Implementierungen auftraten, die auf veralteten Python/OpenSSL-APIs wie:

root@kitploit:~
DTLSv1_client_method

basierten.


Verwendung

Grundlegender Scan:

root@kitploit:~
python3 BlueGate.py <ZIEL>

Beispiel:

root@kitploit:~
python3 BlueGate.py 192.0.2.10

Das Standardziel ist:

root@kitploit:~
UDP/3391

Port angeben

root@kitploit:~
python3 BlueGate.py \
    -P 3391 \
    192.0.2.10

DTLS 1.0

root@kitploit:~
python3 BlueGate.py \
    --dtls 1 \
    192.0.2.10

DTLS 1.2

root@kitploit:~
python3 BlueGate.py \
    --dtls 1.2 \
    192.0.2.10

Das Testen beider Varianten kann nützlich sein:

root@kitploit:~
python3 BlueGate.py --dtls 1 192.0.2.10

python3 BlueGate.py --dtls 1.2 192.0.2.10

Beispiel für ein gepatchtes System

Beispielergebnis von einem gepatchten RD Gateway:

root@kitploit:~
[*] Target: 192.0.2.10:3391/udp
[*] DTLS mode: 1.2
[*] Starting OpenSSL DTLS client...
[+] DTLS handshake completed.
[*] Probe (11 bytes): 0500070000004100010041
[*] Sending one validation packet...

[*] Response length: 16
[*] Response hex: 02000c0000000000ffffffffffff0080
[*] Status: 0x8000ffff

[+] PATCHED SIGNATURE RECEIVED
    Server returned 0x8000ffff, which is
    the rejection value used by the public
    CVE detector to identify a patched host.

Dieselbe gepatchte Antwort kann auch über DTLS 1.0 zurückgegeben werden:

root@kitploit:~
Response length: 16
Response hex: 02000c0000000000ffffffffffff0080
Status: 0x8000ffff

Verstehen des Ergebnisses

0x8000ffff

Eine Antwort, die mit:

root@kitploit:~
0x8000ffff

endet, ist der Ablehnungswert, der von öffentlichen BlueGate/RD-Gateway-Scannern verwendet wird, um den Zustand der fehlerhaften Fragmentierung als abgelehnt zu identifizieren.

Das Tool meldet daher:

root@kitploit:~
PATCHED SIGNATURE RECEIVED

Dies liefert starke protokollebene Belege dafür, dass die spezifische Bedingung, die für CVE-2020-0609/CVE-2020-0610 getestet wird, mit der bekannten öffentlichen Erkennungstechnik nicht ausnutzbar ist.


Anderer 16-Byte-Status

Wenn eine 16-Byte-RD-Gateway-Antwort empfangen wird, der endgültige DWORD jedoch etwas anderes als:

root@kitploit:~
0x8000ffff

ist, meldet das Tool:

root@kitploit:~
DETECTOR POSITIVE

Dies sollte behandelt werden als:

root@kitploit:~
Potentiell verwundbar

und nicht als unmittelbarer Beweis für eine erfolgreiche Remote-Codeausführung.

Das Ergebnis sollte vorzugsweise bestätigt werden mit:

root@kitploit:~
Windows-Build-Informationen
Installierte KB-Informationen
Microsoft-Patch-Inventar
Berechtigtes Schwachstellen-Scanning

bevor die Schwachstelle als definitiv ausnutzbar gemeldet wird.


Keine Antwort

Wenn keine Anwendungsantwort empfangen wird:

root@kitploit:~
INCONCLUSIVE

Das Tool klassifiziert ein Timeout bewusst nicht als verwundbar.

Ein Timeout kann verursacht werden durch:

  • Firewall-Verhalten
  • UDP-Paketverlust
  • DTLS-Inkompatibilität
  • Netzwerkfilterung
  • Anwendungsverhalten
  • Dienstkonfiguration

Daher:

root@kitploit:~
Keine Antwort != Verwundbar

Erkennungslogik

Der öffentliche BlueGate/RDG-Erkennungsansatz verwendet ein RD-Gateway-Fragmentierungspaket mit einer ungewöhnlichen Fragmentanzahl.

Konzeptionell:

root@kitploit:~
DTLS-Verbindung
      |
      v
+-----------------------+
| RD Gateway UDP-Parser |
+-----------------------+
      |
      | Fragmentierungs-Validierungspaket
      v
+-----------------------+
| Fragmentvalidierung   |
+-----------------------+
      |
      +---- gepatcht ----> Ablehnung
      |                   0x8000ffff
      |
      +---- unerwartet --> erfordert Untersuchung

Das von diesem Dienstprogramm verwendete Validierungspaket wird nur einmal gesendet.


Rechtlicher Haftungsausschluss

Dieses Projekt ist ausschließlich bestimmt für:

  • autorisierte Penetrationstests
  • Schwachstellenvalidierung
  • defensive Sicherheitsforschung
  • Laborumgebungen
  • pädagogische Sicherheitsforschung

Testen Sie nur Systeme, für die Sie eine ausdrückliche Autorisierung haben.

Der Autor übernimmt keine Verantwortung für Missbrauch, unbefugten Zugriff, Dienstunterbrechung, Datenverlust oder andere Konsequenzen, die sich aus der Verwendung oder Modifikation dieser Software ergeben.


Danksagungen

Die Erkennungsmethodik basiert auf öffentlich dokumentierter Forschung zu den Microsoft-RD-Gateway-Schwachstellen CVE-2020-0609 und CVE-2020-0610, einschließlich der Arbeit der BlueGate- und RD-Gateway-Sicherheitsforschungsgemeinschaft.

Dieses Projekt modernisiert in erster Linie den Validierungsablauf, indem es die System-OpenSSL-DTLS-Implementierung anstelle der veralteten pyOpenSSL-DTLS-Interna verwendet.

Tool herunterladen