Giriş: Kazıma koruması neden zorunlu bir disiplin haline geldi

On yıl önce kazıma koruması, ancak havayolu şirketlerinin ve büyük pazar yerlerinin uğraştığı egzotik bir konuydu. Bugün ise verisinde en ufak bir değer barındıran her projenin rutin görevi: fiyatlar, stoklar, ilanlar, yorumlar, iletişim bilgileri, metinler. Son yıllardaki büyük sektör raporlarının tahminlerine göre, otomatik trafik internetteki toplam trafiğin yarısına iyice yaklaştı ve açıkça kötü niyetli botların oranı üçte biri aştı. Yani ortalama bir siteye gelen her üç istekten biri insandan ve iyi niyetten gelmiyor.

Bu konu özellikle mobil proxy'ler, otomasyon ve veriyle çalışan kitle için neden önemli? Çünkü savunmanın mantığını anlamak masanın her iki tarafında da işe yarar. İşletme sahibi kendi kataloğunu ve kullanıcı tabanını korur. Geliştirici, rakipler için ücretsiz bir vitrine dönüşmemesi gereken bir API tasarlar. Pazarlamacı ve arbitrajcı her gün antibot sistemleriyle karşılaşır ve kendi reklam kampanyalarının meşru izlemesinin neden bir anda captcha'ya takıldığını anlamak ister. Savunmanın mekaniğini anlamadan ne kendi servislerinizi düzgün kurabilir ne de başkalarının risklerini doğru değerlendirebilirsiniz.

Çerçeveyi hemen çizelim. Bu makale savunan tarafın bakış açısıyla yazıldı. Sitelerin otomatik veri toplamayı nasıl tespit edip sınırladığını, hangi savunma katmanlarının var olduğunu, bunların nasıl etkileştiğini ve bir güvenlik mimarının gözünden her birinin zayıf noktalarının nerede olduğunu inceleyeceğiz. Burada kimsenin savunmasını aşmaya yönelik talimatlar olmayacak: blogun ilgili diğer içerikleri başka konulara ayrılmıştır ve biz bilinçli olarak bu sınırda kalıyoruz.

Okuduktan sonra ne elde edeceksiniz? Herhangi bir projeye uygulayabileceğiniz dokuz katmanlı bütünsel bir savunma modeli. Her seviye için adım adım uygulama kontrol listeleri. Pahalı kazıma korumasını gerçek kullanıcılar için sorun kaynağına dönüştüren tipik hataların analizi. Araçlara genel bakış, rakamlarla anonimleştirilmiş vakalar ve mimari incelemelerde en sık sorulan soruların yanıtları. Rahatınıza bakın: materyal geniş ama tekrar tekrar döneceğiniz bir yer imi olarak tasarlandı.

Temeller: Savunan açısından kazıma nedir

Üç trafik sınıfı

Sunucuya gelen her istek üç kategoriden birine girer. Birincisi gerçek kullanıcılar: sitenin var olma sebebi olan tarayıcılı insanlar. İkincisi faydalı botlar: arama motoru tarayıcıları, erişilebilirlik izleme servisleri, ödeme sistemleri, anlaşmanız olan toplayıcılar. Üçüncüsü istenmeyen otomasyon: rakip kazıyıcıları, iletişim bilgisi toplayıcıları, şifre deneme botları, ürün kapma scriptleri ve son zamanlarda sahibinin onayı olmadan dil modellerinin eğitimi için veri toplayan tarayıcılar.

Kazıma korumasını tek bir cümleye indirgersek, üçüncü kategoriyi ilk ikisinden, gerçek insanlara zarar vermeden ayırma sanatıdır. Kulağa basit geliyor. Pratikte bu, uygulamalı güvenliğin en zor görevlerinden biridir, çünkü iyi yazılmış bir kazıyıcı tam olarak sıradan bir ziyaretçi gibi görünmeye çalışır.

Neden savunmalıyız

Savunma motivasyonları çeşitlidir ve araç seçimi buna bağlıdır. Başlıcalarını sıralayalım.

  • Altyapı yükü. Agresif bir kazıyıcı, tüm gerçek kitle bir günde üretebileceğinden daha fazla istek üretebilir. Bu trafik parası, hesaplama kaynağı parası ve gerçek müşteriler için hız düşüşü demektir.
  • Rekabet istihbaratı. Fiyat ve stokların toplu toplanması, rakibin otomatik olarak bir kuruş altına inmesini sağlar. Perakende için bu doğrudan marj kaybıdır.
  • Kişisel veriler. İlan panolarından veya kullanıcı profillerinden telefon, isim ve adres toplanması, platform sahibi için kişisel veri mevzuatı riskleri ve itibar kaybı yaratır.
  • Varlık olarak içerik. Metinler, fotoğraflar, açıklamalar, yorumlar bir yatırımın sonucudur. Bunların toplu kopyalanması emeği değersizleştirir ve aramadaki konumu zayıflatır.
  • İş mantığının bütünlüğü. Kıt ürünleri kapatan veya slot ayıran botlar, alıcılar arasındaki adil rekabeti bozar ve memnuniyetsizlik dalgası yaratır.

Ana ilke: aşılmazlık değil, ekonomi

Burada ezberlenmesi gereken bir fikre geliyoruz. Kazımaya karşı mutlak koruma yoktur. Tarayıcının gördüğü her şeyi, yeterince inatçı bir script de sonunda görebilir. Savunmanın amacı veri toplamayı imkânsız kılmak değil, onu elde edilen verinin değerinden daha pahalı hale getirmektir. Rakip altyapı ve geliştirmeye, sizin fiyatlarınızdan kazandığından fazlasını harcıyorsa durur. Bu saf ekonomidir.

Bu ilkeden ikincisi çıkar: yanlış pozitiflerin maliyeti, kaçırılan botların maliyetinden daha önemlidir. Engellenen bir kazıyıcı kaybedilmiş bir rakiptir. Engellenen bir gerçek alıcı ise kaybedilmiş ciro ve olumsuz bir yorumdur. İyi bir savunma sistemi her zaman bu iki hata arasında denge kurar ve ikisini de ölçer.

Vazgeçilmez temel terimler

  • Rate limiting — bir kaynaktan birim zaman başına istek sayısının sınırlanması.
  • Parmak izi (fingerprint) — istemciyi açık bir kimlik olmadan tanımayı sağlayan özellikler kümesi: TLS bağlantı parametreleri, başlıklar, tarayıcı özellikleri.
  • Challenge (meydan okuma) — istemcinin yanıtı almadan önce yerine getirmesi gereken görev: captcha, JavaScript hesaplaması, iş kanıtı.
  • Skorlama — oturumun şüphelilik düzeyinin birikimli değerlendirmesi ve buna dayalı karar.
  • Honeypot (tuzak) — insan için görünmez ama otomasyon için fark edilir öğe; ona başvurmak botu ele verir.
  • WAF — istekleri kural ve imzalara göre filtreleyen uygulama katmanı güvenlik duvarı.

Derinlemesine bakış: Dokuz katman modeli ve neden katmanlar

Ortaçağ kalesi benzetmesi

Bir kale düşünün. Hendek, dış duvar, muhafızlı kapı, iç avlu, ana kule ve gözetleme kuleleri vardır. Tek bir tahkimat tek başına güvenliği garanti etmez. Ama her bir sonraki, saldırganı zaman harcamaya zorlar ve zaman, savunanların saldırıyı fark edip tepki vermesi için bir şanstır. Modern kazıma koruması tam olarak böyle çalışır: her katmanın otomasyonun bir kısmını kestiği ve bir katmandan gelen verinin diğerinin kararlarını zenginleştirdiği kademeli bir savunmadır.

