CGNAT Nedir? Bir IP Adresi Neden Bir Kullanıcı Demek Değildir
Carrier-grade NAT, tek bir IP adresinin arkasına binlerce aboneyi yerleştirebilir. IP tabanlı engelleme, rate limiting ve analitikte bunun neyi bozduğunu ve yerine ne yapılması gerektiğini anlatıyoruz.
Kötüye kullanım kurallarının şaşırtıcı bir kısmı, yıllar önce geçerliliğini yitirmiş bir varsayıma dayanıyor: IP adresinin kullanıcıyı tanımladığı fikrine. Carrier-grade NAT, yani CGNAT, bunun artık doğru olmamasının başlıca nedeni.
CGNAT nedir?
IPv4 adresleri tükendi. Mobil operatörler ve birçok sabit internet sağlayıcısı, her abone için kıt ve pahalı adres alanı satın almak yerine müşterilerini ortak bir genel IP havuzunun arkasına yerleştiriyor ve dışarı çıkarken portları çeviriyor. Tek bir genel IP adresi, aynı anda yüzlerce hatta binlerce haneyi ya da mobil cihazı temsil edebiliyor.
Sizin sunucunuz açısından bakıldığında ise tüm bu trafik tek bir istemciden geliyormuş gibi görünür.
Neleri bozar?
Engelleme. Bir brute-force denemesinden sonra IP adresini yasaklarsanız, mobil ağdaki koca bir mahalleyi kapının dışında bırakmış olabilirsiniz. Saldırgan ise yeniden bağlanır, birkaç saniye içinde havuzdan yeni bir adres alır ve devam eder.
Rate limiting. IP başına dakikada 10 istek sınırı, tek bir kişi için cömert sayılabilir; aynı çıkışı paylaşan 2.000 abone içinse gerçek dışı derecede dardır. Yoğun saatlerde meşru kullanıcıları fark etmeden yavaşlatırsınız; çünkü çoğu şikâyet bile etmeden gider.
Atıf ve ilişkilendirme. "Aynı IP’den iki hesap açılmış" bilgisi, bir operatör ağı üzerinde çoklu hesap kullanımına dair zayıf bir kanıttır. Bir ev tipi fiber bağlantıda anlamlı olabilir. CGNAT üzerinde ise çoğu zaman neredeyse hiçbir şey söylemez.
Analitik. Adrese dayalı tekil ziyaretçi sayımı, mobilde olduğundan düşük görünür; adresleri sık döndüren ağlarda ise olduğundan yüksek şişebilir. Üstelik iki hata da panelde kendini açıkça belli etmez.
CGNAT ile karşı karşıya olduğunuzu nasıl anlarsınız?
Şu sinyaller alarm zili çaldırmalı:
- Bağlantı türünün mobile olarak raporlanması ya da ASN’nin bir mobil operatöre ait olması.
- Tek bir adresten çok yüksek çeşitlilikte trafik gelmesi: çok sayıda user agent, çok sayıda hesap, çok sayıda konum/locale.
- Forwarded header’larda paylaşımlı geçiş alanına ait adreslerin (100.64.0.0/10) görünmesi.
Bir IP intelligence sorgusu ilk iki sinyali doğrudan verir. Bu da istek anında politikayı değiştirmek için çoğu zaman yeterlidir.
Bunun yerine ne yapmalı?
- Limitleri ağ sınıfına göre ölçekleyin. Residential bağlantılar için IP başına daha sıkı limit uygulanabilir. Mobile ve business aralıklarında ise IP limiti daha gevşek tutulmalı; bunun yerine hesap ve cihaz bazlı kontroller sıkılaştırılmalıdır.
- Kimliği bir katman aşağı taşıyın. Mümkün olan her yerde rate limiting’i hesap ID’si, oturum ya da cihaz sinyali üzerinden yapın. IP’yi birincil anahtar değil, ikincil sinyal olarak kullanın.
- Blok yerine challenge tercih edin. Challenge, paylaşımlı bir ağı biraz zorlar; blok ise tüm ağı topluca cezalandırır.
- Süreleri kısa tutun. Paylaşımlı bir adresi engellemeniz gerekiyorsa bunu günlerle değil, dakikalarla ölçün. Saldırgan, sizin yasağınız bitmeden çok önce başka yere geçmiş olur.
- Yan etki ölçeğine alarm kurun. Tek bir yasaklama birkaç aktif hesaptan fazlasını etkileyecekse, bu adresin paylaşımlı olduğuna ve bloklamanın yanlış araç olduğuna dair güçlü bir işarettir.
Temel ilke
IP adresi kişinin değil, trafiğin geçtiği yolun özelliğidir. Güçlü bir risk sinyalidir ama kötü bir kimlik tanımlayıcıdır. Bu ayrımı doğru yapan sistemler, yapmayanlara kıyasla çok daha az yanlış pozitif ile çok daha fazla kötüye kullanımı durdurur. Üstelik abone başına adresleme konusunda bir miktar rahatlama sağlayan IPv6 yaygınlaşsa bile, mobil trafik büyümeye devam ettiği sürece bu sorun tamamen ortadan kalkmayacak.
