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

140 lines
8.1 KiB
Markdown
Raw Normal View History

# 111/TCP/UDP - Pentesting Portmapper
2022-04-28 16:01:33 +00:00
{% 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)
2022-04-28 16:01:33 +00:00
<details>
2022-04-28 16:01:33 +00:00
<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.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}
2022-04-28 16:01:33 +00:00
<figure><img src="https://pentest.eu/RENDER_WebSec_10fps_21sec_9MB_29042024.gif" alt=""><figcaption></figcaption></figure>
{% embed url="https://websec.nl/" %}
## Basic Information
**Portmapper** est un service utilisé pour mapper les ports de services réseau aux numéros de programme **RPC** (Remote Procedure Call). Il agit comme un composant critique dans les **systèmes basés sur Unix**, facilitant l'échange d'informations entre ces systèmes. Le **port** associé à **Portmapper** est fréquemment scanné par les attaquants car il peut révéler des informations précieuses. Ces informations incluent le type de **système d'exploitation Unix (OS)** en cours d'exécution et des détails sur les services disponibles sur le système. De plus, **Portmapper** est couramment utilisé en conjonction avec **NFS (Network File System)**, **NIS (Network Information Service)**, et d'autres **services basés sur RPC** pour gérer efficacement les services réseau.
2023-06-03 13:10:46 +00:00
**Port par défaut :** 111/TCP/UDP, 32771 dans Oracle Solaris
```
PORT STATE SERVICE
111/tcp open rpcbind
```
2023-06-03 13:10:46 +00:00
## Énumération
```
rpcinfo irked.htb
nmap -sSUC -p111 192.168.10.1
```
Parfois, cela ne vous donne aucune information, d'autres fois vous obtiendrez quelque chose comme ceci :
![](<../.gitbook/assets/image (553).png>)
2022-05-08 23:13:03 +00:00
### Shodan
* `port:111 portmap`
2022-05-08 23:13:03 +00:00
## RPCBind + NFS
Si vous trouvez le service NFS, alors vous pourrez probablement lister et télécharger (et peut-être télécharger) des fichiers :
![](<../.gitbook/assets/image (872).png>)
Lisez [2049 - Pentesting NFS service](nfs-service-pentesting.md) pour en savoir plus sur la façon de tester ce protocole.
2022-05-08 23:13:03 +00:00
## NIS
Explorer les vulnérabilités **NIS** implique un processus en deux étapes, commençant par l'identification du service `ypbind`. La pierre angulaire de cette exploration est de découvrir le **nom de domaine NIS**, sans lequel les progrès sont arrêtés.
![](<../.gitbook/assets/image (859).png>)
Le voyage d'exploration commence par l'installation des paquets nécessaires (`apt-get install nis`). L'étape suivante nécessite d'utiliser `ypwhich` pour confirmer la présence du serveur NIS en le pingant avec le nom de domaine et l'IP du serveur, en s'assurant que ces éléments sont anonymisés pour la sécurité.
L'étape finale et cruciale implique la commande `ypcat` pour extraire des données sensibles, en particulier les mots de passe utilisateurs chiffrés. Ces hachages, une fois craqués à l'aide d'outils comme **John the Ripper**, révèlent des informations sur l'accès au système et les privilèges.
```bash
# Install NIS tools
apt-get install nis
# Ping the NIS server to confirm its presence
ypwhich -d <domain-name> <server-ip>
# Extract user credentials
ypcat d <domain-name> h <server-ip> passwd.byname
```
### Fichiers NIF
| **Fichier maître** | **Carte(s)** | **Remarques** |
| ------------------ | --------------------------- | --------------------------------- |
| /etc/hosts | hosts.byname, hosts.byaddr | Contient les noms d'hôtes et les détails IP |
| /etc/passwd | passwd.byname, passwd.byuid | Fichier de mots de passe des utilisateurs NIS |
| /etc/group | group.byname, group.bygid | Fichier de groupe NIS |
| /usr/lib/aliases | mail.aliases | Détails des alias de messagerie |
2023-06-03 13:10:46 +00:00
## Utilisateurs RPC
Si vous trouvez le service **rusersd** listé comme ceci :
![](<../.gitbook/assets/image (1041).png>)
Vous pourriez énumérer les utilisateurs de la machine. Pour apprendre comment, lisez [1026 - Pentesting Rsusersd](1026-pentesting-rusersd.md).
## Contourner le port filtré du portmapper
Lors de la réalisation d'un **scan nmap** et de la découverte de ports NFS ouverts avec le port 111 étant filtré, l'exploitation directe de ces ports n'est pas réalisable. Cependant, en **simulant un service portmapper localement et en créant un tunnel depuis votre machine** vers la cible, l'exploitation devient possible en utilisant des outils standards. Cette technique permet de contourner l'état filtré du port 111, permettant ainsi l'accès aux services NFS. Pour des conseils détaillés sur cette méthode, référez-vous à l'article disponible à [ce lien](https://medium.com/@sebnemK/how-to-bypass-filtered-portmapper-port-111-27cee52416bc).
2022-05-08 23:13:03 +00:00
## Shodan
2020-09-22 19:45:05 +00:00
* `Portmap`
## Laboratoires pour pratiquer
* Pratiquez ces techniques dans la [**machine Irked HTB**](https://app.hackthebox.com/machines/Irked).
2021-08-12 13:28:09 +00:00
<figure><img src="https://pentest.eu/RENDER_WebSec_10fps_21sec_9MB_29042024.gif" alt=""><figcaption></figcaption></figure>
{% embed url="https://websec.nl/" %}
## Commandes automatiques HackTricks
```
2021-08-12 13:28:09 +00:00
Protocol_Name: Portmapper #Protocol Abbreviation if there is one.
Port_Number: 43 #Comma separated if there is more than one.
Protocol_Description: PM or RPCBind #Protocol Abbreviation Spelled out
2021-08-15 17:28:15 +00:00
Entry_1:
Name: Notes
Description: Notes for PortMapper
Note: |
Portmapper is a service that is utilized for mapping network service ports to RPC (Remote Procedure Call) program numbers. It acts as a critical component in Unix-based systems, facilitating the exchange of information between these systems. The port associated with Portmapper is frequently scanned by attackers as it can reveal valuable information. This information includes the type of Unix Operating System (OS) running and details about the services that are available on the system. Additionally, Portmapper is commonly used in conjunction with NFS (Network File System), NIS (Network Information Service), and other RPC-based services to manage network services effectively.
2021-08-15 17:28:15 +00:00
https://book.hacktricks.xyz/pentesting/pentesting-rpcbind
2021-08-15 17:28:15 +00:00
Entry_2:
Name: rpc info
Description: May give netstat-type info
Command: whois -h {IP} -p 43 {Domain_Name} && echo {Domain_Name} | nc -vn {IP} 43
2021-08-15 17:28:15 +00:00
Entry_3:
Name: nmap
Description: May give netstat-type info
Command: nmap -sSUC -p 111 {IP}
2021-08-12 13:28:09 +00:00
```
{% hint style="success" %}
Apprenez et pratiquez le hacking AWS :<img src="/.gitbook/assets/arte.png" alt="" data-size="line">[**HackTricks Formation Expert Red Team AWS (ARTE)**](https://training.hacktricks.xyz/courses/arte)<img src="/.gitbook/assets/arte.png" alt="" data-size="line">\
Apprenez et pratiquez le hacking GCP : <img src="/.gitbook/assets/grte.png" alt="" data-size="line">[**HackTricks Formation Expert Red Team GCP (GRTE)**<img src="/.gitbook/assets/grte.png" alt="" data-size="line">](https://training.hacktricks.xyz/courses/grte)
2022-04-28 16:01:33 +00:00
<details>
<summary>Soutenir HackTricks</summary>
2022-04-28 16:01:33 +00:00
* Consultez les [**plans d'abonnement**](https://github.com/sponsors/carlospolop)!
* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez** nous sur **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Partagez des astuces de hacking en soumettant des PRs aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts github.
2022-04-28 16:01:33 +00:00
</details>
{% endhint %}