Dokuz savunma katmanı

  1. Yasal ve organizasyonel çevre — kullanıcı sözleşmesi, robots.txt, veri tabanının yasal koruması, otomatik erişime ilişkin politika.
  2. Ağ katmanı — istek hızı limitleri, IP ve otonom sistem itibarı, coğrafi filtreler, dağıtık saldırılara karşı koruma.
  3. Protokol katmanı — HTTP başlıklarının, sıralarının ve tutarlılığının analizi, TLS ve HTTP/2 parmak izleri.
  4. Tarayıcı katmanı — JavaScript çalışma ortamı kontrolleri, grafik alt sistemi ve yazı tipi parmak izleri, otomatik tarayıcıların tespiti.
  5. Davranışsal katman — imleç hareketi, gezinme hızı, geçiş sırası, normal davranışın istatistiksel modelleri.
  6. Aktif doğrulama katmanı — captcha'lar, görünmez meydan okumalar, iş kanıtı, şüphelilik arttıkça kademeli zorlaştırma.
  7. Uygulama katmanı — veri mimarisi, imzalı tokenlar, dinamik biçimlendirme, bilgi dozajlama, API koruması.
  8. Tuzak ve işaretleme katmanı — honeypot öğeleri, kanarya kayıtları, verilerdeki filigranlar, botlar için kontrollü yanlış bilgi.
  9. İzleme ve müdahale katmanı — kayıt tutma, anomali tespiti, panolar, müdahale oyun kitapları, sürekli kural uyarlaması.

Sıralamaya dikkat edin. İlk iki katman en ucuz ve en kabadır. Üçüncüden altıncıya kadar olan katmanlar uzmanlık ve kaliteli sinyaller gerektirir. Yedinci ve sekizinci artık ürün mimarisi meselesidir. Dokuzuncu ise diğerlerinin tamamına nüfuz eder: izleme olmadan her savunma kördür.

Evrim: adresten davranışa

Son yılların en önemli kayması, IP adresinin sinyal olarak değersizleşmesidir. Veri merkezi proxy'leri çağında, hosting sağlayıcılarının alt ağlarını engellemek yeterliydi ve kazıyıcıların çoğu düşerdi. Ama sonra yerleşik ve mobil IP adresleri yaygınlaştı. Savunan açısından bu temel bir sorun yarattı: operatör NAT'ı üzerinden tek bir mobil IP'de aynı anda yüzlerce ve binlerce gerçek abone oturabilir. Böyle bir adresi engellemek, şehrin bütün bir mahallesini kesmek demektir. Mobil proxy'lerle çalışan kitle bu özelliği herkesten iyi bilir: mobil IP'nin itibarı tanımı gereği yüksektir, çünkü gerçek insanlara aittir.

Peki iyi bir savunmacı bu koşullarda ne yapar? IP'yi kararın temeli saymayı bırakır ve ağırlık merkezini üçüncüden beşinciye kadar olan katmanlara taşır: istemci bağlantıyı tam olarak nasıl kuruyor, JavaScript'i ne çalıştırıyor ve oturum zaman içinde nasıl davranıyor. Adres, baş yargıç rolünden çıkıp onlarca özellikten biri, mütevazı ağırlıklı bir gösterge olur.

2026 trendleri savunmacının gözünden

Şu sıralar gündemi birkaç süreç belirliyor. Birincisi, dil modellerinin eğitimi ve işletimi için kullanılan crawler'ların patlayıcı büyümesi. Medya ve içerik projeleri, verilerinin endüstriyel ölçekte sızdığı gerçeğiyle ilk kez yüzleşti ve geleneksel robots.txt'i herkes uygulamıyor. Yanıt olarak, istemci tarafında gerçek hesaplama gerektiren kontroller ve crawler'lar için ücretli erişim modelleri geldi.

İkincisi, agentic tarayıcılar ortaya çıkıyor: kullanıcı adına siteleri gezen, ürünleri karşılaştıran ve formları dolduran yapay zekâ asistanları. Bu yeni tür bir trafik — otomatik ama gerçek bir insanın çıkarına hareket ediyor. Sektör, bu tür ajanlardan gelen isteklerin kriptografik imzasına ilişkin standartları tartışıyor; böylece site iyi niyetli ajanı anonim bir scriptten ayırabilecek. Kazıma koruması ikili değil, siyasi bir hal alıyor: hangi ajanlara ve hangi koşullarda erişim izin veriyorsunuz.

Üçüncüsü, protokol parmak izleri evrimleşiyor. Klasik TLS parmak izinin yerini, genişletmeleri sıradan bağımsız biçimde dikkate alan daha dayanıklı şemalar ve HTTP/2 ile HTTP/3 düzeyindeki parmak izleri aldı. Dördüncüsü, makine öğrenmesi kesinlikle norm haline geldi: elle yazılan kurallar artık milyonlarca oturumda öğrenen modelleri yalnızca tamamlıyor.

Birinci ve ikinci katman: yasal çevre ve ağ filtresi

Birinci katman: önce oyunun kurallarını ilan edin

Birçok geliştirici bu seviyeyi "kâğıt üstünde" diye atlar ve bu bir hatadır. Yasal çevre, tüm teknik önlemlerin ve sonraki tüm itirazların dayandığı temeldir. Üç sorunu çözer: neyin izinli olduğunu şeffaf biçimde ilan eder, kısıtlamalar için zemin oluşturur ve verilerinizin korunan bir varlık olarak değerini kayda geçirir.

Pratik uygulama birkaç unsurdan oluşur. Kullanıcı sözleşmesiyle başlayalım. İçinde otomatik erişime dair ayrı bir bölüm olmalı: neyin kabul edilebilir sayıldığı, hangi senaryoların yasak olduğu, ihlalde hangi sonuçların doğacağı. İfadeleri bir avukatla kararlaştırmakta fayda var ama anlam basit — kuralları biri onları çiğnemeden önce ilan ediyorsunuz.

Sonra robots.txt. Bu bir koruma mekanizması değil, niyet beyanıdır. İyi niyetli crawler'lar buna uyar, kötü niyetliler uymaz. Ama bu dosyada yasaklanan bölümlerin adlandırılmasının sekizinci katman için pratik bir anlamı da vardır: robots.txt'de açıkça kapatılmış bir bölüme başvurmak, istemcinin iyi niyetli bir bot olmadığına dair güçlü bir işarettir.

Üçüncü unsur — veri tabanının bağlantılı haklar kapsamında korunması. Türk hukukunda, oluşturulması önemli ölçüde yatırım gerektiren veri tabanı yapımcısına, materyallerin çıkarılması ve yeniden kullanımı üzerinde belirli haklar tanınır. Bu hakkı gerçekten kullanmak için veri toplama ve yapılandırmaya yapılan yatırımı belgelemek, oluşturma ve güncelleme tarihlerini kaydetmek ve hak sahibini sayfalarda belirtmek gerekir.

Dördüncü unsur — partner erişimi politikası. Verileriniz gerçekten ilgi çekiyorsa, yasal bir yol bırakın: anahtarlar, tarifeler ve limitlerle resmî API. İşin garibi, açık bir ücretli kanal istenmeyen kazıma hacmini azaltır: veriye iş için ihtiyaç duyanlar, sizin savunmanızla savaşmaktansa ödeme yapmayı daha kolay bulur.

Birinci katman kontrol listesi

  • Sözleşmede net kriterlerle otomatik erişim bölümü var.
  • robots.txt güncel, kapatılan bölümler sitenin gerçek yapısıyla örtüşüyor.
  • Veri tabanının oluşturulma maliyeti belgelenmiş, hak sahibi belirtilmiş.
  • Partner erişimi talepleri için bir iletişim kanalı var.
  • Hangi veri kategorilerinin kritik, hangilerinin serbestçe verilebileceği tanımlanmış.

İkinci katman: ilk duvar olarak ağ filtresi

