hacktricks/network-services-pentesting/135-pentesting-msrpc.md

133 lines
13 KiB
Markdown
Raw Normal View History

# 135, 593 - Pentesting MSRPC
<details>
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
* Travaillez-vous dans une **entreprise de cybersécurité** ? Voulez-vous voir votre **entreprise annoncée dans HackTricks** ? Ou voulez-vous avoir accès à la **dernière version de PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) !
* Découvrez [**La famille PEASS**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family)
* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com)
* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Partagez vos astuces de piratage en soumettant des PR au** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
</details>
<figure><img src="../../.gitbook/assets/image (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
Rejoignez le serveur [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) pour communiquer avec des hackers expérimentés et des chasseurs de primes !
**Perspectives de piratage**\
Engagez-vous avec du contenu qui explore les sensations et les défis du piratage
**Actualités de piratage en temps réel**\
Restez à jour avec le monde du piratage rapide grâce aux actualités et aux informations en temps réel
**Dernières annonces**\
Restez informé des dernières primes de bugs lancées et des mises à jour cruciales de la plateforme
**Rejoignez-nous sur** [**Discord**](https://discord.com/invite/N3FrSbmwdy) et commencez à collaborer avec les meilleurs hackers dès aujourd'hui !
2023-06-03 13:10:46 +00:00
## Informations de base
2022-04-28 16:01:33 +00:00
Microsoft Remote Procedure Call, également connu sous le nom d'appel de fonction ou d'appel de sous-routine, est [un protocole](http://searchmicroservices.techtarget.com/definition/Remote-Procedure-Call-RPC) qui utilise le modèle client-serveur afin de permettre à un programme de demander un service à un programme sur un autre ordinateur sans avoir à comprendre les détails du réseau de cet ordinateur. MSRPC a été initialement dérivé d'un logiciel open source, mais a été développé et protégé par des droits d'auteur par Microsoft.
Selon la configuration de l'hôte, le gestionnaire de points de terminaison RPC peut être accessible via les ports TCP et UDP 135, via SMB avec une session nulle ou authentifiée (TCP 139 et 445), et en tant que service web écoutant sur le port TCP 593.
```
135/tcp open msrpc Microsoft Windows RPC
```
2023-06-03 13:10:46 +00:00
## Comment fonctionne MSRPC?
[Le processus MSRPC commence côté client](https://technet.microsoft.com/en-us/library/cc738291.aspx), avec l'application cliente appelant une procédure locale de stub au lieu du code implémentant la procédure. Le code de stub client récupère les paramètres requis de l'espace d'adressage client et les transmet à la bibliothèque d'exécution client, qui traduit ensuite les paramètres dans un format standard de représentation des données réseau pour les transmettre au serveur.
Le stub client appelle ensuite les fonctions de la bibliothèque d'exécution client RPC pour envoyer la demande et les paramètres au serveur. Si le serveur est situé à distance, la bibliothèque d'exécution spécifie un protocole de transport approprié et un moteur, puis transmet la RPC à la pile réseau pour le transport vers le serveur.\
2023-06-03 13:10:46 +00:00
À partir de là: [https://www.extrahop.com/resources/protocols/msrpc/](https://www.extrahop.com/resources/protocols/msrpc/)
![](<../.gitbook/assets/image (133).png>)
**Image tirée du livre "**_**Network Security Assesment 3rd Edition**_**"**
2023-06-03 13:10:46 +00:00
## **Identification des services RPC exposés**
**Section extraite du livre "**_**Network Security Assesment 3rd Edition**_**"**
Vous pouvez interroger le service de localisation RPC et les points de terminaison RPC individuels pour répertorier les services intéressants s'exécutant sur TCP, UDP, HTTP et SMB (via des pipes nommés). Chaque valeur IFID collectée lors de ce processus représente un service RPC (par exemple, 5a7b91f8-ff00-11d0-a9b2-00c04fb6e6fc est l'interface Messenger).
Les utilitaires Windows rpcdump et ifids de Todd Sabin interrogent à la fois le service de localisation RPC et des points de terminaison RPC spécifiques pour répertorier les valeurs IFID. La syntaxe de rpcdump est la suivante:
```
D:\rpctools> rpcdump [-p port] 192.168.189.1
IfId: 5a7b91f8-ff00-11d0-a9b2-00c04fb6e6fc version 1.0
Annotation: Messenger Service
UUID: 00000000-0000-0000-0000-000000000000
Binding: ncadg_ip_udp:192.168.189.1[1028]
```
Vous pouvez accéder au service de localisation RPC en utilisant quatre séquences de protocole :
2023-06-03 13:10:46 +00:00
* ncacn\_ip\_tcp et ncadg\_ip\_udp (port TCP et UDP 135)
* ncacn\_np (le pipe nommé \pipe\epmapper via SMB)
* ncacn\_http (RPC sur HTTP via le port TCP 80, 593 et autres)
```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 <IP> -p 135
```
_Notez que parmi les options mentionnées, toutes sauf **`tcp_dcerpc_auditor`** peuvent être exécutées uniquement contre **msrpc** sur le port **135**._
2023-06-03 13:10:46 +00:00
#### Interfaces RPC notables
| **Valeur IFID** | **Named pipe** | **Description** |
| ------------------------------------ | -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| 12345778-1234-abcd-ef00-0123456789ab | \pipe\lsarpc | Interface LSA, utilisée pour énumérer les utilisateurs |
| 3919286a-b10c-11d0-9ba8-00c04fd92ef5 | \pipe\lsarpc | Interface LSA Directory Services (DS), utilisée pour énumérer les domaines et les relations de confiance |
| 12345778-1234-abcd-ef00-0123456789ac | \pipe\samr | Interface LSA SAMR, utilisée pour accéder aux éléments publics de la base de données SAM (par exemple, les noms d'utilisateur) et pour forcer les mots de passe des utilisateurs indépendamment de la politique de verrouillage des comptes [Bibliothèque Oreilly](https://learning.oreilly.com/library/view/network-security-assessment/9781491911044/ch08.html#idm139659172852688) |
| 1ff70682-0a51-30e8-076d-740be8cee98b | \pipe\atsvc | Planificateur de tâches, utilisé pour exécuter des commandes à distance |
| 338cd001-2244-31f1-aaaa-900038001003 | \pipe\winreg | Service de registre distant, utilisé pour accéder au registre système |
| 367abb81-9844-35f1-ad32-98f038001003 | \pipe\svcctl | Gestionnaire de contrôle de service et services de serveur, utilisé pour démarrer et arrêter des services à distance et exécuter des commandes |
| 4b324fc8-1670-01d3-1278-5a47bf6ee188 | \pipe\srvsvc | Gestionnaire de contrôle de service et services de serveur, utilisé pour démarrer et arrêter des services à distance et exécuter des commandes |
| 4d9f4ab8-7d1c-11cf-861e-0020af6e7c57 | \pipe\epmapper | Interface DCOM, prenant en charge WMI |
2023-06-03 13:10:46 +00:00
### Identification des adresses IP
2020-12-22 15:35:42 +00:00
En utilisant [https://github.com/mubix/IOXIDResolver](https://github.com/mubix/IOXIDResolver), provenant de [la recherche d'Airbus](https://www.cyber.airbus.com/the-oxid-resolver-part-1-remote-enumeration-of-network-interfaces-without-any-authentication/), il est possible d'exploiter la méthode _**ServerAlive2**_ à l'intérieur de l'interface _**IOXIDResolver**_.
Cette méthode a été utilisée pour obtenir des informations d'interface sous forme d'adresse **IPv6** à partir de la machine HTB _APT_. Voir [ici](https://0xdf.gitlab.io/2021/04/10/htb-apt.html) pour le rapport APT de 0xdf, qui inclut une méthode alternative utilisant rpcmap.py d'[Impacket](https://github.com/SecureAuthCorp/impacket/) avec _stringbinding_ (voir ci-dessus).
2020-12-22 15:35:42 +00:00
2023-06-03 13:10:46 +00:00
Références :
2021-04-22 13:58:44 +00:00
2023-04-23 22:34:35 +00:00
* [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/)
2020-12-22 15:35:42 +00:00
2022-10-02 19:15:35 +00:00
## Port 593
Le **rpcdump.exe** de [rpctools](https://resources.oreilly.com/examples/9780596510305/tree/master/tools/rpctools) peut interagir avec ce port.
2022-04-28 16:01:33 +00:00
2022-10-27 23:22:18 +00:00
<figure><img src="../../.gitbook/assets/image (1) (3) (1).png" alt=""><figcaption></figcaption></figure>
Rejoignez le serveur [**HackenProof Discord**](https://discord.com/invite/N3FrSbmwdy) pour communiquer avec des hackers et des chasseurs de primes expérimentés !
2022-10-27 23:22:18 +00:00
**Hacking Insights**\
Engagez-vous avec du contenu qui explore les sensations et les défis du piratage informatique.
2023-02-27 09:28:45 +00:00
**Actualités de piratage en temps réel**\
Restez à jour avec le monde du piratage informatique en temps réel grâce aux actualités et aux informations.
2023-02-27 09:28:45 +00:00
**Dernières annonces**\
Restez informé des dernières primes de bugs lancées et des mises à jour essentielles de la plateforme.
2023-02-27 09:28:45 +00:00
**Rejoignez-nous sur** [**Discord**](https://discord.com/invite/N3FrSbmwdy) et commencez à collaborer avec les meilleurs hackers dès aujourd'hui !
2022-10-27 23:22:18 +00:00
2022-04-28 16:01:33 +00:00
<details>
2023-04-25 18:35:28 +00:00
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
2022-04-28 16:01:33 +00:00
* Vous travaillez dans une **entreprise de cybersécurité** ? Vous souhaitez voir votre **entreprise annoncée dans HackTricks** ? ou souhaitez-vous avoir accès à la **dernière version de PEASS ou télécharger HackTricks en PDF** ? Consultez les [**PLANS D'ABONNEMENT**](https://github.com/sponsors/carlospolop) !
* Découvrez [**The PEASS Family**](https://opensea.io/collection/the-peass-family), notre collection exclusive de [**NFT**](https://opensea.io/collection/the-peass-family)
2023-06-03 13:10:46 +00:00
* Obtenez le [**swag officiel PEASS & HackTricks**](https://peass.creator-spring.com)
* **Rejoignez le** [**💬**](https://emojipedia.org/speech-balloon/) [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe Telegram**](https://t.me/peass) ou **suivez** moi sur **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
2023-06-03 13:10:46 +00:00
* **Partagez vos astuces de piratage en soumettant des PR au** [**repo hacktricks**](https://github.com/carlospolop/hacktricks) **et au** [**repo hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
2022-04-28 16:01:33 +00:00
</details>