Modern ameliyathanelerde sterilizasyon bir bütündür; parçalı veya "göz boyayan" bir hijyen tıp etiğinde doğrudan cinayetle eşdeğerdir. Şimdi gözünüzün önüne akıl almaz bir cerrahi gösteri getirin: Cerrah, ameliyathanenin camından kendisini izleyen hasta yakınlarına el sallar. Ellerinde otoklavdan yeni çıkmış steril cerrahi eldivenler, başında steril bone, yüzünde çift katlı cerrahi maske vardır. Dışarıdan bakan aile "Doktorumuz ne kadar titiz, her şey pırıl pırıl" diyerek sevinir.
Fakat camın arkasındaki o ameliyat masasının altına baktığınızda dehşet verici bir manzara görürsünüz: Hastanın açık göğüs kafesine kan pompalayan kalp-akciğer makinesinin hortumları, hastanenin bodrumundaki kanalizasyon borularının içinden geçmektedir! Hortumun ek yerleri sızdırmakta, açık yaranın içine kanalizasyon mikropları dolmaktadır. Cerrahın ellerindeki o steril eldivenin, arkadaki bu pislik karşısında hiçbir koruyuculuğu yoktur; hasta üç gün sonra masif sepsisten can verir. Göz boyayan sterilizasyon, ölümcül bir yalandır.
Web güvenliği ve modern internet mimarisinde her gün milyonlarca web sitesinin kullanıcılarını kandırdığı en büyük dijital vitrin yalanı tam olarak bu eldivenli cerrah illüzyonudur: Cloudflare "Flexible SSL" modu.
Tek Tıkla Gelen Yeşil Kilit: Tembelliğin Zaferi
Bir e-ticaret sitesi, sağlık kliniği veya kurumsal portal... Sitenin sunucusunda geçerli bir SSL sertifikası yoktur; çünkü site sahibi sunucuya Let's Encrypt kurmayı bilmemektedir veya satın almak istememektedir.
Site sahibi Cloudflare hesabı açar. Alan adının DNS kayıtlarını devreye alır. "SSL/TLS" sekmesine tıklar. Karşısına dört seçenek çıkar:
- Off (Kapalı)
- Flexible (Esnek)
- Full (Tam)
- Full (Strict) (Tam ve Katı)
Kullanıcı "Flexible" seçeneğinin açıklamasını okur: "Kök sunucunuzda SSL sertifikası olmasına gerek yoktur. Ziyaretçileriniz sitenizi HTTPS olarak görür."
Kullanıcının gözleri parlar: "Harika bir icat! Sunucuda sertifika kurma zahmetinden kurtuldum, tek tıkla yeşil kilidi aldım!"
Flexible modu seçilir. Tarayıcı açılır: https://sirketadi.com.tr.
Adres çubuğunda o kutsal, asil asma kilit simgesi pırıl pırıl parlamaktadır. Site sahibi göğsünü kabartarak sosyal medyada paylaşır: "Sitemiz 256-bit banka düzeyinde SSL ile şifrelenmiştir!"
Oysa o anda internetin en büyük güvenlik sahtekarlığı sahnelenmektedir.
Perdenin Arkasındaki Çıplak Boru: HTTP Port 80
Flexible SSL modunun arka planda ne yaptığını şematik olarak çizdiğinizde, o kanalizasyon borusuyla karşılaşmak kaçınılmazdır:
[ Ziyaretçi ] ======= (HTTPS: Şifreli / Güvenli) ======> [ Cloudflare ]
|
| (Şifresiz Açık Hat!)
v
[ Kök Sunucu (Origin) ] <--- (Düz HTTP / Port 80: ÇIPLAK METİN) ---+Farkında mısınız?
Ziyaretçinin tarayıcısı ile Cloudflare arasındaki o ilk 10-20 metrelik hat şifrelidir. Tarayıcı yeşil kilidi basar; çünkü Cloudflare'e bağlanmıştır.
Fakat Cloudflare, kullanıcının girdiği kredi kartı bilgilerini, oturum şifrelerini ve kişisel verileri paketleyip sizin Almanya'daki, Fransa'daki veya İstanbul'daki kök sunucunuza aktarırken; tamamen şifresiz, düz metin (Clear-Text HTTP Port 80) üzerinden fırlatır!
İki nokta arasındaki o binlerce kilometrelik uluslararası fiber hatlarda, kıtalararası denizaltı kablolarında, transit internet servis sağlayıcılarının (Türk Telekom, Telia, Cogent) yönlendiricilerinde ve veri merkezinin anahtarlarında (switch) o veri çırılçıplak akar!
Ortadaki Adam (Man-in-the-Middle) ve BGP Hijacking
Bir siber korsan veya istihbarat servisi, kullanıcının evindeki Wi-Fi ağını dinlemek zorunda değildir. Veri merkezinin yerel ağında, aynı kabinetteki bir sunucuda veya transit telekom operatörünün yönlendiricisinde pasif bir ağ dinleme (Network Sniffing / Wireshark) aracı koşturan bir saldırgan; o Cloudflare ile sunucu arasındaki şifresiz hattı izlediğinde şunları açık metin olarak görür:
POST /odeme-tamamla HTTP/1.1
Host: sirketadi.com.tr
Content-Type: application/x-www-form-urlencoded
kart_sahibi=Ahmet+Yilmaz&kart_no=4543123456789012&cvv=412&son_kullanma=12/28Kullanıcı tarayıcısındaki yeşil kilide güvenerek kredi kartını girmiştir; fakat Flexible SSL illüzyonu yüzünden kart bilgileri internetin otobanında megafonla anons edilmiştir!
Üstelik BGP Hijacking veya DNS zehirlemesi yapan bir saldırgan, Cloudflare ile kök sunucu arasına girip web sayfasının içine zararlı JavaScript kodları enjekte edebilir; çünkü o bacakta hiçbir kriptografik bütünlük doğrulaması (integrity check) yoktur!
Cerrahi Güvenlik: Full (Strict) Standardı
Gerçek bir mühendislik ahlakında ve PCI-DSS (Kredi Kartı Güvenlik Standardı) kurallarında "Flexible SSL" bir güvenlik özelliği değil; kabul edilemez bir tasarım hatasıdır. Uçtan uca gerçek bir şifreleme zinciri kurmanın standart protokolü şudur:
- Kök Sunucuya Asla Şifresiz İzin Vermeyin: Kök sunucunuza (Origin Server) mutlaka ücretsiz bir Let's Encrypt sertifikası veya Cloudflare'in sunduğu ücretsiz Origin CA Certificate (15 yıllık kök sertifika) kurun.
- Cloudflare Modunu "Full (Strict)" Yapın:
Cloudflare paneline girin ve modu derhal "Full (Strict)" seviyesine getirin!- Full (Strict) modunun anlamı şudur: Cloudflare, kök sunucunuza bağlanırken mutlaka HTTPS (Port 443) kullanır ve sunucunuzun sunduğu sertifikanın geçerli, güvenilir bir otorite tarafından imzalandığını doğrular. Uçtan uca tek bir bayt bile açık metin olarak akmaz!
- Port 80'i Dış Dünyaya Mühürleyin: Kök sunucunuzun güvenlik duvarında (iptables/CSF) Port 80'i kapatın veya doğrudan Port 443'e yönlendirin. Sunucunuz sadece şifreli bağlantıları kabul etsin.
- Cloudflare Authenticated Origin Pulls (AOP): Sunucunuza sadece ve sadece Cloudflare'in TLS istemci sertifikasıyla gelen bağlantılara yanıt vermesini söyleyen AOP özelliğini açın. Böylece saldırganlar sunucunuzun gerçek IP'sini bulsa bile şifresiz kapıdan içeri sızamaz.
Elindeki steril eldivenle övünüp açık yarayı lağıma bağlayan cerrah nasıl bir tıp sahtekârıysa; Flexible SSL açıp tarayıcıdaki yeşil kilitle övünen yönetici de öyle bir güvenlik körlüğü içindedir. Kriptografi vitrin süsü değildir; uçtan uca, kaynaktan hedefe kadar tek bir halkanın bile kopmadığı kırılmaz bir çelik zincirdir. Zincirin yarısı yoksa, güvenliğin tamamı bir yalandan ibarettir.