NetBIOS [UDP\137, UDP\138, TCP\137, TCP\139]
Windows sistemlerde disk üzerindeki yerel kaynak (C:\Windows\System32\drivers\etc\hosts), DNS önbelleği, DNS sorguları ve LLMNR protokolü ile bulunamayan alan adlarını çözmek için kullanılan bir protokol kümesi, API’dir. Böylece yerel ağ (LAN) üzerindeki sistemler ağa dahil olabilir, birbirleri ile iletişim kurabilir (oturum başlatıp/sonlandırabilir), veri aktarabilir, isim çözümlemesi gerçekleştirilebilir…
NETBIOS 1983’te IBM için IPX/SPX protokolleri ile çalışmak üzere geliştirilmiştir. Daha sonra da Windows sistemler için Microsoft tarafından özelleştirilmiştir. Windows Server 2003 ile birlikte NetBIOS, TCP/IP üzerinden de iletişim kurabilmek için NetBios Over TCP/IP (NetBTBT / NBT) adı ile kullanılmıştır.
Windows ortamında, NETBIOS isimlerini IP adreslerine dönüştürme işlemi WINS (Windows Internet Name Service) adı verilen servis tarafından gerçekleştirilir. Bu NetBIOS isimlerinin ağda benzersiz olması gerekmektedir.
NetBIOS, OSI modelinde taşıma (4.) ve oturum (5.) katmanlarda çalışır.Ayrıca NetBIOS, broadcast çalışır; bu sebeple IPv6’da çalışmaz.
Windows ortamında NETBIOS ismi 16 karakterden oluşur. İlk 15 karakteri bilgisayar adından, son karakteri ise NETBIOS son ekinden (NetBIOS Suffix) oluşur. Bu son ek, Microsoft bilgisayarlardaki hizmetlerin fonksiyonunu veya kayıt türklerini belirtir. NETBIOS hizmet ID değerleri ve anlamları aşağıdaki gibidir.
ID | Hizmet | Tip | Elde Edilen Bilgi |
<00> | İş İstasyonu Hizmeti (Workstation Service) | Benzersiz | Makine adı |
<00> | İş İstasyonu Hizmeti (Workstation Service) | Grup | Etki alanı adı |
<01> ve <1D> | Temel Tarayıcı (Master Browser) | Grup | Alt ağ için ana tarayıcı adı |
<03> | Haberci Hizmeti (Messenger Service) | Benzersiz | Bilgisayarda çalışan haberci hizmeti |
<03> | Haberci Hizmeti (Messenger Service) | Benzersiz | Oturumu açık kullanıcıda çalışan haberci hizmeti (Bir oturumun açık olduğunu belirtir) |
<1B> | Temel Etki Alanı Tarayıcısı (Domain Master Browser) | Benzersiz | PDC tespiti |
<1C> | Bir Etki Alanı İçin Etki Alanı Denetçileri (Domain Controllers For a Domain) | Grup | Etki alanı denetleyicileri |
<1E> | Tarayıcı Hizmet Seçimleri (Browser Service Elections) | ||
<20> | Dosya Hizmeti (File Service) | Benzersiz | Çalışan sunucu servisi |
NetBIOS protokol kümesi 3 servisten oluşur. Bu servisler;
- NetBIOS-NS (Name Service) [UDP\137, TCP\137]
- NetBIOS-DGM (Datagram Distribution Service) [UDP\138]
- NetBIOS-SSN (Session Service) [TCP\139]
Kali üzerinde kurulu olmayabilen araçların listesi aşağıdaki gibi listelenebilir.
- Responder: https://github.com/SpiderLabs/Responder
- Inveigh: https://github.com/Kevin-Robertson/Inveigh
Sistemlerin işletim sistemleri (sürümleri değil), MAC adresleri ve host isimleri listelenebilir.
- Nmap: broadcast-netbios-master-browser
- Nmap: nbstat
- MSF: auxiliary/scanner/netbios/nbname
- MSF: auxiliary/scanner/netbios/nbname_probe (Kullanımdan kaldırıldı)
- Linux: nbtscan -hvr HedefIP/24 -m 4
- Linux: nmblookup -A Hedef_IP
- Linux: apt-get install nbtscan-unixwiz; nbtscan-unixwiz -f HedefIP/24
- Windows: nbtstat -A HedefIP
- Windows: nbtstat -c
NETBIOS zehirlemesi gerçekleştirilebilir.
- responder -I eth0 -wFb
- Invoke-Inveigh -ConsoleOutput Y -NBNS Y -mDNS Y -HTTPS Y -Proxy Y
Genel bir bilgi toplama işlemi gerçekleştirilebilir. SMB sunucusu sürümü, etki alanı adı, Nbtstat bilgisi, MAC adresi, işletim sistemi, kullanıcıları (querydispinfo ve enumdomusers), paylaşım dizinleri, anonim paylaşım kontrolü, parola politikası (rpcclient üzerinden), grupları, grupların üyeleri, RID ve SID bilgisi,… elde edilebilir.
- enum4linux -a HedefIP
Paylaşımlar listelenebilir.
- Windows: net view \\HedefNetBIOSAdi
Paylaşım map edilebilir.
- Windows: net use T: \\HedefNetBIOSAdi\PaylasimDizini
Sahte NBNS cevapları oluşturulur ve işlenir.
- MSF: auxiliary/spoof/nbns/nbns_response
- MSF: auxiliary/admin/netbios/netbios_spoof
Bu servisi kullanan çeşitli zafiyetli sistemler istismar edilebilir.
- MS16-063: Cumulative Security Update for Internet Explorer [CVE-2016-3205] [CVE-2016-3206] [CVE-2016-3207]
- MSF: auxiliary/server/netbios_spoof_nat
- MS16-077: Security Update for WPAD [CVE-2016-3213] [CVE-2016-3236] [CVE-2016-3299]
- MSF: auxiliary/server/netbios_spoof_nat
LLMNR [TCP\5355, UDP\5355]
Windows sistemlerde disk üzerindeki yerel kaynak (C:\Windows\System32\drivers\etc\hosts), DNS önbelleği ve DNS sunucusunda bulunamayan alan adlarını çözmek için kullanılan DNS tabanlı protokoldür. Windows Vista sonrasındaki Windows sürümleri tarafından desteklemektedir. Ayrıca güncel bazı Linux sürümlerinde de kullanılabilir. LLMNR için NetBIOS’un atası (selefi) de denebilir.
Kali üzerinde kurulu olmayabilen araçların listesi aşağıdaki gibi listelenebilir.
- Responder: https://github.com/SpiderLabs/Responder
- Inveigh: https://github.com/Kevin-Robertson/Inveigh
Ağa LLMNR sorguları gönderilebilir.
- Nmap: llmnr-resolve –script-args ‘llmnr-resolve.hostname=ornek’ -e AgKarti
- MSF: auxiliary/scanner/llmnr/query
Sahte LLMNR cevapları oluşturulur ve işlenir..
- MSF: auxiliary/spoof/llmnr/llmnr_response
LLMNR zehirlemesi gerçekleştirilebilir.
- responder -I eth0 -wFb
- Invoke-Inveigh -ConsoleOutput Y -NBNS Y -mDNS Y -HTTPS Y -Proxy Y
Bu servisi kullanan DOS zafiyetleri istismar edilebilir.
- MS11-030: Vulnerability in DNS Resolution Could Allow Remote Code Execution [CVE-2011-0657]
- MSF: auxiliary/dos/windows/llmnr/ms11_030_dnsapi
Kaynaklar:
https://bidb.itu.edu.tr/eskiler/seyirdefteri/blog/2013/09/07/netbios
https://artofpwn.com/llmnr-netbios-ns-poisoning.html
Scanning NetBIOS
http://docshare.tips/a287-mcse-course_588f8c00b6d87f06598b4e3f.html
https://github.com/OlivierLaflamme/Cheatsheet-God/blob/master/Cheatsheet_SMBCapture.txt#L38