Tanım
Hız sınırlama, bir istemcinin belirli bir zaman penceresi içinde belirli bir eylemi ne sıklıkta gerçekleştirebileceğine dair üst sınır uygulayan bir trafik yönetimi kontrolüdür. Bir istemci eşiği aştığında, sunucu bir hata yanıtı verir — tipik olarak HTTP 429 Too Many Requests — veya ek istekleri sessizce bırakır.
Hız sınırlama, en eski ve evrensel olarak dağıtılmış web güvenlik kontrollerinden biridir. OWASP (Open Web Application Security Project) bunu brute-force saldırıları, kimlik bilgisi doldurma ve otomatik form kötüye kullanımına karşı birincil savunma olarak önerir. Cloudflare, WAF ürününün bir özelliği olarak hız sınırlama sunar.
Hız Sınırlama Nasıl Çalışır
Bir hız sınırlayıcı, her benzersiz istemci tanımlayıcısı için bir sayaç tutar — en yaygın olarak kaynak IP adresi, ancak bazen bir hesap tanımlayıcısı, bir API anahtarı veya bir oturum çerezi. Bir istek geldiğinde, sunucu o tanımlayıcı için mevcut sayaç değerini kontrol eder. Sayaç eşiğin altındaysa, istek izinli ve sayaç artırılır. Sayaç eşikte veya üzerindeyse, istek 429 yanıtıyla reddedilir.
Yarışma bağlamında yaygın hız sınırlama parametreleri şunları içerir:
- IP başına oy zaman penceresi: En yaygın yapılandırma. Örnek: 24 saatlik pencere başına IP adresi başına 1 oydan fazla değil.
- Yarışma başına hesap başına oy: Kimlik doğrulanmış kullanıcının hesap tanımlayıcısı anahtar olarak kullanılarak uygulama katmanında uygulanır.
- Saat başına IP başına kayıtlar: Bot odaklı hesap çiftliğini yavaşlatmak için hesap oluşturma uç noktasına uygulanır.
Karşılaştığınız Yerler
Hız sınırlama, neredeyse her web platformunda mevcut olan her yerde bulunan bir kontroldür. Yarışma operatörleri bunu en doğrudan üç noktada karşılaşır: oy gönderim uç noktası, hesap kayıt formu ve (e-posta onayı gerekiyorsa) e-posta gönderim hattı.
Son kullanıcılar için, hız sınırlama en görünür şekilde HTTP 429 hatası olarak veya “Zaten oy verdiniz” veya “Lütfen tekrar oy vermeden önce bekleyin” gibi platforma özgü bir mesaj olarak ortaya çıkar.
Pratik Örnekler
Bir gıda blogger ödül yarışması, oylama sistemini 24 saatlik IP başına hız sınırı ile yapılandırır. Yarışmanın son haftası boyunca, bir seçmen aynı yerleşim IP adresinden hızlı bir şekilde 50 oy göndermeye çalışır. İlk oy kabul edilir; sonraki 49 istek bir 429 yanıtı alır.
Yüzlerce eş zamanlı yarışma barındıran bir SaaS yarışma platformu, ağ kenarında Cloudflare’in hız sınırlamasını kullanır. Bir botun dakikada 10.000 istekle bir yarışmayı hedeflemesi, kenarda dakikada 60 isteğin maksimumuna kısıtlanır.
Bir başlangıç şirketinin özel yarışma mikrositesinin OWASP güvenlik incelemesi, e-posta onayı yeniden gönderme uç noktasında hız sınırlamanın olmamasını bir güvenlik açığı olarak tanımlar.
İlgili Kavramlar
Anomali tespiti, hız sınırlamaya daha sofistike bir tamamlayıcıdır: hız sınırlamanın sabit eşikleri uyguladığı yerde, anomali tespiti öğrenilmiş bir davranış temel çizgisinden sapmaları tanımlar. ASN çeşitliliği, hız sınırları IP başına uygulandığında ve kötü bir aktör IP başına eşiklerin altında kalmak için istekleri birçok IP adresine dağıttığında ilgili hale gelir. reCAPTCHA v3, potansiyel olarak otomatikleştirilmiş olarak puanlayan oturumlara seçici olarak daha sıkı sınırlar uygulamak için hız sınırlamayla birleştirilebilen bir davranış risk puanı sağlar.
Sınırlamalar / Uyarılar
IP tabanlı hız sınırlama, tek bir genel IP’nin yüzlerce meşru mobil aboneyi temsil edebildiği carrier-grade NAT olan ortamlarda daha az etkilidir. Bu nedenle, mobil kitleler önemli olduğunda yarışma platformlarında hız sınırlama hesap tabanlı veya çerez tabanlı yinelemeyle katmanlı olmalıdır.