# 111/TCP/UDP - Pentesting Portmapper {{#include ../banners/hacktricks-training.md}} ## Basic Information **Portmapper** - це служба, яка використовується для відображення портів мережевих служб на номери програм **RPC** (Remote Procedure Call). Вона є критично важливим компонентом у **Unix-подібних системах**, що полегшує обмін інформацією між цими системами. **Порт**, пов'язаний з **Portmapper**, часто сканується зловмисниками, оскільки може розкрити цінну інформацію. Ця інформація включає тип **Unix Operating System (OS)**, що працює, та деталі про служби, які доступні в системі. Крім того, **Portmapper** зазвичай використовується разом з **NFS (Network File System)**, **NIS (Network Information Service)** та іншими **RPC-based services** для ефективного управління мережевими службами. **Default port:** 111/TCP/UDP, 32771 in Oracle Solaris ``` PORT STATE SERVICE 111/tcp open rpcbind ``` ## Перерахування ``` rpcinfo irked.htb nmap -sSUC -p111 192.168.10.1 ``` Іноді це не дає вам жодної інформації, в інших випадках ви отримаєте щось на зразок цього: ![](<../images/image (553).png>) ### Shodan - `port:111 portmap` ## RPCBind + NFS Якщо ви знайдете сервіс NFS, то, ймовірно, зможете перерахувати та завантажити (а можливо, і завантажити) файли: ![](<../images/image (872).png>) Читати[ 2049 - Pentesting NFS service](nfs-service-pentesting.md), щоб дізнатися більше про те, як тестувати цей протокол. ## NIS Дослідження вразливостей **NIS** включає двоетапний процес, починаючи з ідентифікації сервісу `ypbind`. Ключовим моментом цього дослідження є виявлення **імені домену NIS**, без якого прогрес зупиняється. ![](<../images/image (859).png>) Подорож дослідження починається з установки необхідних пакетів (`apt-get install nis`). Наступний крок вимагає використання `ypwhich`, щоб підтвердити наявність NIS сервера, пінгуючи його з іменем домену та IP-адресою сервера, забезпечуючи анонімність цих елементів для безпеки. Останній і вирішальний крок включає команду `ypcat` для витягування чутливих даних, зокрема зашифрованих паролів користувачів. Ці хеші, після зламу за допомогою інструментів, таких як **John the Ripper**, відкривають інформацію про доступ до системи та привілеї. ```bash # Install NIS tools apt-get install nis # Ping the NIS server to confirm its presence ypwhich -d # Extract user credentials ypcat –d –h passwd.byname ``` ### NIF файли | **Головний файл** | **Карта(и)** | **Примітки** | | ----------------- | --------------------------- | --------------------------------- | | /etc/hosts | hosts.byname, hosts.byaddr | Містить імена хостів та деталі IP | | /etc/passwd | passwd.byname, passwd.byuid | Файл паролів користувачів NIS | | /etc/group | group.byname, group.bygid | Файл груп NIS | | /usr/lib/aliases | mail.aliases | Деталі поштових псевдонімів | ## RPC Користувачі Якщо ви знайдете сервіс **rusersd**, зазначений таким чином: ![](<../images/image (1041).png>) Ви можете перерахувати користувачів на машині. Щоб дізнатися, як це зробити, прочитайте [1026 - Pentesting Rsusersd](1026-pentesting-rusersd.md). ## Обхід фільтрованого порту portmapper Під час проведення **nmap сканування** та виявлення відкритих NFS портів з фільтрованим портом 111, безпосередня експлуатація цих портів є неможливою. Однак, **імітувавши сервіс portmapper локально та створивши тунель з вашої машини** до цільової, експлуатація стає можливою за допомогою стандартних інструментів. Ця техніка дозволяє обійти фільтрований стан порту 111, що забезпечує доступ до NFS сервісів. Для детальних вказівок щодо цього методу зверніться до статті за [цим посиланням](https://medium.com/@sebnemK/how-to-bypass-filtered-portmapper-port-111-27cee52416bc). ## Shodan - `Portmap` ## Лабораторії для практики - Практикуйте ці техніки на [**Irked HTB machine**](https://app.hackthebox.com/machines/Irked). ## HackTricks Автоматичні команди ``` 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 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. https://book.hacktricks.wiki/en/network-services-pentesting/pentesting-rpcbind.html 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 Entry_3: Name: nmap Description: May give netstat-type info Command: nmap -sSUC -p 111 {IP} ``` {{#include ../banners/hacktricks-training.md}}