karanlık proxyscrape logo

Web Kazıma Yaparken CAPTCHA'lar Nasıl Atlanır? - 5 Basit Adım

Nasıl yapılır, Kazıma, Ocak-03-20235 dakika okuma

Büyük ölçekli web sitelerinden veri kazırken, insan olduğunuzu kanıtlamak için bir CAPTCHA ile karşılaşmamış olma ihtimaliniz çok düşüktür. Bir web kazıyıcısı olarak, siber güvenlik uzmanlarının neden bunları icat etmek zorunda kaldıklarını zaten biliyor olabilirsiniz. Bunlar, botlarınızın onlara erişmek için sonsuz web sitesi isteklerini otomatikleştirmesinin bir sonucuydu. Bu yüzden gerçek kullanıcılar bile farklı şekillerde ortaya çıkan CAPTCHA'larla yüzleşmenin sancılarını yaşamak zorunda kaldı. Ancak, bir web kazıyıcı olsanız da olmasanız da CAPTCHA'ları atlayabilirsiniz, ki bu makalenin amacı da bu olacaktır. Ama önce CAPTCHA'ların ne olduğuna bakalım.

Web Kazıma İçin CAPTCHA'yı Atlayın

CAPTCHA'lar genellikle sitedeki doğal olmayan trafiği tespit etmek için tetiklenir. Bu kısıtlamayı aşmak için kullanıcılar tüm bu CAPTCHA kodlarını kırabilecek ve web sitesine gerçek bir insan gibi erişebilecek bir çözümü tercih ederler. Captcha'ları atlamak için bir çözüm Capsolver'dır. Web istekleri ile proxy kullanmak da kullanıcıların doğal bir trafik olarak görünmesine yardımcı olacaktır. 

CAPTCHA nedir?

CAPTCHA, Bilgisayarları ve İnsanları Ayırmak için Tamamen Otomatikleştirilmiş Halka Açık Turing Testi anlamına gelir. Bu oldukça uzun bir kısaltma, değil mi? Şimdi bu kısaltmanın son kısmı olan Turing Testinin ne anlama geldiğini merak ediyor olabilirsiniz - bir insanın mı yoksa botun mu bir web sayfası veya web sunucusu ile etkileşime girdiğini belirlemek için basit bir testtir.

Sonuçta CAPTCHA, insanları botlardan ayırarak Siber güvenlik analistlerinin web sunucularını kaba kuvvet saldırılarına, DDoS'a ve bazı durumlarda web kazımaya karşı korumasına yardımcı olur. 

CAPTCHA'ların insanları botlardan nasıl ayırdığını öğrenelim.

CAPTCHA'lar nasıl çalışır?

CAPTCHA'ları bir web sitesinin iletişim, kayıt, yorum, kayıt veya çıkış formları gibi formlarında bulabilirsiniz.

Geleneksel CAPTCHA'lar, arka plan rengi veya şeffaf arka planı olan bir kutu içinde uzatılmış veya bulanık harfler, sayılar veya her ikisinin de bulunduğu bir görüntü içerir. Ardından karakterleri tanımlamanız ve bunları takip eden metin alanına yazmanız gerekir. Bu karakterleri tanımlama işlemi insanlar için daha kolaydır ancak bir bot için biraz karmaşıktır.

CAPTCHA metnini bulanıklaştırma veya bozma fikri, botun karakterleri tanımlamasını zorlaştırmaktır. Buna karşılık, insanlar farklı yazı tipleri, el yazısı vb. gibi çeşitli biçimlerdeki karakterleri yorumlayabilir ve yakalayabilir. Bununla birlikte, her insan bir CAPTCHA'yı ilk denemede çözemez. Araştırmalara göre, kullanıcıların %8 'i ilk denemelerinde yanlış yazarken, CAPTCHA'lar büyük/küçük harfe duyarlıysa %29 'u başarısız oluyor.

Öte yandan, bazı gelişmiş botlar yıllar içinde makine öğrenimi yardımıyla çarpıtılmış harfleri yakalayabilmektedir. Sonuç olarak, Google gibi bazı şirketler geleneksel CAPTCHA'ları sofistike CAPTCHA'larla değiştirdi. Bu örneklerden biri, bir sonraki bölümde keşfedeceğiniz ReCAPTCHA'dır.

ReCAPTCHA nedir?

ReCAPTCHA, Google'ın sunduğu ücretsiz bir hizmettir. Kullanıcılardan metin yazmak, bulmaca çözmek veya matematik denklemleri çözmek yerine kutuları işaretlemelerini ister.

Tipik bir ReCAPTCHA, CAPTCHA'ların geleneksel formlarından daha gelişmiştir. Sokaklardaki trafik ışıkları, eski gazetelerdeki metinler ve basılı kitaplar gibi gerçek dünyadan görüntüler ve metinler kullanır. Sonuç olarak, kullanıcılar bulanık ve bozuk metinli eski tip CAPTCHA'lara güvenmek zorunda kalmazlar.

ReCAPTCHA'lar nasıl çalışır?

İnsan olup olmadığınızı doğrulamak için üç önemli ReCAPTCHA testi türü vardır:

Onay kutusu

Bunlar, kullanıcılardan yukarıdaki resimdeki gibi "Ben robot değilim" şeklinde bir onay kutusunu işaretlemelerini isteyen ReCAPTCHA'lardır. Çıplak gözle bakıldığında bir bot bile bu testi tamamlayabilir gibi görünse de, çeşitli faktörler dikkate alınmaktadır:

  • Bu test, kullanıcının onay kutusuna yaklaşırken yaptığı fare hareketlerini inceler.
  • Bir kullanıcının fare hareketleri, çoğu doğrudan fare hareketi de dahil olmak üzere düz değildir. Bir botun aynı davranışı taklit etmesi zordur.
  • Son olarak, ReCAPTCHA tarayıcınızın depoladığı çerezleri inceleyecektir.

ReCAPTCHA insan olduğunuzu doğrulayamazsa, size başka bir zorluk sunacaktır.

Görüntü Tanıma

Bu ReCAPTCHA'lar, kullanıcılara yukarıdaki resimde görebileceğiniz gibi dokuz veya on altı kare görüntü sağlar. Her kare daha büyük bir görüntünün veya farklı görüntülerin bir parçasını temsil eder. Bir kullanıcı belirli nesneleri, hayvanları, ağaçları, araçları veya trafik ışıklarını temsil eden kareleri seçmelidir.

Kullanıcının seçimi aynı testi gerçekleştiren diğer kullanıcıların seçimleriyle eşleşirse, kullanıcı doğrulanır. Aksi takdirde, ReCAPTCHA daha zorlu bir test sunacaktır.

Etkileşim Yok

ReCAPTCHA'nın onay kutuları veya herhangi bir kullanıcı etkileşimi kullanmadan insan olup olmadığınızı doğrulayabildiğini biliyor muydunuz?

Kullanıcının web siteleriyle etkileşim geçmişini ve kullanıcının çevrimiçiyken genel davranışını göz önünde bulundurarak kesinlikle yapar. Çoğu senaryoda, bu faktörlere bağlı olarak, sistem sizin bir bot olup olmadığınızı belirleyebilir.

Bunun yapılmaması halinde, daha önce bahsedilen iki yöntemden herhangi birine geri dönülecektir.

CAPTCHA'ları ve ReCAPTCHA'ları tetikleyen nedir?

CAPTCHA'lar, bir web sitesi bot davranışına benzeyen olağandışı faaliyetler tespit ederse tetiklenebilir; Bu tür olağandışı davranışlar, saniyeler içinde sınırsız istekleri ve bağlantılara insanlardan çok daha yüksek oranda tıklamayı içerir. 

O zaman bazı web siteleri sistemlerini korumak için otomatik olarak CAPTCHA'lara sahip olacaktır.

ReCAPTCHA'lar söz konusu olduğunda, bunları neyin tetiklediği tam olarak açık değildir. Ancak, genel nedenler fare hareketleri, tarama geçmişi ve çerezlerin izlenmesidir.

Web kazıma yaparken CAPTCHA'ları atlama hakkında bilinmesi gerekenler

Artık CAPTCHA'ların ve Rechaptcha'ların ne olduğu, nasıl çalıştıkları ve onları neyin tetiklediği hakkında net bir genel bakışa sahipsiniz. Şimdi CAPTCHA'ların web kazımayı nasıl etkilediğini incelemenin zamanı geldi.

CAPTCHA'lar, kazıma işlemlerinin çoğunu otomatik botlar gerçekleştirdiği için web'in kazınmasını engelleyebilir. Ancak, cesaretiniz kırılmasın. Bu makalenin başında da belirtildiği gibi, web'i kazırken CAPTCHA'ların üstesinden gelmenin yolları vardır. Bunlara geçmeden önce, dikkatimizi kazıma yapmadan önce nelere dikkat etmeniz gerektiğine verelim.

Hedef web sitesine çok fazla istek gönderme

Öncelikle, web kazıyıcınızın/tarayıcınızın kısa bir süre içinde çok fazla istek göndermesine izin vermediğinizden emin olmalısınız. Web sitelerinin çoğu, şartlar ve koşullar sayfalarında web sitesinin kaç isteğe izin verdiğini belirtmiştir. Kazımaya başlamadan önce bunları okuduğunuzdan emin olun.

HTTP üstbilgileri

Bir web sitesine bağlandığınızda, cihazınızla ilgili bilgileri bağlanan web sitesine gönderirsiniz. Bu bilgileri, içeriği cihazınızın özelliklerine göre özelleştirmek ve metrik izleme için kullanabilirler. Dolayısıyla, isteklerin aynı cihazdan geldiğini öğrendiklerinde, daha sonra gönderdiğiniz tüm istekler engellenecektir.

Dolayısıyla, web kazıyıcıyı/tarayıcıyı kendiniz geliştirdiyseniz, kazıyıcınızın yaptığı her istek için başlık bilgilerini değiştirebilirsiniz. Böylece hedef web sitesi farklı cihazlardan birden fazla istek alıyormuş gibi görünecektir. HTTP başlıkları hakkında daha fazla bilgi için burayı okuyun.

IP adresi

Bilmeniz gereken bir başka gerçek de hedef web sitesinin IP adresinizi kara listeye almamış olmasıdır. Kazıyıcınızla/tarayıcınızla çok fazla istek gönderdiğinizde IP adresinizi kara listeye almaları muhtemeldir. 

Yukarıdaki sorunun üstesinden gelmek için, IP adresinizi maskelediği için bir proxy sunucusu kullanabilirsiniz. 

HTTP başlıklarını ve proxy'leri bir havuzla döndürmek (bu konuda daha fazla bilgi bir sonraki bölümde), birden fazla cihazın web sitesine farklı konumlardan erişmesini sağlayacaktır. Böylece CAPTCHA'lardan kesinti olmadan kazıma işlemine devam edebilmeniz gerekir. Bununla birlikte, web sitesinin performansına hiçbir şekilde zarar vermediğinizden emin olmalısınız.

Ancak, proxy'lerin kayıt, şifre değiştirme, çıkış formlarındaki CAPTCHA'ların üstesinden gelmenize yardımcı olmayacağını unutmamalısınız. Yalnızca web sitelerinin bot davranışına sahip olması nedeniyle tetiklediği yakalamaların üstesinden gelmenize yardımcı olabilir. Bu tür formlarda CAPTCHA'lardan kaçınmak için, CAPTCHA çözücüleri ilerideki bir bölümde inceleyeceğiz.

Diğer CAPTCHA türleri

Yukarıdaki temel faktörlere ek olarak, bir bot ile web kazıma yaparken aşağıdaki CAPTCHA'ları bilmeniz gerekir:

Honeypots-Honeypot, bir HTML form alanı veya bağlantısı içine yerleştirilmiş bir tür CAPTCHA olacaktır, ancak görünürlüğü CSS ile gizlenmiştir, bu nedenle bir bot onunla etkileşime girdiğinde kaçınılmaz olarak kendisinin bir bot olduğunu bildirmiştir. Bu nedenle, botunuzun içeriği kazımasını sağlamadan önce, öğenin CSS özelliklerinin görünür olduğundan emin olun.
Word/Match CAPTCHA-Bunlar, örneğin "3+7" gibi matematik denklemlerindeki CAPTCHA'lardır. Ayrıca çözülmesi gereken kelime bulmacaları da olabilir.
Sosyal Medya oturum açma - Bazı web siteleri, örneğin Facebook hesabınızla oturum açmanızı gerektirir. Ancak, çoğu yönetici insanların sosyal medya hesaplarıyla oturum açma konusunda isteksiz olacağını bildiği için bu tür uygulamalar popüler değildir.
Zaman takibi- Bu CAPTCHA'lar, bir insan mı yoksa bot mu olduğunu belirlemek için bir formu doldurmak gibi belirli bir eylemi ne kadar hızlı gerçekleştirdiğinizi izler.

Web Kazıma için CAPTCHA'lar nasıl atlanır

Proxy'leri döndürün ve kaliteli IP adresleri kullanın

Önceki bölümde belirtildiği gibi, hedef web sitesine her istek gönderdiğinizde proxy'leri döndürmeniz gerekir. Bu, kazıma sırasında tetiklenen CAPTCHA'lardan kaçınmanın bir yoludur. Bu durumlarda, temiz yerleşim IP proxy'leri kullanmanız gerekir.
Proxy'leri döndürdüğünüzde, hedef web sitesinin IP ayak izinizi belirlemesi zor olacaktır. Bunun nedeni, her istek için kendi IP adresiniz yerine proxy'lerin IP adresinin görünecek olmasıdır.

Kullanıcı aracılarını döndürün

Web kazıma için bir kazıyıcı kullanacağınızdan, kullanıcı aracısını popüler bir web tarayıcısına veya web sitelerinin tanıdığı arama motoru botları gibi desteklenen bot-botlara gizlemeniz gerekecektir.

Sadece kullanıcı aracısını değiştirmek yeterli olmayacaktır çünkü kullanıcı aracısı dizelerinin bir listesine sahip olmanız ve ardından bunları döndürmeniz gerekecektir. Bu rotasyon, gerçekte tüm istekleri tek bir cihaz gönderirken hedef web sitesinin sizi farklı bir cihaz olarak görmesine neden olacaktır.

Bu adım için en iyi uygulama olarak, gerçek kullanıcı aracılarının bir veritabanını tutmak harika olacaktır. Ayrıca, artık ihtiyacınız olmadığında çerezleri silin.

CAPTCHA Çözme Hizmetleri

Bir CAPTCHA'yı çözmek için daha basit ve düşük teknik bir yöntem, bir CAPTCHA çözme hizmeti kullanmak olacaktır. CAPTCHA'yı çözmek için Yapay Zeka (AI), Makine Öğrenimi (MI) ve diğer teknolojilerin bir doruk noktasını kullanırlar.

Şu anda sektörde mevcut olan önde gelen CAPTCHA çözücülerden bazıları Capsolver ve Anti-CAPTCHA'dır.

Kazıyıcınızın her saniye doğrudan bir URL'ye erişmesine izin verdiğinizde, alıcı web sitesi şüphelenecektir. Sonuç olarak, hedef web sitesi bir CAPTCHA tetikleyecektir.

Böyle bir senaryodan kaçınmak için, referer başlığını başka bir sayfadan yönlendirilmiş gibi görünecek şekilde ayarlayabilirsiniz. Bu, bot olarak algılanma olasılığını azaltacaktır. Alternatif olarak, botun istenen bağlantıyı ziyaret etmeden önce diğer sayfaları ziyaret etmesini sağlayabilirsiniz.

Bal Noktalarından Kaçının

Honeypotlar, güvenlik uzmanlarının botları veya davetsiz misafirleri tuzağa düşürmek için kullandıkları bir web sayfasındaki gizli öğelerdir. Tarayıcı HTML'sini oluştursa da CSS özellikleri gizlenecek şekilde ayarlanmıştır. Bununla birlikte, insanların aksine, bal küpü kodu, verileri kazdıklarında botlar tarafından görülebilir. Sonuç olarak, bal küpü tarafından kurulan tuzağa düşerler.

Bu nedenle, kazıma işlemine başlamadan önce bir web sayfasındaki tüm öğelerin CSS özelliklerinin gizli veya görünmez olmadığından emin olmanız gerekir. Yalnızca hiçbir öğenin gizli olmadığından emin olduğunuzda, botunuzu kazıma için ayarlarsınız.

Sıkça Sorulan Sorular

1. Web Kazıma için CAPTCHA'ları atlamak ne anlama geliyor?
CAPTCHA'ları atlamak, çok sayıda siteden veri kazırken ortaya çıkan engelleyicileri kaldırma işlemidir. CAPTCHA'lar web trafiğinin organik olup olmadığını doğrulamak için tasarlandığından.
2. ReCaptcha nedir?
ReCaptcha, web sitelerinizi spam ve kötü niyetli bot trafiğinden korur. Organik trafiği bot trafiğinden ayırmak için etkileşimli bulmacalar oluşturur.
3. Bir proxy, kullanıcıların Captcha'ları atlamasına nasıl yardımcı olur?
Bir bottan veya herhangi bir kazıma çözümünden arka arkaya web istekleri gönderdiğinizde, CAPTCHA'lar trafiğin spam amaçlı bir bottan geldiğini kolayca tespit edebilir. Bu nedenle, bir proxy'den bir proxy adresi kullanmak, daha gerçek zamanlı bir trafik gibi görünmenizi sağlayacaktır.

Sonuç

Bu makale, web'i kazırken CAPTCHA'lardan nasıl kaçınacağınız konusunda size kapsamlı bir fikir verecektir. CAPTCHA'dan kaçınmak karmaşık bir süreç olabilir. Bununla birlikte, bu makalede tartışılan belirli tekniklerin kullanılmasıyla, botu CAPTCHA'lardan kaçınacak şekilde geliştirebilirsiniz.

Bu makalede tartışılan tüm teknikleri kullanacağınızı umuyoruz.