Credential Stuffing Saldırılarını Edge'de Durdurmak
tracio.ai, otomatik giriş denemelerini kimlik doğrulama sisteminize ulaşmadan önce nasıl tespit ediyor — device fingerprint, hız kontrolleri ve davranışsal sinyalleri birleştirerek.
Credential stuffing
saldırıları, çalınmış kullanıcı adı ve parola kombinasyonlarını giriş sayfalarına karşı test etmek için otomatik araçlar kullanır. Bu saldırılar devasadır — tek bir operatör, yüzlerce hedef sitede günde milyonlarca kimlik bilgisini test edebilir. Hız sınırlaması ve CAPTCHA gibi geleneksel savunmalar yetersiz kalır, çünkü saldırganlar isteklerini binlerce IP adresine dağıtır ve CAPTCHA çözme hizmetleri kullanır. Credential stuffing'i, istekler kimlik doğrulama sisteminize ulaşmadan önce edge'de nasıl durdurduğumuzu burada anlatıyoruz.
Saldırı Yüzeyi
Tipik bir credential stuffing operasyonu; çalınmış kimlik bilgilerinden oluşan bir listeyi (dark web pazarlarında milyon kayıt başına 10 dolar gibi düşük fiyatlarla bulunabilir), bir otomasyon aracını (genellikle özel bir betik ya da OpenBullet gibi bir araç) ve bir proxy IP havuzunu (IP tabanlı hız sınırlamasını atlatmak için her istekte döndürülen residential proxy'ler) kullanır.
Saldırgan aracını, giriş isteklerini kontrollü bir hızda gönderecek şekilde yapılandırır — basit hız sınırlarını tetiklemeyecek kadar yavaş, ancak saatte binlerce kimlik bilgisini test edecek kadar hızlı. Her istek farklı bir IP adresinden, farklı bir user agent dizesiyle gelir ve bu da onu farklı kullanıcılardan gelen meşru giriş denemeleri akışı gibi gösterir.
Hız Sınırlaması Neden Başarısız Olur
IP tabanlı hız sınırlaması, çoğu ekibin devreye aldığı ilk savunma hattıdır ve başarısız olan ilk hattır. Residential proxy hizmetleri, her istekte döndürülen milyonlarca gerçek IP adresine — ev yönlendiricileri, mobil cihazlar ve IoT cihazları — erişim sağlar. Sunucunun bakış açısından, her giriş denemesi istismar geçmişi olmayan benzersiz bir residential IP'den gelir.
Hesap tabanlı hız sınırlaması (kullanıcı adı başına giriş denemelerini sınırlama) daha etkilidir ancak bir hizmet reddi (denial-of-service) açığı yaratır: bir saldırgan, kullanıcı adlarına karşı kasıtlı olarak birden fazla başarısız giriş denemesi yaparak meşru kullanıcıları kilitleyebilir.
Temel Olarak Device Fingerprinting
Device fingerprinting denklemi değiştirir, çünkü saldırıyı çalıştıran cihazı tanımlar, kullandığı IP'yi değil. Tek bir makinede veya VM çiftliğinde çalışan bir credential stuffing aracı, hangi proxy IP'sinden geçerse geçsin, tüm istekleri boyunca tutarlı bir device fingerprint üretir.
Bot Detection motorumuz, otomasyon araçlarının kendisini tanımlar. Selenium, navigator.webdriver kalıntıları bırakır. Puppeteer ve Playwright'ın belirgin JavaScript çalışma zamanı özellikleri vardır. Headless Chrome'da, headed Chrome'un içerdiği belirli tarayıcı API'leri eksiktir. JavaScript çalıştırmayan özel HTTP istemcileri bile TLS fingerprinting yoluyla tespit edilir — Client Hello mesajları, altta yatan HTTP kütüphanesini açığa çıkarır.
Cihaz Bazlı Hız Takibi
Kararlı bir cihaz tanımlayıcımız olduğunda (Device Identification aracılığıyla), hız kontrollerini IP düzeyinde değil cihaz düzeyinde uygulayabiliriz. Tek bir cihaz 5 dakikada 50 giriş denerse — bu isteklerin kaç farklı IP'den geldiğinden bağımsız olarak — bu kalıp açıkça credential stuffing'dir.
IP Intelligence modülümüz hızı üç zaman penceresinde takip eder: 5 dakika, 1 saat ve 24 saat. Bu çoklu pencere yaklaşımı hem agresif saldırıları (dakikada yüzlerce deneme) hem de yavaş ve sinsi saldırıları (günlerce sürdürülen, saatte birkaç deneme) yakalar.
Davranışsal Sinyal Analizi
Bot tespiti ve hız takibinin ötesinde, Smart Signals analizimiz otomatik saldırıları meşru girişlerden ayıran davranışsal sinyalleri inceler. Gerçek kullanıcılar; istek zamanlaması, yazma hızı ve gezinme kalıplarında doğal bir değişkenlik gösterir. Otomatik araçlar ise mekanik olarak tutarlı zamanlama, birbirinin aynı istek başlıkları ve hiç fare hareketi veya kaydırma olayı olmaması eğilimindedir.
Ayrıca ortam sahteciliğine (spoofing) işaret eden sinyal tutarsızlıklarını kontrol ederiz. macOS'ta Chrome olduğunu iddia eden ancak bir Linux VM ile ilişkili WebGL parametreleri sunan bir tarayıcı anında işaretlenir. TLS fingerprint ile eşleşmeyen bir user agent dizesi bir kurcalama (tampering) uyarısı tetikler.
Edge Dağıtımı
Credential stuffing'i durdurmanın anahtarı, onu kimlik doğrulama sisteminize ulaşmadan önce durdurmaktır. Ajanımız giriş sayfasında yüklenir ve sinyalleri sayfa yüklenirken toplar — kullanıcı (veya bot) kimlik bilgilerini göndermeden önce. Fingerprint ve bot tespiti sonuçları, giriş formu gönderildiği anda hazırdır ve bu da sunucunuzun otomatik denemeleri anında reddetmesine olanak tanır.
Yüksek hacimli hedefler için, fingerprint doğrulamasını CDN edge'inde çalıştıran Cloudflare Worker veya CloudFront Lambda@Edge entegrasyonumuzu dağıtmanızı öneririz. Bu, credential stuffing isteklerinin saldırgana en yakın edge düğümünde engellenmesi ve origin sunucularınıza asla ulaşmaması anlamına gelir.
Sonuçlar
Müşterilerimiz, tracio.ai'yi giriş sayfalarına dağıttıktan sonra credential stuffing hacminde %99'luk bir azalma bildiriyor. Kalan %1, dikkatlice sahtelenmiş sinyallerle tam tarayıcı otomasyonu kullanan son derece sofistike saldırılardan oluşur — bunlar da, hız kalıpları ortaya çıktıkça çok yöntemli tespitimizle ilk birkaç düzine istek içinde yakalanır.