9.2 KiB
111/TCP/UDP - Pentesting Portmapper
AWS hacklemeyi sıfırdan kahramanla öğrenin htARTE (HackTricks AWS Kırmızı Takım Uzmanı)!
HackTricks'ı desteklemenin diğer yolları:
- Şirketinizi HackTricks'te reklamınızı görmek veya HackTricks'i PDF olarak indirmek için ABONELİK PLANLARI'na göz atın!
- Resmi PEASS & HackTricks ürünlerini edinin
- The PEASS Ailesi'ni keşfedin, özel NFT'lerimiz koleksiyonumuz
- 💬 Discord grubuna veya telegram grubuna katılın veya Twitter 🐦 @carlospolopm'u takip edin.
- Hacking hilelerinizi HackTricks ve HackTricks Cloud github depolarına PR göndererek paylaşın.
Temel Bilgiler
Portmapper, ağ hizmeti bağlantı noktalarını RPC (Uzak Yordam Çağrısı) program numaralarına eşleme amacıyla kullanılan bir hizmettir. Unix tabanlı sistemlerde, bu sistemler arasında bilgi alışverişini kolaylaştıran kritik bir bileşen olarak görev yapar. Portmapper ile ilişkilendirilen port, saldırganlar tarafından sıkça taranır çünkü değerli bilgileri 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 genellikle NFS (Ağ Dosya Sistemi), NIS (Ağ Bilgi Servisi) ve diğer RPC tabanlı hizmetlerle birlikte kullanılarak ağ hizmetlerini etkili bir şekilde yönetmek için kullanılır.
Varsayılan port: 111/TCP/UDP, Oracle Solaris'te 32771
PORT STATE SERVICE
111/tcp open rpcbind
Numaralandırma
RPCbind, bir ağ hizmeti olarak çalışır ve RPC (Remote Procedure Call) çağrılarını yönetir. RPCbind, sunucuların hangi portlarda çalıştığını ve hangi RPC hizmetlerini desteklediğini belirlemek için kullanılabilir.
RPCbind Port Taraması
RPCbind, varsayılan olarak TCP ve UDP üzerinde 111 numaralı portu kullanır. Bu nedenle, hedef sistemde RPCbind'in çalıştığı portu belirlemek için bir port taraması yapılabilir.
nmap -p 111 <hedef_ip>
RPCbind Sunucu Bilgilerini Almak
RPCbind sunucu bilgilerini almak için rpcinfo
komutu kullanılabilir. Bu komut, hedef sistemde çalışan RPC hizmetlerinin listesini ve bu hizmetlerin hangi portlarda çalıştığını gösterir.
rpcinfo -p <hedef_ip>
RPC Sunucu Bilgilerini Almak
RPC hizmetlerinin sunucu bilgilerini almak için rpcinfo
komutu kullanılabilir. Bu komut, belirli bir RPC hizmetinin hangi sunucularda çalıştığını gösterir.
rpcinfo -p <hedef_ip> | grep <rpc_hizmeti_adı>
RPC Sunucu Bilgilerini Keşfetmek
RPC sunucu bilgilerini keşfetmek için showmount
komutu kullanılabilir. Bu komut, hedef sistemdeki NFS (Network File System) sunucularının listesini gösterir.
showmount -e <hedef_ip>
RPC Sunucu Bağlantı Noktalarını Keşfetmek
RPC sunucu bağlantı noktalarını keşfetmek için rpcinfo
komutu kullanılabilir. Bu komut, belirli bir sunucunun hangi RPC hizmetlerini desteklediğini gösterir.
rpcinfo -n <hedef_ip>
rpcinfo irked.htb
nmap -sSUC -p111 192.168.10.1
Bazen hiçbir bilgi vermez, diğer durumlarda ise şöyle bir şey alırsınız:
Shodan
port:111 portmap
RPCBind + NFS
Eğer NFS servisini bulursanız, muhtemelen dosyaları listelemek ve indirmek (ve belki yüklemek) için yetenekli olacaksınız:
Bu protokolü nasıl test edeceğiniz hakkında daha fazla bilgi edinmek için 2049 - NFS servisi pentesting sayfasını okuyun.
NIS
NIS zafiyetlerini keşfetmek için iki adımlı bir süreç gereklidir. İlk adım, ypbind
servisinin tespit edilmesidir. Bu keşfin temel taşı, ilerlemenin durduğu NIS alan adının ortaya çıkarılmasıdır.
Keşif yolculuğu, gerekli paketlerin kurulumuyla (apt-get install nis) başlar. Sonraki adım, güvenlik için bu unsurların anonimleştirilerek, alan adı ve sunucu IP'si ile NIS sunucusunun varlığını pinglemek için ypwhich
kullanmaktır.
Son ve önemli adım, özellikle şifrelenmiş kullanıcı parolalarını içeren hassas verileri çıkarmak için ypcat
komutunu kullanmaktır. Bu karmaşalar, John the Ripper gibi araçlar kullanılarak kırıldığında, sistem erişimi ve ayrıcalıkları hakkında bilgi sağlar.
# 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
NIF Dosyaları
Ana dosya | Harita(lar) | Notlar |
---|---|---|
/etc/hosts | hosts.byname, hosts.byaddr | Ana bilgisayar adları ve IP bilgileri |
/etc/passwd | passwd.byname, passwd.byuid | NIS kullanıcı parola dosyası |
/etc/group | group.byname, group.bygid | NIS grup dosyası |
/usr/lib/aliases | mail.aliases | Posta takma adları ayrıntıları |
RPC Kullanıcıları
Eğer rusersd servisi aşağıdaki gibi listeleniyorsa:
Kutunun kullanıcılarını sıralayabilirsiniz. Nasıl yapılacağını öğrenmek için 1026 - Rsusersd Pentesting makalesine bakın.
Filtrelenmiş Portmapper portunu atlatma
Bir nmap taraması yaparken ve port 111'in filtrelenmiş olduğunu 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, standart araçlar kullanarak istismar mümkün hale gelir. Bu teknik, port 111'in filtrelenmiş durumunu atlamayı sağlar, böylece NFS hizmetlerine erişim sağlanabilir. Bu yöntemle ilgili ayrıntılı rehberlik için bu bağlantıdaki makaleye başvurun.
Shodan
Portmap
Uygulama için Lablar
- Bu teknikleri Irked HTB makinesinde uygulayın.
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.xyz/pentesting/pentesting-rpcbind
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}
AWS hackleme becerilerini sıfırdan kahraman seviyesine öğrenmek için htARTE (HackTricks AWS Kırmızı Takım Uzmanı)'ı öğrenin!
HackTricks'ı desteklemenin diğer yolları:
- Şirketinizi HackTricks'te reklamını görmek isterseniz veya HackTricks'i PDF olarak indirmek isterseniz ABONELİK PLANLARINA göz atın!
- Resmi PEASS & HackTricks ürünlerini edinin
- PEASS Ailesi'ni keşfedin, özel NFT'lerimiz koleksiyonumuz
- 💬 Discord grubuna veya telegram grubuna katılın veya Twitter 🐦 @carlospolopm'ı takip edin.
- Hacking hilelerinizi HackTricks ve HackTricks Cloud github depolarına PR göndererek paylaşın.