Ağ katmanı, istek uygulamaya ulaşmadan çalışır ve bu yüzden çok ekonomiktir. Araçları kabadır ama özensiz otomasyona karşı etkilidir ve özensiz otomasyon hâlâ çoğunluktadır.

İstek hızı sınırlaması — temel mekanizma. Sadece IP'ye göre limit koymanın yeterli olmadığını anlamak önemlidir. Modern sistemler birkaç paralel sayaç kullanır: adrese göre, alt ağa göre, oturum kimliğine göre, yetkili hesaba göre, istemci parmak izine göre. Limitler farklı kaynak türleri için farklı olmalıdır: filtreli katalog sayfası ile ana sayfa temelde farklı maliyete ve farklı normal ziyaret sıklığına sahiptir.

Eşikler nasıl seçilir? Tek dürüst yanıt — verilerden. Birkaç haftalık logları alın, gerçek kullanıcılar için oturum başına istek sayısı dağılımını çıkarın ve 99. yüzdeliğe bakın. Bu değerin üstüne pay bırakarak konulan eşik, insanlara neredeyse dokunmaz ama kataloğu bir saatte indirmeye çalışan scriptleri keser.

IP ve otonom sistem itibarı. Bulut sağlayıcılarından ve hostinglerden gelen istekler, perakende alıcıya yönelmiş bir site için varsayılan olarak şüphelidir: gerçek insanlar nadiren veri merkezlerinden internete girer. Ama burada dikkatli olmak gerekir: bazı şirketlerin kurumsal VPN geçitleri, bazı mobil operatörler ve halka açık erişim noktaları tipik görünmeyebilir. Bu yüzden itibar otomatik engelleme değil, şüpheli ağırlığının artırılmasıdır.

Coğrafi kurallar. İşiniz tek bir ülkede çalışıyorsa, müşterinizin olmadığı bölgelerden gelen trafik en azından artırılmış dikkati hak eder. Tamamen yasaklamak nadiren iyi bir fikirdir: iş seyahatleri, taşınanlar ve ortaklar vardır. Daha mantıklısı, bu ziyaretçilere sonraki katmanlarda daha sıkı kontroller göstermektir.

Dağıtık saldırılara karşı koruma. Binlerce adresten gelen agresif kazıma, dış belirtiler açısından uygulama düzeyinde bir DDoS saldırısından ayırt edilemez. Özel trafik filtreleme servisleri bu dalgaları sunucunuza ulaşmadan kendi altyapılarında söndürebilir. Keskin trafik dalgalanmaları görüyorsanız ilk bağlanması gereken şey budur.

Ağ katmanının adım adım uygulanması

  1. 2-4 haftalık normal davranış istatistiklerini toplayın: oturum, IP ve hesap başına istekler, bölümlere göre dağılım.
  2. "Pahalı" giriş noktalarını belirleyin: arama, katalog filtreleri, ürün kartları, iletişim bilgisi çıkışı.
  3. Çok düzeyli limitler kurun: yumuşak (yanıtı yavaşlatma), orta (meydan okuma), sert (geçici engelleme).
  4. Bilinen faydalı botlar için, kimlikleri doğrulandıktan sonra ayrı ve daha esnek kurallar ayarlayın.
  5. Tetiklenmeler için uyarıları açın ve limitlerin kimi etkilediğini her gün kontrol edin.

Ağ katmanıyla ilgili hatırlanması gereken en önemli şey: bu kaba temizleme filtresidir. Kaynak tasarrufu sağlar ama tek savunma hattı olmamalıdır. Dağıtık mobil adreslerden ve insan sıklığında isteklerle gelen özenli otomasyona karşı neredeyse güçsüzdür ve bu normaldir: bunun için sonraki katmanlar var.

Üçüncü ve dördüncü katman: protokol ve tarayıcı parmak izleri

Üçüncü katman: istemci sunucuyla nasıl konuşuyor

Burada gerçekten ilginç mühendislik başlıyor. Fikir basit ve zarif: istemci kendisi hakkında tek kelime etmeden önce, bağlantı kurma tarzıyla birçok şey anlatır. Yetişkin gibi tanışan ama yürüyüşünden ele veren bir çocuk gibi.

TLS parmak izi. Güvenli bağlantı kurulurken istemci, desteklediği protokol sürümleri, şifre paketleri, genişletmeler ve eğriler listesini içeren bir merhaba gönderir. Her TLS yığını uygulaması — belirli bir tarayıcı sürümü, sistem kütüphanesi, dile ait HTTP istemcisi — bu merhabayı kendine göre oluşturur. Bu parametrelerin özetlenmesi kompakt bir parmak izi verir. Klasik şema genişletme sırasını dikkate alır; yeni şemalar onu yeniden sıralamalara karşı duyarsız hale getirir ve randomizasyona karşı dayanıklılığı artırır.

Bu kazıma korumasında nasıl kullanılır? Sunucu, başlıklarda beyan edilen tarayıcıyı gerçek TLS parmak iziyle karşılaştırır. İstek Windows'ta taze Chrome'dan geldiğini iddia ediyor ama el sıkışma popüler bir Python kütüphanesine özgüyse — uyumsuzluk ortadadır. Bu, tek satır JavaScript olmadan erişilebilen en güçlü sinyallerden biridir.

HTTP/2 ve HTTP/3 parmak izi. Benzer şekilde: bağlantı ayarları parametreleri, pencere boyutu, akış öncelikleri, sözde başlıkların sırası uygulamalar arasında farklılık gösterir. Tarayıcılar öngörülebilir davranır ve bu davranıştan sapma standart dışı istemci işaretidir.

Başlık tutarlılığı. Gerçek tarayıcılar belirli bir başlık kümesini belirli bir sırayla, kabul edilen içerik türleri, diller, kodlamalar için somut değerlerle ve platform hakkında istemci ipuçlarıyla gönderir. Kazıyıcılar çoğu zaman ya eksik küme ya eski tarayıcı sürümlerinden bir küme ya da içten çelişkili kombinasyonlar gönderir: örneğin masaüstü platform ipuçlarıyla mobil tanımlayıcı.

Üçüncü katman pratiği

  1. Ağ sınırında TLS parmak izi ve HTTP/2 parmak izi toplamayı açın — modern yük dengeleyicilerin ve CDN'lerin çoğu bunu yapabilir.
  2. "Beyan edilen tarayıcı — beklenen parmak izleri" tablosunu referans kitaplardan değil gerçek trafikten oluşturun.
  3. Uyumsuzlukları şüpheli artırıcı olarak değerlendirin ama tek özellik yüzünden engellemeyin: uygulamalar her tarayıcı sürümünde değişir.
  4. Popüler tarayıcıların her büyük güncellemesinde eş referansları güncelleyin, yoksa gerçek kullanıcıları cezalandırmaya başlarsınız.
  5. Parmak izlerini diğer sinyallerle birlikte kaydedin: sekizinci ve dokuzuncu katmanlar için paha biçilmezdir.

Dördüncü katman: tarayıcının içinde neler oluyor

Protokol katmanı istemciye dışarıdan bakıyorsa, tarayıcı katmanı içeriye bakar. Sunucu, çalışma ortamını inceleyen ve sonuçları geri gönderen JavaScript verir. Bu en bilgilendirici ve aynı zamanda en kırılgan katmandır.

Ortam varlığı kontrolü. En basit test: sayfa bir script çalıştırmayı ve token döndürmeyi gerektirir. JavaScript çalıştırmayan istemciler hemen elenir. 2026'da bu artık her şeyi elemez ama hâlâ ilkel otomasyonun gözle görülür bir kısmını eler.

Grafik ve yazı tipi parmak izleri. Gizli bir görüntünün oluşturulması, ekran kartına, sürücülere, işletim sistemine ve tarayıcı sürümüne bağlı bir sonuç verir. Yüklü yazı tipleri kümesi, ses alt sistemi parametreleri, ekran çözünürlüğü, renk derinliği, saat dilimi, dil listesi — tüm bunlar istemciyi oturumlar arası tanımayı ve iç çelişkileri ortaya çıkarmayı sağlayan bir parmak izi oluşturur.

Otomatik tarayıcı belirtileri. Framework'lerle yönetilen tarayıcılar iz bırakır: navigator'daki özel özellikler, beklenen eklentilerin eksikliği, çerçevesiz olağan dışı pencere boyutları, normal tarayıcıda farklı davranacak çağrıların anormal sonuçları. Ayrı bir kategori ise beyan edilen ile gerçek arasındaki çelişkilerdir: mobil tarayıcı beyan edilmiş ama dokunma olayı desteği yok; macOS beyan edilmiş ama yazı tipi kümesi tipik olarak Linux'vari.

Script bütünlüğü. İyi bir uygulama kontrol kodunu sürekli değiştirir: obfuscate eder, yeniden adlandırır, token oluşturma algoritmasını döndürür. Amaç, kontrolü bir kez söküp gerçek tarayıcı olmadan yanıtı yeniden üretmeyi imkânsız kılmaktır. Bu bir yarıştır ve asla bitmez, bu yüzden rotasyonu otomatikleştirmek gerekir.

Tarayıcı katmanı kontrol listesi

  • Değerli bölümlere erişim için JavaScript yürütme zorunluluğu.
  • Tutarlılık kontrolüyle grafik, yazı tipi, ses ve ekran parametrelerinin toplanması.
  • Düzenli güncellenen otomasyon belirtisi dedektörleri.
  • Kontrol scriptlerinin zamanlanmış rotasyonu ve obfuscation'ı.
  • Mutlaka: script hatasının gerçek kullanıcı deneyimini bozmadığı, yalnızca skorunu artırdığı bir bozulma modu.

Dördüncü katmanın en önemli dersi: parmak izleri olasılıksal bir sinyaldir. Aynı partiden aynı dizüstüne sahip iki gerçek kullanıcı neredeyse aynı parmak izini verir. Tarayıcısını güncelleyen bir gerçek kullanıcı yeni bir parmak izi alır. Bu yüzden parmak izi, pasaport olarak değil oturumları ilişkilendirmek ve çelişkileri ortaya çıkarmak için kullanılır.

Beşinci ve altıncı katman: davranış ve aktif doğrulamalar

Beşinci katman: insanlar insan gibi davranır

Modern kazıma korumasının gerçek gücü burada saklıdır. Başlıkları mükemmel taklit edebilir, tarayıcı el sıkışmasını kopyalayabilir, gerçek Chrome çalıştırabilirsiniz — ama aynı anda tüm boyutlarda sonsuza kadar insan gibi davranamazsınız. Davranışsal analiz tam olarak bu imkânsızlığı yakalar.

Sayfa içi mikro davranış. İnsanda imleç hareketi hızlanma ve yavaşlamalı, mikro titremeli, yörünge düzeltmeli eğrilerdir. Kaydırma düzensizdir: insan okur, durur, geri döner. Tıklamalar öğenin geometrik merkezinde gerçekleşmez. Metin girişi tuş vuruşları arasında karakteristik aralıklara ve yazım hatalarına sahiptir. Bu kalıplardan her bir sapma tek başına zararsızdır ama toplamları bir tablo oluşturur.

Oturumun makro davranışı. İnsan ana sayfaya gelir, arar, birkaç kart açar, geri döner, karşılaştırır. Kazıyıcı kimlikleri sırayla gezer, her kartı tam bir kez açar, hiç resimlere bakmaz, yazı tiplerini yüklemez, görev açısından anlamsız hiçbir eylem yapmaz. HTML ve sayfa kaynaklarına yönelik isteklerin oranı, gezinme derinliği, sayfada kalma süresi, iç bağlantılarla geçişlerin varlığı — tüm bunlar insanları ve scriptleri istatistiksel olarak ayırır.

Zaman kalıpları. İnsanlar uyur. Gerçek bir kullanıcının trafiği günlük ve haftalık mevsimsellik, öğle molaları, akşam zirveleri gösterir. Yirmi saat boyunca eşit aralıklarla çalışan bir oturum, her isteği kusursuz olsa bile insan değildir.

Verdict yerine skorlama. Beşinci katmanın kilit mimari fikri birikimli değerlendirmedir. Her sinyal puan ekler ya da çıkarır. Oturum eşiğin altındayken özgürdür. Eşiğe yaklaşınca altıncı katman devreye girer. Aşıldığında kısıtlamalar başlar. Bu, tek bir belirtiye dayanarak kaba karar vermemeyi ve aynı zamanda belirgin anormalliklere hızla tepki vermeyi sağlar.

Makine öğrenmesi. Büyük trafik hacimlerinde elle yazılan kurallar modellere yenilir. Model, insan ve otomatik olarak etiketlenmiş oturumlarda öğrenir ve bir olasılık üretir. Etiketlemenin nereden geldiği önemlidir: doğrulanmış satın alımlar ve geçilmiş captcha'lar insan davranışı örnekleridir; sekizinci katman tuzaklarına düşmeler otomasyon örnekleridir. Böylece katmanlar birbirini besler.

Davranışsal skorlama oluşturma çerçevesi

  1. Oturumun on-on beş ölçülebilir davranış metriğini tanımlayın: dakikada istek, kaynak isteklerinin payı, gezinme derinliği, sayfada ortalama süre, aralıkların değişkenliği, giriş olaylarının varlığı.
  2. Her metrik için insan olduğu doğrulanmış oturumlara göre dağılım oluşturun.
  3. Ağırlıkları atayın: 95. ve 99. yüzdelik dışına çıkmanın kaç puan eklediğini belirleyin.
  4. Üç eşik belirleyin: gözlem, meydan okuma, kısıtlama.
  5. Haftada bir kararları olgularla karşılaştırın: kısıtlama alan oturumların kaçı satın alma veya desteğe başvuruyla sonuçlandı. Bu, yanlış pozitif metriğinizdir.

Altıncı katman: aktif doğrulamalar bir müzakere olarak

Aktif doğrulama, sitenin istemciye açıkça "kanıtla" dediği andır. Birçok projenin hatası captcha'yı savunma sanmaktır. Captcha, her ziyaretçiye değil şüpheli oturumlara uygulanan bir tırmandırma aracıdır. Herkese captcha göstermek, bot oranı için yüzde yüz insanı cezalandırmak demektir.

Klasik görsel captcha. Bozuk metin tanıma veya resim seçme. Bilgisayarlı görünün gelişmesiyle hedefli saldırılara karşı etkinliği düştü ama kullanıcı rahatsızlığı kaldı. Makul kullanım — yalnızca en hassas eylemlerde ve yalnızca yüksek şüpheli skorda.

Görünmez doğrulamalar. Modern standart. İstemci arka planda yürütülen bir JavaScript görevleri kümesi alır: ortam özelliklerinin ölçümü, davranışsal sinyaller, küçük hesaplamalar. İnsan hiçbir şey fark etmez, otomasyon kaynak harcar veya düşer. Kullanıcı için bu yalnızca bir onay işareti gösteren bir widget'tır. Türk ve yabancı sağlayıcılar bu tür çözümleri hazır servis olarak sunar.

İş kanıtı. İstemci, maliyeti sunucu tarafından ayarlanan bir hesaplama görevini çözmelidir. Bir insan için bu, saniyenin çok küçük bir kısmı kadar işlemci zamanıdır. Milyonlarca sayfayı işleyen bir kazıyıcı için bu önemli bir gidere dönüşür. Bu yaklaşım, dil modelleri için crawler'ların büyümesiyle belirgin biçimde popülerleşti: kullanıcıdan eylem gerektirmez ve doğrudan toplu toplamanın ekonomisine vurur.

Kademeli tırmandırma. İyi bir şema şöyle görünür: düşük şüphede — hiçbir şey; ortada — görünmez doğrulama; yüksekte — artırılmış zorlukta iş kanıtı veya etkileşimli captcha; kritikte — yetkilendirme yoluyla geri kazanım imkânı sunan geçici kısıtlama. Her kademe insana anlaşılır bir çıkış yolu bırakmalıdır.

Aktif doğrulama katmanı kontrol listesi

  • Doğrulamalar herkese gösterilmek yerine skorlamaya bağlıdır.
  • Görme ve motor engeli olan insanlar için erişilebilir alternatifler vardır.
  • İş kanıtının zorluğu yüke bağlı olarak dinamik ayarlanır.
  • Doğrulamada oturumu bırakan kullanıcı oranı ölçülür.
  • Doğrulama sağlayıcısı, veri yerelleştirme gereksinimleri ve bölgenizdeki erişilebilirlik dikkate alınarak seçilir.

Sık sık gözden kaçan bir düşünce daha. İnsanın geçtiği her doğrulama, beşinci katmanın eğitimi için etiketli bir örnektir. Başarısız olan da öyle. Altıncı katman yalnızca filtrelemez, sistemi de öğretir.

Yedinci, sekizinci ve dokuzuncu katman: veri mimarisi, tuzaklar ve izleme

Yedinci katman: verileri mimariyle koruyun

Buraya kadar botu nasıl tanıyacağımıza baktık. Yedinci katman başka bir soruyu yanıtlar: siteyi, tanınmayan bir bot bile daha az değer elde edecek şekilde nasıl kurmalıyız? Bu, kazıma korumasının en az değer verilen kısmıdır çünkü ürün düzeyinde kararlar gerektirir, yalnızca güvenlik değil.

Bilgi dozajlama. Her şeyi birden vermeyin. Fiyat ve stoklarla dolu tam katalog tek sayfada kazıyıcı için bir hediyedir. Sınırlı derinlikte sayfalara bölme, ayrıntıları kullanıcı eylemiyle yükleme, iletişim bilgilerini yalnızca yetkilendirme veya açık tıklamadan sonra gösterme — hepsi normal senaryoya zarar vermeden toplama maliyetini ciddi biçimde artırır.

İç API'ye imzalı istekler. Ön yüz veriyi iç API'den alıyorsa, her istek oturuma, zamana ve tercihen istemci parmak izine bağlı kısa ömürlü bir token taşımalıdır. Token yalnızca önceki katmanların kontrolleri geçildikten sonra verilir. O zaman ön yüzü atlayarak API'ye doğrudan başvurmak imkânsız hale gelir ve ele geçirilen token'ın yeniden kullanılması işe yaramaz.

Dinamik biçimlendirme. Kazıyıcılar sabit seçicilere dayanır: sınıflar, kimlikler, ağaç yapısı. Derleme aşamasında sınıf adlarını düzenli değiştirmek, blok yapısını çeşitlendirmek, özellik sırasını karıştırmak tarayıcıya zarar vermez ama sert yazılmış scriptleri kırar. Deneyimli bir geliştiriciyi durdurmaz ama onu bakım yapmaya zorlar — ve zaman, ondan aldığımız para birimidir.

En değerliyi korumak. Kritik parçalar için — fiyatlar, telefonlar, benzersiz kimlikler — ek önlemler uygundur: grafik tuvale çizim, kontrolden sonra JavaScript ile yerleştirme, değeri istemcide birleştirilen parçalara bölme. Buradaki ödün açıktır: erişilebilirlik ve dizine ekleme zarar görür, bu yüzden bu tür yöntemler noktasal uygulanmalıdır.

Basınç tahliye kanalı olarak resmî API. Bunu birinci katmanda söylemiştik, teknik açıdan tekrarlayalım: anahtarlar, kotalar ve tarifelerle halka açık API, istenmeyen kazımanın bir kısmını kontrol edilebilir ve hatta kârlı trafiğe dönüştürür. Verileriniz piyasa için nesnel olarak gerekliyse, onları savaşarak bedava vermektense kendi kurallarınızla satmak daha iyidir.

Sekizinci katman: tuzaklar ve işaretleme

Sekizinci katman, deneyimli savunmacıların favorisidir çünkü savunmayı istihbarata dönüştürür. Saldırıları yalnızca püskürtmek yerine saldırganı kendini ele vermeye ve iz bırakmaya zorlarız.

Honeypot öğeleri. Sayfaya insan için görünmeyen bağlantılar ve form alanları eklenir: stillerle gizlenmiş, ekran dışına taşınmış, şeffaf. İnsan onları görmez ve dokunmaz. Sayfadaki tüm bağlantıları toplayan veya tüm form alanlarını dolduran script mutlaka onlara basar. Tuzağa başvuru neredeyse yüzde yüz otomasyon sinyalidir ve oturum skorunu anında kritik düzeye çıkarır.

Kanarya kayıtları. Veri tabanına var olmayan nesneler eklenir: olmayan bir ürün, benzersiz hayali numaralı bir ilan, özel kimlikli bir sayfa. Bu nesne başka bir sitede görünürse — tam olarak sizin veri tabanınızın kopyalandığına dair kanıtınız olur. Bu hem hukuki bir argüman hem de verilerinizi kimin ve ne sıklıkla topladığını anlama yoludur.

Verilerde filigranlar. Açıklama metinlerinde ince varyasyonlar, öğe sırası, fark edilmeyen biçimlendirme karakterleri — her oturuma veya her şüpheli istemciye özel. Sızıntı tespit edildiğinde bu işaretlerle belirli kaynak oturumu belirleyebilirsiniz.

Kontrollü yanlış bilgi. En tartışmalı ve en güçlü araç. Kritik skorlu oturumlar erişim hatası yerine inandırıcı ama bozulmuş veri alır: küçük rastgele sapmalı fiyatlar, karıştırılmış stoklar, eski değerler. Kazıyıcı açığa çıktığını bilmez, çalışmaya devam eder ve rakibin veri tabanını çöple doldurur. Etki yıkıcıdır: toplanan tüm örneklemin değeri düşer çünkü hangi kayıtlara güvenileceği belirsizdir. Bu yöntem yalnızca karardan çok yüksek emin olduğunuzda uygulanabilir, çünkü gerçek bir alıcıya bozuk fiyat göstermek felakettir.

Tuzakların adım adım uygulanması

  1. Kilit şablonlara robots.txt'de yasaklanan bölümlere bir-iki gizli bağlantı ve formlara bir gizli alan ekleyin.
  2. Sunucu tarafında tuzağa başvuruda anlık skor artışı ayarlayın, sert engelleme değil: önce gözlemleyin.
  3. Veri tabanına benzersiz özellikli birkaç kanarya kaydı ekleyin ve bu özelliklerin dış kaynaklarda periyodik aranmasını ayarlayın.
  4. Tuzakları erişilebilirlik açısından kontrol edin: ekran okuyucular ve arama motoru botları onlardan zarar görmemeli.
  5. Yalnızca istatistik biriktikten ve doğruluk konusunda emin olduktan sonra dar bir segmentte yanlış bilgi denemelerine geçin.

Dokuzuncu katman: görmek, anlamak, tepki vermek

Dokuzuncu katman tüm savunmanın sinir sistemidir. Onsuz diğer sekiz katman, ne ayarlanabilen ne de değerlendirilebilen dağınık mekanizmalar kümesidir. Pratik gösteriyor ki kazıma korumasındaki başarısızlıkların çoğu araç eksikliğinden değil, kimsenin verilere bakmamasından kaynaklanır.

Bağlamlı kayıt. Her istek tam sinyal kümesiyle kaydedilmelidir: adres, parmak izleri, başlıklar, oturum kimliği, mevcut skor, verilen karar. Bu olmadan ne olayları çözebilir ne de modelleri eğitebilirsiniz. Toplu verileri uzun süre, ayrıntıları veri saklama gereksinimlerinin izin verdiği kadar saklayın.

Panolar ve metrikler. Asgari küme: zaman içinde kararlara göre trafik payı, hacimce en üst parmak izleri ve alt ağlar, tuzak tetiklenmeleri, skor segmentlerine göre kilit eylemlere dönüşüm, doğrulamalarda bırakılan oturumların oranı. Son iki gösterge yanlış pozitif göstergeleridir ve diğer hepsinden daha önemlidir.

Anomali tespiti. Bir bölüme yönelik isteklerin ani artışı, büyük trafik hacimli yeni bir parmak izinin ortaya çıkışı, sayfa ve kaynak istekleri oranının değişmesi — hepsi uyarı üretmelidir. İyi bir uygulama, pazarlama dalgalanmalarını saldırılardan ayırmak için bir ay önceki aynı haftayla karşılaştırmaktır.

Müdahale oyun kitapları. Tipik senaryolarda ne yapılacağını önceden tanımlayın: dağıtık adreslerden dalga, tek bir bölüme hedefli toplama, verilerinizin bir rakipte görünmesi, captcha'ya dair toplu kullanıcı şikâyetleri. Kim karar verir, hangi kaldıraçlar mevcut, değişiklik nasıl geri alınır.

Uyarlama döngüsü. Kazıma, uyum sağlayan iki sistemin karşı karşıya gelmesidir. Kurallar haftalar içinde eskir. Düzenli bir ritüel kurun: haftalık yeni kalıp incelemesi, aylık eşik ve ağırlık yeniden değerlendirmesi, üç aylık tüm mimari denetimi. Kazıma koruması bir proje değil, süreçtir.

Dokuzuncu katman kontrol listesi

  • Loglar tüm sinyalleri ve her istek için kararı içerir.
  • Yanlış pozitif metrikleriyle bir pano yalnızca güvenliğe değil ürüne de açıktır.
  • Anomaliler için net eşikli uyarılar ayarlanmıştır.
  • Dört-beş tipik olay için oyun kitapları yazılmış ve test edilmiştir.
  • Süreç sahibi ve düzenli gözden geçirme takvimi atanmıştır.

Tipik hatalar: pahalı koruma nasıl soruna dönüşür

Ne yapılması gerektiğini inceledik. Şimdi kesinlikle yapılmaması gerekenleri — bu hatalar farklı ölçekteki projelerde şaşırtıcı bir düzenlilikle tekrarlanıyor.

Birinci hata: temel yöntem olarak IP'ye göre engelleme

Nedenini zaten açıkladık: mobil ve yerleşik adresler aynı anda binlerce gerçek insana aittir. Limiti aştıktan sonra mobil adresi sert biçimde engelleyen proje, birkaç saat boyunca şehrin bütün bir mahallesini kaybeder. Bu özellikle mobil kitleye sahip servisler için sancılıdır. IP, hüküm değil düşük ağırlıklı bir göstergedir.

İkinci hata: herkese captcha

Cazibe büyük: girişe bir doğrulama koyup rahat uyumak. Sonuç — dönüşümde tek haneli ve çift haneli yüzde düşüş, artan terk oranı, olumsuz yorumlar. Üstelik toptan captcha hedefli otomasyonu neredeyse durdurmaz. Doğrulamalar yalnızca skorla hak edenlere gösterilmelidir.

Üçüncü hata: erişilebilirliği görmezden gelmek

Ekran okuyucu kullananlar, motor bozukluğu olanlar, eski cihazlardan ve yavaş bağlantılardan gelen ziyaretçiler davranışsal modeller için çoğu zaman "garip" görünür: yavaş hareket eder, fare kullanmaz, trafikten tasarruf için JavaScript'i devre dışı bırakır. Onları bunun için cezalandıran sistem yalnızca müşteri kaybetmez, itibar ve hukuki risk de yaratır. Her zaman insana anlaşılır bir yol bırakın: yetkilendirme, desteğe başvurma, alternatif doğrulama.

Dördüncü hata: yanlış pozitifleri ölçmemek

Güvenlik ekibi gururla bildirir: şu kadar milyon istek engellendi. Kimse bunların kaçının insan olduğunu sormaz. Savunma kararlarını iş metrikleriyle — satın almalar, kayıtlar, başvurular — ilişkilendirmezseniz savunmayı yönetmez, tahmin yürütürsünüz.

Beşinci hata: bir kez kurup unutmak

Mart ayında mükemmel çalışan kurallar sonbaharda ya her şeyi geçirir ya da popüler bir tarayıcının yeni sürümünü engeller. Parmak izi referansları, eşikler, ağırlıklar — hepsi bakım gerektirir. Süreç sahibi yoksa koruma da yoktur.

Altıncı hata: arama motorlarını bozmak

Dinamik biçimlendirme, tuval üzerinde içerik çizimi ve agresif doğrulamalarda aşırıya kaçarak dizine eklemeyi kaybedebilirsiniz. Yedinci katman önlemlerini uygulamadan önce doğrulanmış arama botlarının normal bir sayfa aldığından emin olun ve bunu web yöneticisi araçlarıyla düzenli olarak kontrol edin.

Yedinci hata: her şeyi aynı şekilde korumak

Ana sayfa ile satıcının telefon çıkışı farklı değere ve farklı riske sahiptir. Eşit koruma ya zararsız sayfalarda aşırı sürtünme ya da kritik olanlarda yetersiz koruma anlamına gelir. Veri değeri haritasıyla başlayın ve çabayı orantılı dağıtın.

Sekizinci hata: iç API'yi korumasız bırakmak

Kontrollerle dolu güzel bir ön yüz ve arkasında tüm kataloğu token ve limit olmadan yapılandırılmış biçimde veren açık bir uç nokta. Bu şaşırtıcı derecede sık görülür. İç API en az hizmet verdiği sayfalar kadar sıkı korunmalıdır.

Dokuzuncu hata: teknik olmadan hukuki, hukuki olmadan teknik önlem

Teknik olarak hiçbir şeyle desteklenmeyen sözleşme bir beyandır. Hukuki temeli olmayan teknik koruma tartışmalı durumda argüman eksikliğidir. Yalnızca ikisinin bağlantısı işe yarar.

Araçlar ve kaynaklar: savunmayı neyle kurarsınız

Kazıma koruması çözümleri pazarı çok büyüktür ve seçim büyük ölçüde ölçeğe, bütçeye ve veri yerelleştirme gereksinimlerine bağlıdır. Araçları kategorilere ve olgunluk düzeylerine göre ayıralım.

Kapsamlı antibot platformları

Ağ, protokol, tarayıcı ve davranış katmanlarını hazır makine öğrenmesi modelleriyle birleştiren özel servisler. Uluslararası liderler — büyük CDN sağlayıcılarının çözümleri ve bağımsız antibot şirketleri. Türkiye pazarında da yerel veri konumlandırma gereksinimlerine uygun, yerel operatörlerle çalışan trafik filtreleme ve bot koruma platformları var. Artıları: hızlı başlangıç, devasa hacimlerde eğitilmiş modeller, destek. Eksileri: maliyet, satıcıya bağımlılık, kararların sınırlı şeffaflığı.

Web güvenlik duvarları ve sınırda filtreleme

Açık kural kümeleriyle WAF temel senaryoları kapatır: bilinen araçların imzaları, anormal başlıklar, uygulamaya saldırılar. Popüler web sunucularında ve yük dengeleyicilerde hız sınırlama modülleri ikinci katman için basit bir uygulama sunar. Açık toplu itibar sistemleri, zararlı kaynaklar hakkında toplulukla sinyal paylaşmayı sağlar.

Doğrulama servisleri

Yerli ve yabancı görünmez ve etkileşimli captcha sağlayıcıları. Seçim yaparken şunları dikkate alın: kullanıcı verilerinin saklanmasına dair gereksinimler, bölgenizdeki erişilebilirlik, erişilebilir alternatiflerin varlığı, zorluğu API üzerinden yönetme ve yalnızca ikili yanıt değil risk puanı alma imkânı. Toplu crawler'lardan muzdarip içerik projelerinde, uygulamanın önüne yerleştirilen açık iş kanıtı çözümleri popülerlik kazanıyor.

Parmak izi kütüphaneleri

Açık tarayıcı parmak izi kütüphaneleri dördüncü katmanı kendi gücünüzle toplamanızı sağlar. TLS ve HTTP/2 parmak izi toplama modülleri popüler yük dengeleyiciler için ve ayrı servisler olarak mevcuttur. Bu, referansları kendi başına sürdürmeye hazır güçlü mühendisliğe sahip ekiplerin yoludur.

Gözlemlenebilirlik ve analitik

Dokuzuncu katman için yığın: yüksek toplama hızıyla logları saklamak için sütunlu veri tabanı, panolar ve uyarılarla görselleştirme sistemi, gerçek zamanlı anomali tespiti için akış işleme araçları. Birçok ekip bunu açık bileşenler üzerine kurar ve hazır platformlarda bulunmayan esnekliği elde eder.

Nasıl seçilir: olgunluk matrisi

  • Başlangıç düzeyi (küçük proje, minimum kaynak): temel bot koruması olan CDN, web sunucusunda limitler, kritik formlarda görünmez captcha, robots.txt ve sözleşmede bölüm, basit tuzaklar.
  • Orta düzey (büyüyen iş, geliştiriciler var): özel kurallı WAF, parmak izi toplama, onlarca metrikten kendi skorlaması, iç API için imzalı tokenlar, yanlış pozitif panoları.
  • İleri düzey (veri işin merkezinde): kapsamlı antibot platformu veya kendi ML modelleri, tam tuzak ve işaretleme seti, yanlış bilgi denemeleri, ayrılmış ekip ve oyun kitapları, ticari ürün olarak resmî API.

Vakalar ve sonuçlar: pratikte nasıl çalışıyor

Aşağıdaki vakalar anonimleştirilmiş ve genelleştirilmiştir, rakamlar yuvarlanmıştır ama farklı ölçekteki projelerin incelenmesinde gerçek gözlemleri yansıtır.

Birinci vaka: bölgesel pazar yeri ve fiyat istihbaratı

On binlerce ürünlü elektronik pazar yeri, rakibin kendi tarafındaki her güncellemeden bir saat sonra fiyatları değiştirdiğini fark etti. Log analizi gösterdi ki ürün kartlarına yönelik isteklerin yaklaşık yüzde kırkı dağıtık adreslerden gelen otomasyondan geliyordu ve her biri saatte en fazla on istek yapıyordu — ağ limitleri devreye girmiyordu.

Ne yaptılar. TLS parmak izi toplamayı devreye aldılar ve tüm şüpheli trafiğin beyan edilen tarayıcıyla uyuşmayan aynı parmak izine sahip olduğunu buldular. Davranışsal skorlama eklediler: hiç resim isteği ve hiç giriş olayı olmayan oturumlar artırılmış puan aldı. Son olarak kritik skorlu oturumlar için yüzde birkaç aralığında kontrollü fiyat bozulmasını açtılar.

İki ay sonra sonuç: ürün kartlarına otomatik trafik payı yüzde sekize indi. Rakip fiyat değişimlerine anında tepki vermeyi bıraktı ve birkaç durumda bozulmuş değerleri tekrarlayan fiyatlar koydu. Gerçek kullanıcıların dönüşümü istatistiksel hata payı içinde değişmedi, çünkü hiçbir önlem düşük skorlu oturumlara dokunmadı.

İkinci vaka: ilan panosu ve iletişim bilgisi toplama

Bir ilan platformu, kullanıcıların yayından kısa süre sonra yabancı şirketlerden telefon aldığına dair şikâyetlerle karşılaştı. Soruşturma, yeni ilanlardan toplu telefon numarası toplandığını ortaya çıkardı.

Ne yaptılar. Telefonu işaretlemede göstermekten, oturuma ve parmak izine bağlı kısa ömürlü imzalı tokenla iç API üzerinden tıklamayla yüklemeye geçirdiler. Oturum başına ve hesap başına günlük açılan numara sayısına, gerçek alıcı davranışının 99. yüzdelik dilimine karşılık gelen bir limit getirdiler. Geri bildirim formuna gizli bir tuzak alanı eklediler. Sözleşmeye iletişim verisinin otomatik toplanmasına açık bir yasak koydular.

Sonuç: ilanlara gerçek yanıt sayısı değişmezken numara açılma hacmi yüzde yetmiş düştü; bu da azalmanın neredeyse tamamen otomasyona denk geldiğini gösteriyordu. Kullanıcıların istenmeyen aramalara ilişkin şikâyetleri çeyrek içinde birkaç kat azaldı.

Üçüncü vaka: içerik yayını ve dil modelleri için crawler'lar

Büyük bir makale arşivine sahip çevrim içi yayın, arşiv materyallerine trafiğin altı ayda üç kat arttığını ama reklam gösterimlerinin değişmediğini keşfetti. Analiz, artışın bir kısmı robots.txt'i yok sayan ve kendini sıradan tarayıcı olarak tanıtan crawler'lardan geldiğini gösterdi.

Ne yaptılar. Arşiv bölümlerinin önüne ayarlanabilir zorlukta iş kanıtı doğrulaması koydular. Doğrulanmış arama botları içeriği doğrudan aldı. İçerik kullanımını izlemek için benzersiz hayali olgular içeren kanarya makaleleri eklediler. Arşive ihtiyaç duyan şirketler için resmî lisanslama kanalı açtılar.

Sonuç: arşiv yükü bir ay içinde yarıya indi, altyapı giderleri belirgin biçimde düştü. Kendini tarayıcı olarak gösteren crawler'ların bir kısmı hesaplama maliyetiyle karşılaşınca çalışmayı bıraktı. Birkaç lisanslama talebi geldi. Yayın, materyallerinin kullanımını belgelemek için işleyen bir araç kazandı.

Dördüncü vaka: geri alınması gereken bir hata

Denge için bir başarısızlık örneği. Bir rezervasyon servisi, dakikada yirmi istek limiti aşıldıktan sonra adreslere sert engelleme açtı. İlk gün destek bir başvuru dalgası aldı: bütün ofisler ve daha kötüsü, adreslerini binlerce abonenin paylaştığı mobil operatör kullanıcıları engelleniyordu. Dönüşüm yüzde on iki düştü. Limit geri alındı, engellemenin yerine tırmandırmalı görünmez doğrulama kondu ve sayaçlar adresten oturuma ve parmak izine taşındı. Ders: ağ katmanı tek başına nihai kararlar vermemelidir.

SSS: mimari incelemelerde sorulan sorular

Bir site kazımaya karşı tamamen korunabilir mi?

Hayır ve bu amaç değil. Tarayıcının erişebildiği her bilgi ilke olarak otomasyona da erişilebilir. Savunmanın görevi toplama maliyetini saldırgan için verinin değerinin üstüne çıkarmak ve toplamayı yavaş, gürültülü ve fark edilir kılmaktır. Dokuz katman tam olarak bunun için çalışır: her biri sürtünme ekler, son üçü ise savunmayı istihbarat kaynağına dönüştürür.

Küçük bir proje hangi katmandan başlamalı?

Birinci ve dokuzuncudan. Önce kuralları ilan edin ve trafiğinizi görmeyi öğrenin — loglar ve metrikler olmadan sonraki tüm önlemler körlemesine ayarlanacaktır. Ardından en ucuz teknik katmanları ekleyin: sunucuda limitler, basit tuzaklar, kritik formlarda görünmez doğrulama. Gerisini veri değeri arttıkça ve loglarda gerçek tehditler göründükçe ekleyin.

Neden şüpheli davranış gösteren tüm mobil ve yerleşik adresleri engelleyemiyoruz?

Çünkü böyle bir adreste yüzlerce veya binlerce gerçek insan var ve birinin şüpheli davranışı diğerlerini cezalandırmamalıdır. Modern kazıma koruması kararları oturum ve parmak izi düzeyinde verir, adresi ise zayıf bir ek sinyal olarak kullanır. Mobil kitle için erişilebilirliği korumanın tek yolu budur.

Faydalı botu zararlıdan nasıl ayırt ederiz?

Beyan edilen bot adı hiçbir şeyi kanıtlamaz — taklit edilebilir. Doğrulama, adresin bot operatörünün resmî olarak yayımladığı aralıklara ait olup olmadığının kontrolüne veya alan adı üzerinden ters doğrulamaya dayanır. Doğrulanmış botlara daha esnek kurallar verilebilir. Bilinen bir bot olarak görünen ama doğrulamayı geçemeyen her şey artırılmış şüpheyi hak eder — bu klasik maskeleme işaretidir.

Korumanın etkinliği nasıl ölçülür?

İki metrik grubuyla. Birincisi botlarla ilgili: bölümlere göre otomatik trafik payı, tuzak tetiklenmeleri, dışarıda bulunan kanarya kaydı sayısı, rakiplerin değişikliklerinize tepki hızı. İkincisi insanlarla ilgili: skor segmentlerine göre dönüşüm, bırakılan doğrulama payı, engelleme şikâyetleriyle destek başvuruları. Koruma yalnızca birinci grup iyileşirken ikinci grup kötüleşmiyorsa başarılıdır.

Kullanıcı adına hareket eden agentic yapay zekâ tarayıcılarıyla ne yapmalı?

Siyasi olarak karar vermeli. Bu tür ajanlar alıcı getirebilir veya kataloğu boşaltabilir. Makul yaklaşım — kendini tanımlayan, imzalı ajanları anonim otomasyondan ayırmak; ilk gruba açık erişim koşulları tanımlamak, ikinci gruba standart tırmandırmayı uygulamak. Ajan kimlik doğrulama standartları henüz oluşuyor, bu yüzden mimariye yeni istemci kategorilerini hızla ekleme imkânı bırakmak gerekir.

Kazıma koruması arama motoru optimizasyonuna zarar verir mi?

Özensiz uygulanırsa verebilir. Dinamik biçimlendirme, tuval üzerinde içerik çizimi, agresif doğrulamalar dizine eklemeyi bozabilir. Kural basit: doğrulanmış arama botları tam bir sayfa almalı, arama için kritik veriler JavaScript kontrollerinin arkasına saklanmamalı ve her koruma değişikliğinden sonra dizine ekleme web yöneticisi araçlarıyla kontrol edilmelidir.

Botlara kasıtlı olarak bozuk veri vermek ne kadar yasal?

Mesele, site sahibinin kendi kullanım kurallarını ihlal eden istemcilere hangi bilgiyi göstereceğine kendisinin karar vermesidir. Kilit koşul — bu, iyi niyetli kullanıcıları etkilememeli ve tüketicinin korunması mevzuatı anlamında tüketicileri yanıltmamalıdır. Bu yüzden yanlış bilgi yalnızca otomasyonu kanıtlanmış oturumlara ve yalnızca bir avukatla görüştükten sonra uygulanabilir; insanlara açık sayfalardaki bilgi her zaman doğru olmalıdır.

Tam bir koruma kurmak ne kadar tutar?

Aralık çok geniş. Birinci, ikinci, altıncı ve dokuzuncu katmanlardan oluşan başlangıç seti açık bileşenlerle bir geliştiricinin birkaç haftası içinde kurulabilir. Orta ölçekli iş için kapsamlı antibot platformu, bir-iki uzmanın maliyetine denk aylık bir aboneliktir. Makine öğrenmeli kendi sistem — ayrılmış bir ekip. Hesap için başlangıç noktası her zaman aynıdır: verileriniz rakipler için ne kadar ediyor ve sızıntılarından ne kadar kaybediyorsunuz?

Koruma ayarları ne sıklıkla gözden geçirilmeli?

Haftada bir — yeni kalıp ve anormalliklerin incelenmesi. Ayda bir — eşiklerin, ağırlıkların ve parmak izi referanslarının gözden geçirilmesi, özellikle popüler tarayıcı sürümlerinden sonra. Üç ayda bir — mimari ve oyun kitapları denetimi. Savunmanın eskimesini önleyen asgari ritim budur.

Sonuç: ürün değil, süreç olarak savunma

Resmi bütün olarak toplayalım. Kazıma koruması tek bir araç veya tek bir ayar değildir. Yasal çevrenin kuralları koyduğu, ağ filtresinin kaba yükü aldığı, protokol ve tarayıcı parmak izlerinin uyumsuzlukları yakaladığı, davranışsal analizin insan dışı kalıpları ortaya çıkardığı, aktif doğrulamaların hesaplamayla ödeme yaptırdığı, uygulama mimarisinin avın değerini düşürdüğü, tuzakların savunmayı istihbarata dönüştürdüğü ve izlemenin tüm bunları öğrenebilen canlı bir sistemde birleştirdiği dokuz karşılıklı ilişkili katmandır.

Yanınızda götürmeniz gereken üç fikir var. Birincisi: amaç aşılmazlık değil, ekonomidir. Verilerinizin toplanması, değerinden pahalı hale geldiğinde kazanırsınız. İkincisi: yanlış pozitifler kaçırılan botlardan daha pahalıdır, bu yüzden her önlem gerçek kullanıcıların iş metrikleri üzerinden ölçülmelidir. Üçüncüsü: adres artık yargıç değildir; mobil ve yerleşik bağlantılar dünyasında kararlar oturum, parmak izi ve davranış düzeyinde verilir.

Bundan sonra ne yapmalı? Kendi projeniz varsa — veri değeri haritası ve mevcut trafik denetimiyle başlayın: otomasyon payına neredeyse kesinlikle şaşıracaksınız. Her katmanın kontrol listesinden geçin ve neyin zaten olduğunu, neyin olmadığını işaretleyin. Yeni önlemleri uygulamadan önce, sonra değil, yanlış pozitif panosunu kurun. Süreç sahibini ve gözden geçirme takvimini atayın.

Otomasyon tarafında çalışıyorsanız — kendi kampanyalarınızın meşru izlemesi, partner entegrasyonları, platformların onayıyla analitik — bu dokuz katmanı anlamak, kaynakların kurallarına saygı duyan, varsa resmî kanalları kullanan ve ne size ne veri sahiplerine sorun çıkarmayan çözümler kurmanıza yardımcı olacaktır. Savunmayı anlamak, her türlü veri çalışmasını daha olgun kılar.

Kazıyıcılar ile savunma arasındaki karşı karşıya gelme asla bitmeyecek: her biri diğerinin hamlelerinden öğrenen uyum sağlayıcı sistemlerdir. Ama savunanın sık sık unutulan bir avantajı vardır. Kendi verilerini, kendi kullanıcılarını ve kendi normalliğini bilir. Tek gereken, sapmaları görmeyi ve rakip uyum sağlamadan önce tepki vermeyi öğrenmektir. Dokuz katman, bu becerinin inşa edildiği haritadır.