# 135, 593 - Pentesting MSRPC
{% 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 %}
Join [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) server to communicate with experienced hackers and bug bounty hunters!
**Hacking Insights**\
Engage with content that delves into the thrill and challenges of hacking
**Real-Time Hack News**\
Keep up-to-date with fast-paced hacking world through real-time news and insights
**Latest Announcements**\
Stay informed with the newest bug bounties launching and crucial platform updates
**Join us on** [**Discord**](https://discord.com/invite/N3FrSbmwdy) and start collaborating with top hackers today!
## Informaci贸n B谩sica
El protocolo Microsoft Remote Procedure Call (MSRPC), un modelo cliente-servidor que permite a un programa solicitar un servicio de un programa ubicado en otra computadora sin entender los detalles de la red, se deriv贸 inicialmente de software de c贸digo abierto y luego fue desarrollado y protegido por Microsoft.
El mapeador de puntos finales RPC se puede acceder a trav茅s del puerto TCP y UDP 135, SMB en TCP 139 y 445 (con una sesi贸n nula o autenticada), y como un servicio web en el puerto TCP 593.
```
135/tcp open msrpc Microsoft Windows RPC
```
## 驴C贸mo funciona MSRPC?
Iniciado por la aplicaci贸n cliente, el proceso MSRPC implica llamar a un procedimiento stub local que luego interact煤a con la biblioteca de tiempo de ejecuci贸n del cliente para preparar y transmitir la solicitud al servidor. Esto incluye convertir par谩metros en un formato est谩ndar de Representaci贸n de Datos de Red. La elecci贸n del protocolo de transporte es determinada por la biblioteca de tiempo de ejecuci贸n si el servidor es remoto, asegurando que el RPC se entregue a trav茅s de la pila de red.
![https://0xffsec.com/handbook/images/msrpc.png](https://0xffsec.com/handbook/images/msrpc.png)
## **Identificaci贸n de Servicios RPC Expuestos**
La exposici贸n de servicios RPC a trav茅s de TCP, UDP, HTTP y SMB se puede determinar consultando el servicio de localizaci贸n RPC y puntos finales individuales. Herramientas como rpcdump facilitan la identificaci贸n de servicios RPC 煤nicos, denotados por valores **IFID**, revelando detalles del servicio y enlaces de comunicaci贸n:
```
D:\rpctools> rpcdump [-p port]
**IFID**: 5a7b91f8-ff00-11d0-a9b2-00c04fb6e6fc version 1.0
Annotation: Messenger Service
UUID: 00000000-0000-0000-0000-000000000000
Binding: ncadg_ip_udp:[1028]
```
El acceso al servicio de localizaci贸n RPC est谩 habilitado a trav茅s de protocolos espec铆ficos: ncacn\_ip\_tcp y ncadg\_ip\_udp para acceder a trav茅s del puerto 135, ncacn\_np para conexiones SMB, y ncacn\_http para comunicaci贸n RPC basada en web. Los siguientes comandos ejemplifican la utilizaci贸n de m贸dulos de Metasploit para auditar e interactuar con los servicios MSRPC, centr谩ndose principalmente en el puerto 135:
```bash
use auxiliary/scanner/dcerpc/endpoint_mapper
use auxiliary/scanner/dcerpc/hidden
use auxiliary/scanner/dcerpc/management
use auxiliary/scanner/dcerpc/tcp_dcerpc_auditor
rpcdump.py -p 135
```
All options except `tcp_dcerpc_auditor` are specifically designed for targeting MSRPC on port 135.
#### Interfaz RPC notable
* **IFID**: 12345778-1234-abcd-ef00-0123456789ab
* **Named Pipe**: `\pipe\lsarpc`
* **Descripci贸n**: Interfaz LSA, utilizada para enumerar usuarios.
* **IFID**: 3919286a-b10c-11d0-9ba8-00c04fd92ef5
* **Named Pipe**: `\pipe\lsarpc`
* **Descripci贸n**: Interfaz de Servicios de Directorio LSA (DS), utilizada para enumerar dominios y relaciones de confianza.
* **IFID**: 12345778-1234-abcd-ef00-0123456789ac
* **Named Pipe**: `\pipe\samr`
* **Descripci贸n**: Interfaz LSA SAMR, utilizada para acceder a elementos p煤blicos de la base de datos SAM (por ejemplo, nombres de usuario) y realizar ataques de fuerza bruta a contrase帽as de usuario sin importar la pol铆tica de bloqueo de cuentas.
* **IFID**: 1ff70682-0a51-30e8-076d-740be8cee98b
* **Named Pipe**: `\pipe\atsvc`
* **Descripci贸n**: Programador de tareas, utilizado para ejecutar comandos de forma remota.
* **IFID**: 338cd001-2244-31f1-aaaa-900038001003
* **Named Pipe**: `\pipe\winreg`
* **Descripci贸n**: Servicio de registro remoto, utilizado para acceder y modificar el registro del sistema.
* **IFID**: 367abb81-9844-35f1-ad32-98f038001003
* **Named Pipe**: `\pipe\svcctl`
* **Descripci贸n**: Administrador de control de servicios y servicios de servidor, utilizado para iniciar y detener servicios de forma remota y ejecutar comandos.
* **IFID**: 4b324fc8-1670-01d3-1278-5a47bf6ee188
* **Named Pipe**: `\pipe\srvsvc`
* **Descripci贸n**: Administrador de control de servicios y servicios de servidor, utilizado para iniciar y detener servicios de forma remota y ejecutar comandos.
* **IFID**: 4d9f4ab8-7d1c-11cf-861e-0020af6e7c57
* **Named Pipe**: `\pipe\epmapper`
* **Descripci贸n**: Interfaz DCOM, utilizada para ataques de fuerza bruta a contrase帽as y recopilaci贸n de informaci贸n a trav茅s de WM.
### Identificaci贸n de direcciones IP
Usando [https://github.com/mubix/IOXIDResolver](https://github.com/mubix/IOXIDResolver), que proviene de [Airbus research](https://www.cyber.airbus.com/the-oxid-resolver-part-1-remote-enumeration-of-network-interfaces-without-any-authentication/), es posible abusar del m茅todo _**ServerAlive2**_ dentro de la interfaz _**IOXIDResolver**_.
Este m茅todo se ha utilizado para obtener informaci贸n de la interfaz como la direcci贸n **IPv6** de la caja HTB _APT_. Consulta [aqu铆](https://0xdf.gitlab.io/2021/04/10/htb-apt.html) para el informe de 0xdf APT, que incluye un m茅todo alternativo utilizando rpcmap.py de [Impacket](https://github.com/SecureAuthCorp/impacket/) con _stringbinding_ (ver arriba).
### Ejecutando un RCE con credenciales v谩lidas
Es posible ejecutar c贸digo remoto en una m谩quina, si las credenciales de un usuario v谩lido est谩n disponibles utilizando [dcomexec.py](https://github.com/fortra/impacket/blob/master/examples/dcomexec.py) del marco impacket.
**Recuerda probar con los diferentes objetos disponibles**
* ShellWindows
* ShellBrowserWindow
* MMC20
## Puerto 593
El **rpcdump.exe** de [rpctools](https://resources.oreilly.com/examples/9780596510305/tree/master/tools/rpctools) puede interactuar con este puerto.
## Referencias
* [https://www.cyber.airbus.com/the-oxid-resolver-part-1-remote-enumeration-of-network-interfaces-without-any-authentication/](https://www.cyber.airbus.com/the-oxid-resolver-part-1-remote-enumeration-of-network-interfaces-without-any-authentication/)
* [https://www.cyber.airbus.com/the-oxid-resolver-part-2-accessing-a-remote-object-inside-dcom/](https://www.cyber.airbus.com/the-oxid-resolver-part-2-accessing-a-remote-object-inside-dcom/)
* [https://0xffsec.com/handbook/services/msrpc/](https://0xffsec.com/handbook/services/msrpc/)
Join [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) server to communicate with experienced hackers and bug bounty hunters!
**Hacking Insights**\
Engage with content that delves into the thrill and challenges of hacking
**Real-Time Hack News**\
Keep up-to-date with fast-paced hacking world through real-time news and insights
**Latest Announcements**\
Stay informed with the newest bug bounties launching and crucial platform updates
**Join us on** [**Discord**](https://discord.com/invite/N3FrSbmwdy) and start collaborating with top hackers today!
{% 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 %}