Bölüm 29:Kablosuz Ağ Güvenliği
Ağlar'a “Sen”i Katmak yazısının parçası: adres çubuğuna yazdığın tek bir isteğin peşinden bakırla fiberin fiziğine kadar inen uzun bir teknik yolculuk.
Tüm bölümler
- Giriş
- Adres Çubuğundan İsteğe
- Paket Anahtarlamalı Yol
- İsimden Adrese
- Önbellek, Tazelik ve Güven
- Port Numarası ve Soket
- Bağlantısız Taşıma: UDP
- Üç Adımlı El Sıkışma
- Simetrik Şifreleme
- Açık Anahtarlı Kriptografi
- TLS El Sıkışması
- Sertifika Zinciri
- HTTP Mesajının Anatomisi
- Durum, Çerez ve Oturum
- HTTP/2'den HTTP/3'e
- İçerik Dağıtım Ağları
- Diğer Uygulama Protokolleri
- Katmanlı Mimari
- Kapsülleme ve Başlıklar
- Paket Yakalama ve Çözümleme
- Ağ Arayüz Kartı
- Fiziksel Adresleme
- Hata Sezme ve CRC
- Adres Çözümleme: ARP
- Anahtarlama ve Ortam Erişimi
- Ağ Topolojileri
- Sanal Yerel Ağlar
- Kablosuz Erişim: 802.11
- Radyo Kanalı ve Kapasite
- Kablosuz Ağ Güvenliği
- Hücresel Ağlar
- Spektrum ve Kuşaklar
- Hareketlilik ve Aktarma
- Adres Kiralama: DHCP
- Adresin Anatomisi
- Adres Tükenmesi ve IPv6
- Yönlendirici Mimarisi
- Kuyruk Yönetimi
- Cihaz Yapılandırma
- Yönlendirme Protokolleri
- Kontrol Düzlemi ve SDN
- Ağ İzleme ve Yönetimi
- Alanlar Arası Yönlendirme
- Adres Çevirisi
- Ara Kutular
- Tünelleme ve IPsec
- Güvenlik Duvarları
- Operatör ve Metro Ağları
- Bitten Sinyale
- Çoklama Teknikleri
- İletim Ortamları
- Kablo Sonlandırma
- Fiber Optik İletim
- Bakır Erişim Ağı: DSL
- Pasif Optik Ağlar
- Kablo Erişim Ağları
- Denizaltı Kabloları
- Veri Merkezi Ağları
- Kapsülleme Çözme
- Güvenilir Aktarım
- Tıkanıklık Denetimi
- Trafik Çözümleme
- Gecikme Bütçesi
- Son Söz
Menzildeki her radyo o çerçeveyi duydu. Duymak ile okumak arasındaki farkı yaratan şey mesafe değildir; bağlanırken üretilmiş ortak bir sırdır.
O sır hiçbir zaman havaya çıkmadı. Peki iki taraf ona nasıl vardı?
Şifrelenen tam olarak ne?
Ağa yeni giren bir cihazın üç işi var ve üçü de sen parolayı yazdıktan sonra, saniyenin içinde bitiyor: access point’le ilişkilendirilecek, ağla karşılıklı kimlik doğrulayacak, çerçevelerini şifreleyecek. Üçüncüsü sanıldığından geniş. Şifrelemenin yalnızca kullanıcı verisini kapsadığını sanma; doğrulama sırasında giden çerçeveleri de içine alıyor.
Pazarlık bir keşif adımıyla başlıyor: access point beacon yayınlıyor, ya da cihazın kendisi bir yoklama isteği gönderiyor. Bu iki yol ağı bulup ilişkilendirmeye kadar götürüyordu; aynı çerçeveler bir menü de taşıyor. Access point sunduğu kimlik doğrulama ve şifreleme biçimlerini ilan ediyor, cihaz da içlerinden birini istiyor. Dikkat et: o anda cihaz henüz doğrulanmış değil ve anahtar iki tarafta da yok.
Wi-Fi kartını izleme kipine alıp yanından geçen her çerçeveyi kaydetmeyi öğrenmiştin. Menzilde duran bir yabancı da aynı şeyi senden izin almadan yapar; kaydedilen trafik şifreliyse eldeki dosya anlaşılmaz kalır.

