# 137,138,139 - Pentesting NetBios {{#include ../banners/hacktricks-training.md}} ## NetBios Adı Servisi **NetBIOS Adı Servisi**, **isim kaydı ve çözümü**, **datagram dağıtımı** ve **oturum hizmetleri** gibi çeşitli hizmetleri içeren kritik bir rol oynar ve her hizmet için belirli portlar kullanır. [From Wikidepia](https://en.wikipedia.org/wiki/NetBIOS_over_TCP/IP): - İsim kaydı ve çözümü için isim servisi (portlar: 137/udp ve 137/tcp). - Bağlantısız iletişim için datagram dağıtım servisi (port: 138/udp). - Bağlantılı iletişim için oturum servisi (port: 139/tcp). ### İsim Servisi Bir cihazın NetBIOS ağında yer alabilmesi için benzersiz bir isme sahip olması gerekir. Bu, "İsim Sorgusu" paketi gönderilerek gerçekleştirilen bir **yayın süreci** ile sağlanır. Eğer itiraz gelmezse, isim kullanılabilir olarak kabul edilir. Alternatif olarak, bir **İsim Servisi sunucusu** doğrudan sorgulanarak isim kullanılabilirliği kontrol edilebilir veya bir ismin IP adresine çözülmesi sağlanabilir. `nmblookup`, `nbtscan` ve `nmap` gibi araçlar, NetBIOS hizmetlerini listelemek için kullanılır ve sunucu isimleri ile MAC adreslerini ortaya çıkarır. ```bash PORT STATE SERVICE VERSION 137/udp open netbios-ns Samba nmbd netbios-ns (workgroup: WORKGROUP) ``` NetBIOS hizmetini listeleyerek, sunucunun kullandığı isimleri ve sunucunun MAC adresini elde edebilirsiniz. ```bash nmblookup -A nbtscan /30 sudo nmap -sU -sV -T4 --script nbstat.nse -p137 -Pn -n ``` ### Datagram Dağıtım Servisi NetBIOS datagramları, doğrudan mesajlaşma veya tüm ağ adlarına yayın yapmayı destekleyen, UDP üzerinden bağlantısız iletişim sağlar. Bu hizmet **138/udp** portunu kullanır. ```bash PORT STATE SERVICE VERSION 138/udp open|filtered netbios-dgm ``` ### Oturum Servisi Bağlantı odaklı etkileşimler için, **Oturum Servisi** iki cihaz arasında bir konuşma sağlar ve **TCP** bağlantılarını **139/tcp** portu üzerinden kullanır. Bir oturum, "Oturum İsteği" paketi ile başlar ve yanıtına göre kurulabilir. Servis, daha büyük mesajları, hata tespiti ve kurtarma işlemlerini destekler; TCP ise akış kontrolü ve paket yeniden iletimini yönetir. Bir oturum içindeki veri iletimi, **Oturum Mesajı paketleri** ile gerçekleşir ve oturumlar, TCP bağlantısının kapatılmasıyla sonlandırılır. Bu hizmetler, **NetBIOS** işlevselliği için hayati öneme sahiptir ve bir ağ üzerinde verimli iletişim ve kaynak paylaşımını sağlar. TCP ve IP protokolleri hakkında daha fazla bilgi için ilgili [TCP Wikipedia](https://en.wikipedia.org/wiki/Transmission_Control_Protocol) ve [IP Wikipedia](https://en.wikipedia.org/wiki/Internet_Protocol) sayfalarına bakın. ```bash PORT STATE SERVICE VERSION 139/tcp open netbios-ssn Microsoft Windows netbios-ssn ``` **Bu hizmeti nasıl sayacağınızı öğrenmek için sonraki sayfayı okuyun:** {{#ref}} 137-138-139-pentesting-netbios.md {{#endref}} ## HackTricks Otomatik Komutlar ``` Protocol_Name: Netbios #Protocol Abbreviation if there is one. Port_Number: 137,138,139 #Comma separated if there is more than one. Protocol_Description: Netbios #Protocol Abbreviation Spelled out Entry_1: Name: Notes Description: Notes for NetBios Note: | Name service for name registration and resolution (ports: 137/udp and 137/tcp). Datagram distribution service for connectionless communication (port: 138/udp). Session service for connection-oriented communication (port: 139/tcp). For a device to participate in a NetBIOS network, it must have a unique name. This is achieved through a broadcast process where a "Name Query" packet is sent. If no objections are received, the name is considered available. Alternatively, a Name Service server can be queried directly to check for name availability or to resolve a name to an IP address. https://book.hacktricks.wiki/en/network-services-pentesting/137-138-139-pentesting-netbios.html Entry_2: Name: Find Names Description: Three scans to find the names of the server Command: nmblookup -A {IP} &&&& nbtscan {IP}/30 &&&& nmap -sU -sV -T4 --script nbstat.nse -p 137 -Pn -n {IP} ``` {{#include ../banners/hacktricks-training.md}}