Bölüm 50: Ağ Saldırıları
Ağlar'a “Sen”i Katmak kitabının bir bölümü: adres çubuğuna yazdığın tek bir isteğin peşinden bakırla fiberin fiziğine inip karşı taraftan geri dönen uzun bir teknik yolculuk.
Kısım 7: Ağlar Arasında (Bölüm 45-51)
Tüm bölümler
- Giriş
- Adres Çubuğundan İsteğe
- Paket Anahtarlamalı Yol
- İsimden Adrese
- DNS Kayıtları
- Ö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
- Hizmet ve Protokol
- Encapsulation ve Başlıklar
- Paket Yakalama ve Çözümleme
- Ağ Interface Kartı
- Fiziksel Adresleme
- Hata Sezme ve CRC
- Adres Çözümleme: ARP
- Ortam Erişimi: CSMA/CD
- Switch'ler
- 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
- Router Mimarisi
- Kuyruk Yönetimi
- Cihaz Yapılandırma
- Routing Protokolleri
- Kontrol Düzlemi ve SDN
- Ağ İzleme ve Yönetimi
- Alanlar Arası Routing
- Adres Çevirisi
- Ara Kutular
- Tünelleme ve IPsec
- Firewall'lar
- Ağ Saldırıları
- Operatör ve Metro Ağları
- Bitten Sinyale
- Sembol Hızı ve Kanal Kapasitesi
- Multiplexing Teknikleri
- İletim Ortamları
- Bakır Kablo Sonlandırma
- Fiber Sonlandırma
- Fiber Optik İletim
- Bakır Erişim Ağı: DSL
- DSL'de Hız ve Mesafe
- Pasif Optik Ağlar
- Kablo Erişim Ağları
- Kablo Modem ve CMTS
- Denizaltı Kabloları
- Veri Merkezi Ağları
- Encapsulation Çözme
- Güvenilir Aktarım
- Tıkanıklık Denetimi
- Trafik Çözümleme
- Gecikme Bütçesi
- Soket Programlama
- Eşten Eşe ve Protokol Tasarımı
- Uyarlanır Video Akışı
- Gerçek Zamanlı Ses ve Görüntü
- Kablosuz Sensör Ağlarının Mimarisi
- Sensör Ağlarında Ortam Erişimi
- Sensör Ağlarında Yönlendirme ve IP
- Zaman Eşitleme ve Konum Bulma
- Sensör Ağı Uygulamaları
- Mobil Kablosuz Sensör Ağları
- Son Söz
Firewall kapıda duruyor ve her paketi kurala vuruyor. Saldırganın elinde ise iki yol daha var: kapıyı zorlamak ya da kapıyla hiç uğraşmayıp yolun ortasına oturmak.
İki yol da kuralın içeriğine takılmıyor; biri kutunun kapasitesine, öteki yolun kendisine saldırıyor. Peki kapasiteye yapılan saldırı nasıl işliyor ve yolun ortasına nasıl oturuluyor?
Kapıyı doldurmak
Önceki bölümün başında adı geçen DoS saldırısında saldırgan hedefi bozmaya çalışmıyor, dolduruyor: bant genişliği ya da sunucu kapasitesi ne kadarsa sahte trafikle tüketiyor ve meşru isteğe sıra kalmıyor. 8. bölümde yarı açık bağlantı kuyruğunu dolduran SYN selini görmüştük; durum tablosu aynı doldurma hamlesine firewall’da da açık. Dağıtık biçimini, yani DDoS’u, üç adımda kuruyorlar: önce hedefi seçiyorlar, sonra ağa dağılmış makineleri ele geçiriyorlar, en sonunda saldırıyı o makinelerden başlatıyorlar. Kaynağı tek bir yerde arama; binlerce makineden geliyor, sınırdaki kutu o trafiği süzmek için önce onu görmek zorundadır ve gördüğü her yeni five-tuple için tablosunda yer açar.
Ele geçirilmiş makinelerden oluşan bu orduya botnet deniyor ve bugün çoğu bilgisayar bile değil. 2016’da Mirai adlı botnet, varsayılan parolası değiştirilmemiş kameralar ve kayıt cihazlarıyla DNS sağlayıcısı Dyn’e saldırdı. Twitter, Netflix ve GitHub gibi siteler, adları çözülemediği için özellikle ABD’de pek çok kullanıcıya saatlerce ulaşılamaz oldu. Ölçek o günden beri büyüdü. Cloudflare 2025’in son çeyreğinde, büyük kısmı Android TV cihazlarından oluşan bir botnet’in 31,4 Tbit/s’lik saldırısını durdurdu. Saldırı 35 saniye sürdü ve hiçbir mühendis müdahale etmeden, otomatik savunmayla karşılandı. Bu hızda bir saldırıya insanın yetişmesi zaten mümkün değil. Bu cihazların güvenliğini yasaların artık nasıl zorladığını 79. bölümde göreceksin.
Bu doldurma hamlesinin en eski biçimine karşı zarif bir savunma geliştirilmiş ve mantığını öğrenmen işine yarayacak. SYN seli, sunucuyu kendisi için yer ayırmaya zorlayarak çalışıyordu: her sahte SYN, tabloda bir satır açtırıyordu. Karşı hamle de buna cevap veriyor: hiç yer ayırma.
Yöntemin adı SYN çerezi ve Daniel J. Bernstein 1996’da önerdi. Sunucu yarı açık bağlantı için bellek ayırmak yerine, o bağlantıya ait bilgiyi kendi göndereceği başlangıç sıra numarasının içine gömüyor. Numarayı rastgele seçmiyor; kaynak adres, kaynak port, hedef adres, hedef port, kaba bir zaman sayacı ve yalnızca sunucunun bildiği bir gizli anahtarı bir özet işlevine sokuyor ve çıkan değeri numara olarak kullanıyor. 32 bitin birkaçı da zaman sayacına ve istemcinin bildirdiği MSS’in sekiz kaba değerden hangisine düştüğüne ayrılıyor. Sunucunun hatırlaması gereken en önemli seçenek böylece numaranın içinde yolculuk ediyor.
Üçüncü mesaj geldiğinde sunucunun elinde hiçbir kayıt yok, ama gerek de yok. Gelen onay numarasından bir eksiltiyor, aynı özeti kendi yeniden hesaplıyor ve tutup tutmadığına bakıyor. Tutuyorsa bu üçüncü mesaj gerçekten kendi gönderdiği ikinci mesaja cevaptır; bağlantıyı o anda kuruyor. Tutmuyorsa mesajı atıyor.
Sahte kaynak adresli bir SYN seli artık hiçbir şey doldurmuyor, çünkü doldurulacak bir yer yok. Saldırgan gerçekten yer ayırtmak istiyorsa üçüncü mesajı da göndermek zorunda; o da kaynak adresini gizleyememek demek.
Bedeli de var ve nerede olduğu öğretici. Sunucu durum tutmadığı için MSS dışındaki el sıkışma seçeneklerini, yani pencere ölçeklemeyi ve seçici onayı hatırlayacak yeri de yok. Linux bu kaybın bir kısmını geri alıyor: zaman damgası seçeneği açıksa o seçenekleri kendi göndereceği zaman damgasının düşük bitlerine saklıyor. Yine de SYN çerezi normalde kapalı durur ve yalnızca kuyruk taşmaya başlayınca devreye girer. Savunma, saldırı yokken ödenmeyen bir bedelle çalışıyor.
Azaltmanın işe yaradığı bir örneği de görebilirsin. Kök alan adı sunucularına yönelik dağıtık saldırılar bugüne kadar kullanıcıların fark edeceği bir kesinti yaratamadı. Üç şey birlikte çalışıyor. 3. bölümde gördüğün on üç kök adın arkasında anycast ile dünyaya yayılmış bini aşkın kopya var ve saldırı trafiği bu kopyalara bölünüyor. Trafik ayrıca süzülüyor. Resolver’lar da üst düzey alan sunucularının adreslerini önbellekte tuttuğu için sorguların çoğu köke hiç uğramıyor.
Aradaki adam nereye oturuyor?
Trafiği okumak ya da değiştirmek isteyen birinin önce çözmesi gereken bir sorun var: trafiğin kendi üzerinden geçmesi gerekiyor. Saldırının tamamı bu tek adımda saklı ve adımı atmanın sayılı yolu var. Her yol bir katmanda bir yalan söylemekten ibaret. Tablodaki yöntemlerin hepsini daha önce gördük: sahte access point’i 32. bölümde, ARP zehirlemesini 25. bölümde, sahte DHCP sunucusunu 36. bölümde, rota kaçırmayı 45. bölümde, DNS zehirlemesini 5. bölümde.
| katman | yöntem | söylenen yalan | ne durdurur |
|---|---|---|---|
| data link (kablosuz) | sahte access point | “tanıdığın ağ benim” | ağ adının değil sertifikanın doğrulanması |
| data link | ARP zehirlemesi | “o IP adresi benim kartımda” | dinamik ARP denetimi, port güvenliği |
| data link | sahte DHCP sunucusu | “varsayılan geçidin benim” | switch’te DHCP gözetimi |
| network | rota kaçırma | “o öneke giden en iyi yol benden geçiyor” | RPKI ile önek kaynağı doğrulaması, ilan süzme |
| application (DNS) | DNS zehirlemesi | “o adın adresi bu” | DNSSEC, şifreli DNS |
Beş satırın ortak noktası, hiçbirinin şifreyi kırmaya çalışmaması. Saldırgan matematikle uğraşmıyor; yalnızca kendini yolun ortasına koyuyor. Yolun ortasında olmak da tek başına hiçbir şeyi okutmuyor: okuyabilmesi için trafiğin ya şifresiz olması ya da kendisini karşı taraf olarak kabul ettirmesi gerekiyor.
İkincisi, 12. bölümdeki sertifikanın engellediği şey. Saldırgan araya girse bile, sunucu adına imzalanmış geçerli bir sertifika üretemediği sürece tarayıcı bağlantıyı kuramaz. Bu yüzden gerçek dünyada MITM saldırıları şifreyi kırarak değil, üç kestirmeden biriyle yürür:
- Şifreye hiç girmemek. Kullanıcıyı şifresiz sürümde tutmak, şifreliye yönlendirmeyi araya girip yutmak. Yöntemin adı SSL stripping; Moxie Marlinspike 2009’da sslstrip aracıyla gösterdi. 1. bölümdeki HSTS, yani sitenin tarayıcıya “beni bir daha asla şifresiz açma” demesi, bu kestirmeyi kapatır.
- Güven deposuna sızmak. Cihaza bir kök sertifika kurulmuşsa, o kökle imzalanan her sahte sertifika geçerli görünür. Kurum ağlarındaki trafik denetimi budur ve teknik olarak yetkilendirilmiş bir MITM’dir. Aynı yöntem, cihaza zorla sertifika kurdurulduğunda saldırıya dönüşür.
- Kullanıcıyı ikna etmek. Uyarı ekranını geçirtmek, benzer yazılan bir alan adına yönlendirmek. Zincirin en zayıf halkası çoğu zaman matematik değil, dikkat.
Buradan çıkan kural şu: ağın güvenli olduğunu varsaymak yerine, karşı tarafın kim olduğunu her seferinde doğrula. Kafedeki kablosuz ağın adı doğru olabilir ama adı kimse imzalamıyor; sunucunun sertifikasını ise imzalıyor. Aynı fikir firewall’ın sınır modelini de sarsıyor. Sınırın içinde olmayı tek başına güven sebebi saymayan yaklaşıma zero trust deniyor. Google 2014’te BeyondCorp adıyla çalışanlarının iç ağ ayrıcalığını kaldırdığını anlattı: her istek, nereden gelirse gelsin, kullanıcının ve cihazın kimliğine göre yargılanıyor.
İnternet kısıtlamaları hangi katmanda uygulanıyor?
Aynı düzenek bir de tersinden çalışıyor. Trafiğin üzerinden geçtiği yerde duran biri, onu okumak yerine durdurmayı seçebilir. Erişim kısıtlaması dediğimiz şey teknik olarak bir süzme kararıdır ve her yöntem başka bir katmanda iş görür. Katman da iki şeyi belirler: yan hasarın büyüklüğünü ve yöntemin ne kadar hedefli olabildiğini.
| yöntem | hangi katmanda | ne yapıyor | yan hasarı |
|---|---|---|---|
| ad çözme cevabını değiştirme | application (DNS) | resolver sahte ya da boş cevap döndürür | o adı kullanan her hizmet birden düşer |
| adres ya da önek düşürme | network | hedefe giden paket iletilmez | aynı adresi paylaşan bütün siteler kapanır |
| el sıkışmadaki alan adına bakma (SNI) | TLS | şifreli oturum kurulmadan önceki açık alan adı okunur | çok az; yöntem hedefli çalışır |
| protokol parmak izi | DPI | içeriğe değil trafiğin şekline bakar | meşru kullanım da yakalanır |
| hız kısma | network | engellemez, kullanılamaz hâle getirir | ölçmesi ve kanıtlaması zor |
Sıralamada bir yön var. Web trafiğinin neredeyse tamamı şifrelendikçe içeriğe bakarak süzme imkânsızlaştı ve süzme içerikten üstveriye kaydı: hangi adı sorduğun, hangi adrese gittiğin, el sıkışmanın hangi alan adını açıkta bıraktığı. 5. bölümdeki şifreli DNS birinci satırdaki yöntemi, el sıkışmanın açık kısmını da kapatan 11. bölümdeki ECH üçüncü satırdakini daraltıyor. Her hamlenin bir karşılığı var: hedefli süzme zorlaştıkça elde kalan kaba araca, adres engellemesine başvuruluyor ve yan hasar büyüyor.
Bunun canlı bir örneği İspanya’da görüldü. Şubat 2025’ten itibaren maç yayınlarının korsan kopyalarını engellemek için maç saatlerinde Cloudflare’in paylaşılan adresleri toptan engellendi. Aynı adresleri kullanan binlerce ilgisiz site de maç günlerinde ülkeden erişilemez hâle geldi; Docker Hub gibi geliştirici hizmetleri de bunlara dahildi.
Kurum ağındaki içerik süzgeci ile ülke çapındaki erişim engeli teknik olarak aynı araçları kullanıyor. Aralarındaki fark araçta değil, kimin hangi yetkiyle uyguladığında ve neyin denetime açık olduğunda.
Özet
- DoS bozmaz, doldurur: bant genişliğini ya da sunucu kapasitesini sahte trafikle tüketir; dağıtık biçimi binlerce ele geçirilmiş cihazdan, bir botnet’ten gelir.
- SYN çerezi durumu pakete taşır: sunucu yarı açık bağlantı için yer ayırmaz, bağlantının kimliğini kendi sıra numarasına gömer.
- Dağıtmak da savunmadır: kök sunuculara yönelik saldırılar anycast kopyalara bölündüğü ve cevaplar önbellekte durduğu için kullanıcıya ulaşmadı.
- Aradaki adam şifreyi kırmaz, yolun ortasına girer: her katmanda bir yalanla; son savunma, karşı tarafın kimliğini sertifikayla doğrulamaktır.
- Erişim kısıtlaması bir süzme kararıdır: hangi katmanda uygulandığı hem ne kadar hedefli olabildiğini hem de yan hasarın büyüklüğünü belirler.
Liste kararını verdi. Sınırın iki yanındaki ağları kurumlar işletiyor; iki kurumun sınırı arasındaki uzun yolu ise operatörler. Peki paketin o yolda geçtiği ağ senin evdekine benziyor mu?
51. bölüme devam et: Operatör ve Metro Ağları