Şifrelemenin açık olup olmadığını frame control alanındaki tek bitlik WEP bayrağından okuyabilirsin. Başlığın kendisi korunmuyor: dört adres alanı açıkta gidiyor, şifrelenen kısım yalnızca yük. Her adres alanı 6 bayt; üç adresli bir başlık toplamda 24 bayt tutar. Şifrelenen yük ise 0 ile 2.312 bayt arasında değişir. Dinleyen biri içeriği okuyamaz, kimin kiminle konuştuğunu yine de görür. Kanal genişliği ve modülasyon derinliği taşınan bit sayısını belirliyordu; şifreleme o sayıya dokunmaz.
Bütün bu işler tek bir soy ağacında duruyor: WEP’ten WPA’ya, oradan WPA2’ye ve WPA3’e. En eski adın açılımı hedefini de söylüyordu. WEP, kablolu ortamla eşdeğer bir mahremiyet vaat ediyordu. Eski access point kataloglarında güvenlik satırı 64, 128 ve 152 bitlik WEP seçenekleriyle reklam ediliyordu. Güvenlik bir kutu özelliğiydi. WPA ile WPA2 2004’te geldi, WPA3 ise 2018’de. Aradaki on dört yıl boyunca WPA2 el sıkışması sahadaki tek seçenek olarak kaldı. Bir güvenlik protokolü için uzun bir süre bu, ve o sürenin sonunda ne olduğunu birazdan göreceksin.
Parola hattan geçmeden anahtar nasıl doğuyor?
Evinde ve küçük bir ofiste çalışan kipin adı kişisel kip. Access point’e tek bir parola girilir ve bütün cihazlar onu paylaşır. Parolayı yalnızca cihaz ile access point bilir. Parola bağlantıdan önce cihazlarda bulunduğu için bu düzenin adı önceden paylaşılan anahtar.
WPA2-PSK doğrulaması iki aşamadan oluşur ve aşamalar birbirinden bağımsız çalışır. Birinci aşamada istemci bir 802.11 Authentication çerçevesi gönderip Open System ister. Adı kimlik doğrulamaya benziyor ama sana parola sormuyor. Access point Status Code alanına Successful yazıyor ve iş bitiyor. O başarı damgasına aldanma; hiçbir sırrın doğrulandığı anlamına gelmiyor.
Birinci aşama bittiğinde cihaz ilişkilendirilmiştir, ama gerçek doğrulama hiç olmamıştır. İkinci aşama 802.1X üstünde koşar ve yalnızca o oturuma ait taze bir AES anahtarı üretir. Adı dört adımlı EAPOL el sıkışması. EAPOL, genişletilebilir kimlik doğrulama protokolünün yerel ağ üstünde taşınan biçimi.
Sırayı adım adım izleyelim. Access point ilk nonce’u gönderiyor. İstemci paylaşılan sır ile o nonce’u birleştirip bir MIC (bütünlük kodu) üretiyor ve kendi nonce’unu ekliyor. Access point kodu doğruluyor, karşı tarafın canlı olduğunu ölçüyor ve AES oturum anahtarını üretiyor. İstemci de kodu doğruluyor, onayını gönderiyor ve anahtarı kuruyor. Paylaşılan sır iki işe birden yarıyor: şifrelemeye ve bu MIC’in (bütünlük kodunun) üretilmesine.
Nonce’lar kaydedilmiş bir mesajın yeniden oynatılmasını da engelliyor. Her oturuma yeni bir anahtar üretmek, paylaşılan sırra kaba kuvvet uygulamayı zorlaştırıyor. El sıkışma bittiğinde anahtarı iki tarafta hazır buluyorsun, ama paylaşılan sır hiçbir zaman hatta çıkmamış oluyor. Üretilen anahtar AES’e ait. Simetrik şifrelemenin anahtar dağıtımı sorunu tanıdık; burada o anahtarı elden veren bir merci yok, iki tarafın ortak parolası var.
Bağlanma izini paket paket sayabilirsin: beacon’dan son ACK’e kadar dokuz paket geçiyor ve bunun son dördü EAPOL el sıkışması. Adres alma sırası ondan sonra geliyor, çünkü kimlik doğrulanmadan DHCP bile çalışamıyor.
El sıkışmanın kendisi de bir açık taşıyordu
WPA2’nin dört adımlı el sıkışması on üç yıl boyunca sağlam sayıldı. 2017’de bulunan kusur şifrede değil, sıralamadaydı.
Üçüncü mesaj yolda kaybolabiliyor. Protokol bunu öngörmüş: access point cevap gelmezse aynı mesajı yeniden gönderiyor. İstemci de her aldığında anahtarı yeniden kuruyor — ve anahtarı yeniden kurmak, yanındaki sayaçları da sıfırlamak demek.
Sayaç kipinin en tehlikeli hatası tanıdık: aynı anahtarla aynı sayacı iki kez kullanmak, iki şifreli metnin XOR’unun iki açık metnin XOR’unu vermesi demek. Saldırgan üçüncü mesajı kaydedip yeniden oynattığında tam olarak bunu tetikliyor. Anahtar kırılmıyor, tahmin edilmiyor, hesaplanmıyor; yalnızca ikinci kez kullanılıyor. Saldırının adı da bunu söylüyor: anahtarın yeniden kurulması.
Düzeltmeyi protokolde değil gerçeklemelerde arayacaksın; istemciler aynı anahtarı ikinci kez kurmayı reddeder hâle getirildi. Yani telde giden mesajlar aynı kaldı, değişen şey o mesajlara verilen tepki oldu.
Geçiş kipi eski açığı geri getiriyor
WPA3’e geçişin de bir pürüzü var ve bu kez kusur uyumlulukta. Bir access point hem WPA3 hem WPA2 kabul edecek şekilde ayarlanabiliyor; adı geçiş kipi ve amacı eski cihazları dışarıda bırakmamak.
Sorun şu: hangi kipin kullanılacağına istemci ile access point el sıkışmanın başında karar veriyor, ve o pazarlık henüz korunmuyor. Araya giren biri istemciyi WPA2 tarafına düşürebiliyor. Bu olduğunda birazdan göreceğin bütün WPA3 kazanımları — özellikle kaydedilmiş el sıkışmadan parolayı deneme imkânının kapanması — geri geliyor.
WPA3 el sıkışmayı nasıl değiştirdi?
WPA3’ün getirdiği asıl değişim el sıkışmanın kendisinde. WPA2’nin dört adımı menzilde duran biri tarafından kaydedilebiliyordu. Kayıt eldeyse parola havuzunu denemek ağla hiç konuşmadan, saldırganın kendi makinesinde yapılır; bunun adı çevrimdışı sözlük saldırısı. WPA3’ün kullandığı SAE, Dragonfly ailesinden geliyor: parolayla doğrulanan ve bu saldırıya dayanıklı bir anahtar değişimi. Ailenin tanımı RFC 7664’te yazılı; belgeyi Harkins kaleme aldı, IRTF’in CFRG grubu Kasım 2015’te yayımladı.
Değişim iki adımda kuruluyor. Commit adımında iki taraf da parolaya dair tek bir tahmine bağlanır. Birer skaler ve eleman üretip değiş tokuş eder, ortak sırrı hesaplar. Confirm adımında ise aynı sırrı türettiklerini, dolayısıyla aynı parolaya sahip olduklarını birbirine kanıtlarlar. Her taraf birer Commit ve birer Confirm gönderdiği için değişim dört çerçeve eder. Diziliş WPA2’nin dört adımına benziyor, üretilen şey benzemiyor.
Ortak sır tek parça da bırakılmaz. Bir doğrulama anahtarı ile bir ana anahtar olmak üzere ikiye gerilir. Skaler ve eleman üretildikten sonra ara değer geri dönülemez biçimde yok edilmek zorundadır. Karşı taraf aynı skaler ve elemanı olduğu gibi geri gönderirse bu bir yansıtma saldırısı işaretidir. Değişim orada durur.
İki tarafın parolayı hiç göndermeden nasıl anlaştığını izleyelim:
- İki taraf aynı parolaya bağlanır. Değişimden önce her iki taraf da parolaya dair tek bir tahmine bağlanır. Bağlandığı tahmin sonuna kadar sabit kalır; doğru olup olmadığı ancak Confirm adımında anlaşılır.
- Commit değiş tokuş edilir. Her taraf birer skaler ve eleman üretip karşıya yollar, geleni kendi değeriyle birleştirip ortak sırrı hesaplar. Aynı skaler ve eleman olduğu gibi geri gelirse değişim durdurulur.
- Ortak sır ikiye geriliyor. Sır tek parça bırakılmaz: bir doğrulama anahtarı (kck) ile bir ana anahtar (mk) çıkarılır. Skaler ve eleman üretildikten sonra ara değer geri dönülemez biçimde yok edilir.
- Confirm ile kanıt geliyor. İki taraf da aynı sırrı türettiğini gösteren bir Confirm yollar. Kanıt tutarsa aynı parolayı bildikleri anlaşılır; parolanın kendisi hiçbir adımda havaya çıkmaz.
- Oturum anahtarı kuruluyor. Dört çerçeve bitince iki tarafta da yalnızca bu oturuma ait bir anahtar durur. Diziliş WPA2 el sıkışmasını andırır, ama anahtarı doğuran şey paylaşılan sırrın kendisi değildir.
DerinleşmeKaydedilmiş bir el sıkışma parolayı neden ele veriyor?
Kaydın parolayı ele vermesi WPA2’nin bir hatası değil, tasarımının kaçınılmaz bedeli. Dört adım paroladan türetilmiş bir MIC (bütünlük kodu) taşımak zorunda; taşımasa iki taraf birbirinin doğru sırrı bildiğini hiç ölçemez. Ama karşı taraf o kodu yeniden hesaplayıp doğrulayabiliyorsa, kaydı alan da hesaplayabilir. Paroladan türetilmiş veriyi hatta gönderen her protokol aynı kapıyı açar. Ağ bir denemeyle binlerce denemeyi ayırt edemez, çünkü denemelerin hiçbiri ağa uğramaz.
Bu yüzden dirençli olmanın tanımı hesap gücüyle değil, etkileşim sayısıyla yazılır. Bir anahtar değişimi sözlük saldırısına dirençliyse şu geçerlidir: saldırganın kazancı, dürüst tarafla kaç kez etkileşime girdiğine bağlıdır. Saldırgan bir protokol koşusundan parola hakkında tek bir bilgi alır, o da denediği tahminin doğru olup olmadığıdır. Bin tahmin bin koşu demektir ve her koşu ağın görebildiği, sayabildiği ve kısıtlayabildiği bir olaydır.
RFC 7664 bunu bir tasarım gerekliliği olarak yazar: Dragonfly edilgen saldırıya, etkin saldırıya ve çevrimdışı sözlük saldırısına birden direnir. WPA3’ün el sıkışması o aileden geldiği için kaydedilmiş bir yakalamanın üstünde günlerce çalışmak karşılıksız kalır.
Genel ders şu: bir sırrı korumak çoğu zaman onu gizlemek değil, denenmesini pahalılaştırmaktır.
Kurumsal kipte parola nereye gitti?
Kurumsal kipte parola kullanıcı başına ayrışır ve kimlik olarak sertifika da kullanılabilir. Protokol iki taraf yerine üç taraf arasında koşar: cihaz, access point ve RADIUS gibi bir kimlik doğrulama sunucusu. Access point bu konuşmada neredeyse tamamen bir aktarıcıdır. Kimlik bilgileri istemci ile sunucuda durur, access point’te değil.
Bu düzenin adı 802.1X, resmî adı ise port tabanlı ağ erişim denetimi. Adında ne kablosuz ne parola geçer. Kablolu ve kablosuz yerel ağa ortak bir kimlik denetimi getirmek için tasarlandı. Erişim portunu baştan kapalı sayan aynı denetim kabloda da vardı; burada kapı bekçisi erişim noktasında duruyor.
Kimlik denetleyici ayrı bir kutu değildir; anahtarın ya da access point’in üstlendiği bir roldür. İstemciden gelen kimlik yanıtını alır, bir RADIUS Erişim İsteği paketine kapsülleyip sunucuya iletir. Aynı EAP verisi iki ayrı zarfla taşınır: cihazla access point arasında EAPOL, access point’le sunucu arasında RADIUS. Sunucunun işi kimlik doğrulamayı, yetkilendirmeyi ve hesap kaydını tek merkezde toplamaktır.
Doğrulamayı istemci de başlatabilir. Bir EAPOL-Start çerçevesi gönderir, doğrulayıcı kimlik isteğiyle yanıt verir. Oturumu kapatırken EAPOL-Logoff gider ve port yeniden yetkisiz duruma düşer. EAP’in kendisi kimlik doğrulamaz; yöntemleri taşır. Tanımlanmış yaklaşık 40 yöntem var ve aralarındaki fark kullandıkları kimlik malzemesi: parola, sertifika, SIM kartı ya da donanım tokeni. Adlar bunu söyler; EAP-TLS sertifikaya dayanır, EAP-SIM telefonun SIM kartına. İstemci önerilen yöntemi reddedip kendi listesini önerebilir ve bu pazarlık adımının adı NAK.
EAP-TTLS iki aşamada çalışır ve RFC 5281’de tanımlanır. Önce istemci sunucuyu doğrular ve aralarında bir TLS tüneli kurulur. Sonra sunucu istemciyi o şifreli tünelin içinde doğrular, ardından tünel yıkılır. Parola hiçbir zaman açıktan geçmez. Oturum anahtarı el sıkışma sırasında kuruluyordu; burada aynı tünel tek bir parolayı taşımak için kuruluyor.
Sonucu sunucu access point’e bildirir ve kanal şifrelemesi için gereken malzemeyi de ona gönderir. Kurumsal kipte de sonunda aynı dört adımlı el sıkışma koşar, ama artık kimlik için değil kanalı şifrelemek için.
Access point’in ilan ettiği menüyü kendi makinende de görebilirsin. Linux’ta nmcli -f SSID,SECURITY,CHAN dev wifi list menzildeki her ağın yanına o satırı basar.
$ nmcli -f SSID,SECURITY,CHAN dev wifi list
SSID SECURITY CHAN
kat3-koridor WPA2 6
lab-3b WPA3 36
kampus-net WPA2 802.1X 11Üçüncü satırdaki 802.1X işareti o ağın kurumsal kipte koştuğunu söyler.
Özet
Peki, ne öğrendik?
- Şifrelenen kısım yüktür: başlıktaki adres alanları açıkta gittiği için dinleyen biri içeriği okuyamasa bile kimin kiminle konuştuğunu görür.
- İlişkilendirme kimlik doğrulama değildir: Open System isteğine dönen Successful damgası hiçbir sırrın doğrulandığını göstermez.
- Anahtar oturuma özeldir: dört adımlı el sıkışma paylaşılan sır ile nonce’ları birleştirip her bağlantıya yeni bir AES anahtarı üretir, sırrı hatta hiç koymaz.
- SAE tahmini pahalılaştırır: Commit ile Confirm üstüne kurulan değişim, kaydedilmiş bir el sıkışmadan parola havuzunu denemeyi işe yaramaz hâle getirir.
- Kurumsal kipte kimlik başka yerde durur: access point aktarıcıdır, karar kimlik doğrulama sunucusundadır ve el sıkışma yalnızca kanalı şifrelemeye yarar.
Evdeki ağın kapısını kimin, neyle ve hangi sırayla açtığını artık biliyorsun. Sokağa çıkınca o kapı arkanda kalıyor. Peki hiçbir kablosuz ağ yokken telefonun neye bağlanıyor?
30. bölüme devam et: Hücresel Ağlar