# 111/TCP/UDP - Pentesting Portmapper {{#include ../banners/hacktricks-training.md}} ## Temel Bilgiler **Portmapper**, ağ hizmeti portlarını **RPC** (Uzak Prosedür Çağrısı) program numaralarına eşlemek için kullanılan bir hizmettir. **Unix tabanlı sistemler** içinde bilgi alışverişini kolaylaştıran kritik bir bileşen olarak işlev görür. **Portmapper** ile ilişkili **port**, saldırganlar tarafından sıklıkla taranır çünkü değerli bilgiler ortaya çıkarabilir. Bu bilgiler, çalışan **Unix İşletim Sistemi (OS)** türünü ve sistemde mevcut olan hizmetler hakkında ayrıntıları içerir. Ayrıca, **Portmapper**, ağ hizmetlerini etkili bir şekilde yönetmek için genellikle **NFS (Ağ Dosya Sistemi)**, **NIS (Ağ Bilgi Hizmeti)** ve diğer **RPC tabanlı hizmetler** ile birlikte kullanılır. **Varsayılan port:** 111/TCP/UDP, 32771 Oracle Solaris'ta ``` PORT STATE SERVICE 111/tcp open rpcbind ``` ## Sayım ``` rpcinfo irked.htb nmap -sSUC -p111 192.168.10.1 ``` Bazen size hiçbir bilgi vermez, diğer zamanlarda ise şöyle bir şey alırsınız: ![](<../images/image (553).png>) ### Shodan - `port:111 portmap` ## RPCBind + NFS Eğer NFS hizmetini bulursanız, muhtemelen dosyaları listeleyip indirebilir (ve belki yükleyebilirsiniz): ![](<../images/image (872).png>) Bu protokolü test etmenin yollarını öğrenmek için [2049 - Pentesting NFS service](nfs-service-pentesting.md) okuyun. ## NIS **NIS** zafiyetlerini keşfetmek, `ypbind` hizmetinin tanımlanmasıyla başlayan iki aşamalı bir süreçtir. Bu keşfin temel taşı, **NIS alan adını** ortaya çıkarmaktır; bu olmadan ilerleme durur. ![](<../images/image (859).png>) Keşif yolculuğu, gerekli paketlerin kurulumu ile başlar (`apt-get install nis`). Sonraki adım, NIS sunucusunun varlığını doğrulamak için `ypwhich` kullanarak alan adı ve sunucu IP'si ile ping atmayı gerektirir; bu unsurların güvenlik için anonimleştirildiğinden emin olunmalıdır. Son ve kritik adım, hassas verileri, özellikle şifrelenmiş kullanıcı şifrelerini çıkarmak için `ypcat` komutunu kullanmaktır. Bu hash'ler, **John the Ripper** gibi araçlar kullanılarak kırıldığında, sistem erişimi ve ayrıcalıkları hakkında bilgiler ortaya çıkarır. ```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 dosyaları | **Ana dosya** | **Harita(lar)** | **Notlar** | | ---------------- | --------------------------- | --------------------------------- | | /etc/hosts | hosts.byname, hosts.byaddr | Host adları ve IP detaylarını içerir | | /etc/passwd | passwd.byname, passwd.byuid | NIS kullanıcı şifre dosyası | | /etc/group | group.byname, group.bygid | NIS grup dosyası | | /usr/lib/aliases | mail.aliases | Mail takma adları detayları | ## RPC Kullanıcıları Eğer **rusersd** servisini şu şekilde bulursanız: ![](<../images/image (1041).png>) Kutunun kullanıcılarını listeleyebilirsiniz. Nasıl yapılacağını öğrenmek için [1026 - Pentesting Rsusersd](1026-pentesting-rusersd.md) makalesine bakın. ## Filtrelenmiş Portmapper portunu atlatma **nmap taraması** yaparken ve port 111'in filtrelendiği açık NFS portları keşfettiğinizde, bu portların doğrudan istismar edilmesi mümkün değildir. Ancak, **yerel olarak bir portmapper servisi simüle ederek ve makinenizden hedefe bir tünel oluşturarak** istismar mümkün hale gelir. Bu teknik, port 111'in filtrelenmiş durumunu atlatmayı sağlar ve böylece NFS hizmetlerine erişim sağlar. Bu yöntemle ilgili ayrıntılı rehberlik için [bu makaleye](https://medium.com/@sebnemK/how-to-bypass-filtered-portmapper-port-111-27cee52416bc) başvurun. ## Shodan - `Portmap` ## Pratik yapma laboratuvarları - Bu teknikleri [**Irked HTB makinesi**](https://app.hackthebox.com/machines/Irked) üzerinde pratik yaparak deneyin. ## HackTricks Otomatik Komutlar ``` 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}}