Sansür Rehberi 101
İnternet sitesi yasaklamak son zamanlarda en popüler medya sansür yöntemlerinden bir tanesi oldu ve çoğu ülke bunu aktif olarak uyguluyor.
Yıllarca wikipedia'nın, pastebin'in ve yüzlerce benzer sitenin yasaklı kaldığı bir ülkede yaşıyorsanız bu sansür rehberini mutlaka okumalısınız, çünkü bilgi en doğal hakkınız.
P.S: Bu konudaki grafikler ve yazı bana aittir, başka forumlarda görürseniz oradaki grafikler de bana aittir. © 2023 FloridaBoy/pwn.
Bu konuda detaylı teknik konulara değineceğim, eğer IP adresinin, domain'in ne olduğunu bilmiyorsanız bu konu kafa karıştırıcı olabilir.
Basit terimleri bildiğinizi varsayıyorum, ama yine de konunun devamında açıklayacağım.
IP Adresi:
Muhtemelen duyduğunuz bir terim, her ev internetinin, internete bağlı cihazların (websitesi, sunucu, modem, telefon) sahip olduğu 4 byte'lık bir dizi.
IP adresinin V4 ve V6 olan iki versiyonu vardır, biz klasik V4'den bahsedeceğiz çünkü Türkiye'de V6'lar henüz dolaşıma sokulmadı ve muhtemelen bir 20 yıl daha göremeyeceğiz.
IPv4 formatı:
(dec: desimal, hex: hexadesimal, bin: binary demek. Aynı sayının farklı gösterimi gibi düşünün.)
Buradaki her bir byte, 00000000 (0) ile 11111111 (255) arasında değer alabiliyor, yani bir IPv4'ün her bir byte'ının alabileceği değer, 0-255 arasında olmak zorundadır.
Eğer birisi IP adresi paylaştıysa, ve şuna benziyorsa "47.478.601.419" bu geçerli bir IP adresi değildir çünkü byte'lar 255 değerini aşamaz.
Cloudflare (kısa adı ile CF):
Dünyanın her yerinde yüzlerce sunucusu olan dev bir altyapı.. Cloudflare.
Aslında özel bir Amerikan şirketi olan Cloudflare aynı zamanda WARP'ın da sahibi, ve WARP'ın neden engellenemeyeceğinin cevabı: cloudflare'dan vazgeçemezler.
Cloudflare'in tek bir amacı var: Websitelerinin güvenliğini ve optimizasyonunu sağlamak.
Cloudflare, kendisini domain'in işaret ettiği yere koyarak ziyaretçi ile techolay.net arasında "vekil" bir sunucu oluyor.
Bu sayede ziyaretçi, techolay.net'in gerçek IP adresini asla bilmiyor, ve DDoS, SSH bruteforce gibi saldırıları kolay bir şekilde gerçekleştiremiyor.
Aşağıdaki grafikte daha detaylı bir şekilde görülebilir:
Cloudflare, kendi iç network'unde "techolay.net"e kayıtlı IP adresine isteği yönlendiriyor. Burada bütün siteleri birbirinden ayıran tek şey "Host" adlı parametre
Görüldüğü gibi bir adet Cloudflare IP adresi, binlerce siteye ev sahipliği yapabiliyor. Bunun önemli olmasının sebebi, IP adresi üzerinden site engelleme işini imkansız hale getiriyor.
Cloudflare tarafından korunan bir siteyi IP adresi üzerinden engellemek için bütün Cloudflare IP'lerini (yaklaşık 2 milyon adet var) engellemek gerekiyor, ve bu bütün Cloudflare kullanan sitelerin de engellenmesi demek. Bunu yapan bir ülke, internetinin fişini çekmiş demektir.
Ama engel hala mümkün, birazdan göstereceğim.
Engel Yöntemi #1: Domain Engelleme (DNS Engeli)
DNS Nedir?
Bilgisayarlar harflerden anlamaz, sadece bit'lerden anlar.
Techolay.net'i ziyaret etmek için tarayıcınızın; yukarıda anlattığım IP adresi formatındaki 32 bit'i bir şekilde elde etmesi gerekiyor.
Bunu yapmak için "DNS" denilen bir sistem kullanılıyor, her domain'in "resolve" edildiği bir IP adresi olmak zorunda, yoksa siteye ulaşılamaz.
Bu "resolve" işlemini DNS sunucuları yapar. Her internet sağlayıcısının kendine ait bir DNS sunucusu oluyor, ve varsayılan olarak internet sağlayıcınızın size söylediği IP adresleri ile iletişim kurabiliyorsunuz.
Aşağıdaki şemada detaylı bir şekilde görülebilir:
Her domain'e atanmış IP adresleri, internet sağlayıcısının DNS sunucusu içerisinde istenildiği gibi değiştirilebilir, yasal talepler üzerine genellikle bu kayıtlar değiştiriliyor ve aslında olmayan bir IP adresine yönlendiriliyor. Aşağıda, engellenmiş bir techolay.net'in DNS sorgusunun neye benzediğini görebiliriz:
Artık xTelekom kullanan ziyaretçiler, "techolay.net"e gitmek istediklerinde 80.2.100.5 adresindeki Erişim Engeli sayfası ile karşılaşacaklar.
(Bazı sağlayıcılar; eğer internet aboneliğiniz kota aşımına uğradıysa veya kısıtlandıysa da benzer şekilde sizi "ödeme" sayfasına yönlendirebiliyor)
Bu genellikle ucuz ve kolay bir yöntem olduğu için hemen hemen her internet sağlayıcısı bunu uygular. Ama basit bir DNS ayarı değiştirme ile bu yöntem delip geçilebilir.
Eğer DNS sunucusu değiştirildiyse aşağıdaki yöntemler ile site engellenir.
Engel Yöntemi #2: IP Adresi Engeli
Biraz yukarıda yazdığım şeyi hatırlayalım, eğer site Cloudflare kullanıyorsa bu yöntem geçerli değildir.
CF varsa IP adresi engelinden bahsedilemez çünkü Cloudflare nameserver'ine sahip domain'ler, her an IP değiştirebilir.
CF olmadığını varsayarsak, IP adresleri, İSS (İnternet Servis Sağlayıcıları) tarafından her an engellenebilir, sonuçta hedef IP adresini bilmesi lazım İSS'nin. Yoksa paketi nereye teslim edecek?
Örneğin, eğer ziyaretçi, başka bir DNS sunucusu kullanıyorsa (8.8.8.8 Gibi) mecburen sitenin direkt IP adresini engellemek gerekiyor, çünkü domain <--> ip eşleştirme işlemi, İnternet Servis Sağlayıcısının kontrolü dışında gerçekleşiyor.
Engel Yöntemi #3: Deep Packet Inspection (DPI)
(Türkçesi: Derin Paket Analizi/İncelemesi)
Şifreli bağlantılarda (SSL) yapılan paket analizlerinden bahsedeceğim, çünkü şifresiz (HTTPS kullanmayan) trafik zaten her türlü paket analizine açık oluyor.
Ayrıca hala HTTPS kullanmayan site kalmadı sayılabilir, bu yüzden SSL (HTTPS) olan sitelerdeki derin paket analizinde neler yapılabileceğinden bahsedeceğim.
DPI'in en popüler yöntemlerinden bir tanesi, biraz yukarıda bahsettiğim "Host" parametresini tespit edip paketin hangi siteye gittiğini bulmaktır.
Normalde SSL varsa bütün parametreler ve URL'ler internet sağlayıcısının göremeyeceği şekilde şifrelenir. Tek bir parametre hariç: "Host" parametresi şifrelenmez!
Host header'inin neden şifrelenmediğinin derin detaylarına girmeyeceğim, ama aynı sunucuda birden fazla site host ediyorsanız farklı sertifikalara sahip olabiliyorlar, dolayısıyla şifreyi çözmeden doğru sertifikayı servis edebilmek için "Host" değerinin şifresiz olması gerekiyor. Bu çok detay bir bilgiydi.
Karmaşık doğası nedeniyle geçmesi en zor engel yöntemlerinden birisidir. Çünkü:
- DNS değiştirmek fayda etmez. Host'un dns ile alakası yoktur.
- Proxy kullanmak fayda etmeyebilir, bazı transparan proxy'ler trafiği şifrelemez.
Goodbyedpi?
Bu DPI yöntemini geçmek için bazı karmaşık teknikler vardır, "goodbyedpi" bunlardan bazılarını içeren bir araçtır.
Host parametresini "bÜyÜk kÜçÜk" harflere çevirir, "hOsT" gibi yazar. Domain ile : arasındaki boşluğu siler, paketleri fragmente edip Host kısmından ikiye bölmek gibi ilginç yöntemleri uygular.
Engel Yöntemi #4: VPN Protokolü Tespiti ve Engeli
Pahalı bir yöntemdir, xTelekom rölelerine fazla yük bindirir. Açıkçası Türkiye'de uygulandığını zannetmiyorum, çünkü çok hassas ve "false flag"lere açık bir sistemdir.
Ayrıca Türkiye'de VPN protokolü engellemek, bankaların ve şirketlerin erişim kontrolü yöntemlerini de engellemek anlamına geliyor çünkü onlar da OpenVPN gibi protokoller kullanıyorlar.
Her VPN'in genellikle kendine ait bir protokolü oluyor, OpenVPN, WireGuard, Lightway, gibi..
VPN kullanılırken İnternet Sağlayıcıları, trafik içerisindeki tek bir harfi bile okuyamaz. Ancak...
İSS'ler, bu protokollerden birisini kullandığınızı teknik olarak tespit edebilir, ve VPN kullandığınızı fark ederse bağlantıyı kesebilir.
Yine aynı DPI yöntemlerinden yararlanarak paket içerisinde kendini tekrar eden, sadece o protokole özgü "pattern" (desen)leri tespit edebiliyoruz.
Örnek olarak OpenVPN protokolünü ele alalım:
Bu OpenVPN'in paket formatıdır. Tespit etmek için gelen paketlerin ne şekilde "parse" edilebileceğine bakıyoruz:
5 Bitlik Opcode alanının hangi değerleri alabileceğini de inceliyoruz, bunlar OpenVPN'e özel değerlerdir, ve openvpn'i tespit etmek için kullanılabilir.
OpenVPN'den yeteri kadar örnek test paketi alıp bunların içerisinde kendini tekrar eden, ve OpenVPN'i tespit etmek için kullanılabilecek daha fazla "fingerprint" elde ettikten sonra bunları otomatik tespit eden bir sistem yazıyoruz, ve tada! VPN kullanımı engellenmiştir!
Bu yöntemi aşmak için genellikle "fingerprint" ile tespit edilemeyecek protokoller kullanmak gerekiyor, veya yeteri kadar boş vaktiniz varsa kendi protokolünüzü de tasarlayabilirsiniz.
FloridaBoy/pwn sundu.
Son düzenleyen: Moderatör: