Ana içeriğe geç

Bölüm 50: Ağ Saldırıları

7 dakikalık okumaGüncelleme:

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
  1. Giriş
  2. Adres Çubuğundan İsteğe
  3. Paket Anahtarlamalı Yol
  4. İsimden Adrese
  5. DNS Kayıtları
  6. Önbellek, Tazelik ve Güven
  7. Port Numarası ve Soket
  8. Bağlantısız Taşıma: UDP
  9. Üç Adımlı El Sıkışma
  10. Simetrik Şifreleme
  11. Açık Anahtarlı Kriptografi
  12. TLS El Sıkışması
  13. Sertifika Zinciri
  14. HTTP Mesajının Anatomisi
  15. Durum, Çerez ve Oturum
  16. HTTP/2'den HTTP/3'e
  17. İçerik Dağıtım Ağları
  18. Diğer Uygulama Protokolleri
  19. Katmanlı Mimari
  20. Hizmet ve Protokol
  21. Encapsulation ve Başlıklar
  22. Paket Yakalama ve Çözümleme
  23. Ağ Interface Kartı
  24. Fiziksel Adresleme
  25. Hata Sezme ve CRC
  26. Adres Çözümleme: ARP
  27. Ortam Erişimi: CSMA/CD
  28. Switch'ler
  29. Ağ Topolojileri
  30. Sanal Yerel Ağlar
  31. Kablosuz Erişim: 802.11
  32. Radyo Kanalı ve Kapasite
  33. Kablosuz Ağ Güvenliği
  34. Hücresel Ağlar
  35. Spektrum ve Kuşaklar
  36. Hareketlilik ve Aktarma
  37. Adres Kiralama: DHCP
  38. Adresin Anatomisi
  39. Adres Tükenmesi ve IPv6
  40. Router Mimarisi
  41. Kuyruk Yönetimi
  42. Cihaz Yapılandırma
  43. Routing Protokolleri
  44. Kontrol Düzlemi ve SDN
  45. Ağ İzleme ve Yönetimi
  46. Alanlar Arası Routing
  47. Adres Çevirisi
  48. Ara Kutular
  49. Tünelleme ve IPsec
  50. Firewall'lar
  51. Ağ Saldırıları
  52. Operatör ve Metro Ağları
  53. Bitten Sinyale
  54. Sembol Hızı ve Kanal Kapasitesi
  55. Multiplexing Teknikleri
  56. İletim Ortamları
  57. Bakır Kablo Sonlandırma
  58. Fiber Sonlandırma
  59. Fiber Optik İletim
  60. Bakır Erişim Ağı: DSL
  61. DSL'de Hız ve Mesafe
  62. Pasif Optik Ağlar
  63. Kablo Erişim Ağları
  64. Kablo Modem ve CMTS
  65. Denizaltı Kabloları
  66. Veri Merkezi Ağları
  67. Encapsulation Çözme
  68. Güvenilir Aktarım
  69. Tıkanıklık Denetimi
  70. Trafik Çözümleme
  71. Gecikme Bütçesi
  72. Soket Programlama
  73. Eşten Eşe ve Protokol Tasarımı
  74. Uyarlanır Video Akışı
  75. Gerçek Zamanlı Ses ve Görüntü
  76. Kablosuz Sensör Ağlarının Mimarisi
  77. Sensör Ağlarında Ortam Erişimi
  78. Sensör Ağlarında Yönlendirme ve IP
  79. Zaman Eşitleme ve Konum Bulma
  80. Sensör Ağı Uygulamaları
  81. Mobil Kablosuz Sensör Ağları
  82. 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.

katmanyöntemsöylenen yalanne durdurur
data link (kablosuz)sahte access point“tanıdığın ağ benim”ağ adının değil sertifikanın doğrulanması
data linkARP zehirlemesi“o IP adresi benim kartımda”dinamik ARP denetimi, port güvenliği
data linksahte DHCP sunucusu“varsayılan geçidin benim”switch’te DHCP gözetimi
networkrota 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:

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öntemhangi katmandane yapıyoryan hasarı
ad çözme cevabını değiştirmeapplication (DNS)resolver sahte ya da boş cevap döndürüro adı kullanan her hizmet birden düşer
adres ya da önek düşürmenetworkhedefe giden paket iletilmezaynı 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 iziDPIiçeriğe değil trafiğin şekline bakarmeşru kullanım da yakalanır
hız kısmanetworkengellemez, 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ı