İçeriğe geç

Proxy ile CAPTCHA nasıl aşılır: ipuçları ve araçlar

• Кейсы
Proxy ile CAPTCHA nasıl aşılır: ipuçları ve araçlar

CAPTCHA doğrulamalarını etkili biçimde aşmak iki katmanlı bir yaklaşım gerektirir: doğrulamaların hiç çıkmaması için yüksek itibarlı residential proxy'ler kullanmak ve kaçınılmaz olanlar için otomatik çözüm servislerini entegre etmek. GProxy'nin residential ağını kullanan geliştiriciler yüksek bir trust score koruyarak büyük ölçekli veri çekimi sırasında reCAPTCHA, hCaptcha ve Cloudflare Turnstile kesintilerinin sıklığını belirgin şekilde azaltabilir.

IP itibarının ve CAPTCHA tetikleyicilerinin mekaniği

Siteler CAPTCHA'yı rastgele göstermez. Bunlar davranışsal sezgiseller ile IP itibarının birleşimiyle tetiklenir. Bir istek sunucuya ulaştığında güvenlik katmanı (Cloudflare, Akamai veya DataDome gibi) IP adresinin meta verilerini analiz eder. IP bilinen bir veri merkezi aralığına aitse anında yüksek riskli kaynak olarak işaretlenir. Çünkü gerçek insan kullanıcılar nadiren bir AWS ya da DigitalOcean sunucusu üzerinden gezinir.

CAPTCHA tetiklenmesini etkileyen başlıca faktörler:

  • ASN (Autonomous System Number) çeşitliliği: veri merkezi ASN'lerinin trust score'u düşüktür. Comcast, AT&T veya Verizon gibi ISP'lere ait residential ASN'ler en yüksek güveni taşır.
  • IP hızı: tek bir IP'den dakikada 500 istek göndermek "sert" bir CAPTCHA'yı garanti tetikler.
  • Coğrafi tutarlılık: hesap girişiniz Londra'dan geliyorsa ve beş dakika sonra Tokyo'dan geliyorsa, konumdaki ani değişim güvenlik doğrulamalarını tetikler.
  • Kara liste durumu: daha önce DDoS saldırılarında veya spam'de kullanılmış IP'ler Spamhaus ya da Project Honey Pot gibi küresel veritabanlarına kaydedilir.

GProxy residential proxy'leri kullanmak, gerçek ev bağlantısı gibi görünen IP'ler sağlayarak bu riskleri azaltır. Bu IP'ler yerel ISP'ler tarafından atandığı için veri merkezi trafiğine özgü "bot" imzasını taşımaz ve korumalı sitelerde daha sorunsuz gezinme sağlar.

Proxy ile CAPTCHA nasıl aşılır: ipuçları ve araçlar

CAPTCHA'dan kaçınmak için doğru proxy türünü seçmek

Bot tespitini aşma söz konusu olduğunda her proxy aynı değildir. Veri merkezi, residential ve mobil proxy'ler arasındaki seçim, hedef sitenin güvenlik düzeyine ve bütçenize bağlıdır.

Veri merkezi proxy'leri

Hızlı ve ucuzdurlar ama kolayca tespit edilirler. Güvenliği düşük siteler veya hızın gizlilikten daha kritik olduğu işler için uygundur. Ancak reCAPTCHA v3 gibi modern CAPTCHA sürümlerinde veri merkezi IP'leri genellikle düşük bir "insan" puanı (0.1 veya 0.3) üretir ve hassas veri çekimi için etkisiz kalır.

Residential proxy'ler

Residential proxy'ler CAPTCHA aşmak için sektör standardıdır. Milyonlarca gerçek kullanıcı IP'sinden oluşan bir havuz sunarlar. GProxy'nin residential ağını kullandığınızda istekleriniz gerçek bir müşterininkinden ayırt edilemez. Bu, manuel tıklama istemek yerine arka planda telemetri izleyen "görünmez" CAPTCHA'lara karşı özellikle etkilidir.

Mobil proxy'ler

Mobil proxy'ler 4G/5G bağlantılarını kullanır. Engellenmesi en zor olanlardır, çünkü yüzlerce meşru kullanıcı çoğu zaman CGNAT (Carrier-Grade NAT) üzerinden tek bir mobil IP'yi paylaşır. Bir mobil IP'yi engellemek binlerce gerçek müşteriyi de engelleyebileceğinden siteler bunu yapmakta çok isteksizdir. En agresif anti-bot sistemlerine karşı "nükleer seçenek" onlardır.

Proxy türü Tespit riski Maliyet En uygun kullanım
Veri merkezi Yüksek Düşük Temel scraping, hız odaklı işler
Residential (GProxy) Düşük Orta E-ticaret, sosyal medya, arama motorları
Mobil Çok düşük Yüksek Yüksek güvenlikli hedefler, hesap oluşturma

CAPTCHA çözücüleri proxy'lerle entegre etmek

En iyi residential proxy'lerle bile, özellikle yüksek hacimde veri çekerken veya "Sepete ekle" gibi hassas işlemler yaparken zaman zaman bir CAPTCHA ile karşılaşırsınız. Bu durumlarda otomatik bir çözücü entegre etmelisiniz. Bu servisler doğrulamayı çözüp bir token döndürmek için ya OCR (Optical Character Recognition) ya da insan gücüne dayalı çözüm çiftlikleri kullanır.

Bir çözücüyle CAPTCHA'yı başarıyla aşmak için, ana isteğinizde kullandığınız aynı proxy'yi çözücüye de iletmeniz gerekir. CAPTCHA ABD'deki bir IP'den çözülür ama token Almanya'daki bir IP'den gönderilirse, site token'ı "session mismatch" olarak reddeder.

Aşağıda, bir proxy üzerinden reCAPTCHA v2 doğrulamasını çözmek için Python ve requests kütüphanesini kullanan pratik bir örnek var:


import requests
import time

# Yapılandırma
API_KEY = 'YOUR_CAPTCHA_SOLVER_API_KEY'
SITE_KEY = 'TARGET_WEBSITE_SITE_KEY'
PAGE_URL = 'https://example.com/protected-page'
PROXY = 'http://username:password@gproxy_host:port'

def solve_captcha():
    # Adım 1: CAPTCHA isteğini çözücü servise gönder
    # Çözücünün aynı IP bağlamını kullanması için proxy bilgilerini ekliyoruz
    payload = {
        'key': API_KEY,
        'method': 'userrecaptcha',
        'googlekey': SITE_KEY,
        'pageurl': PAGE_URL,
        'proxy': PROXY,
        'proxytype': 'HTTP',
        'json': 1
    }

    response = requests.post("http://2captcha.com/in.php", data=payload).json()
    request_id = response.get("request")

    # Adım 2: sonucu periyodik olarak sorgula
    while True:
        time.sleep(5)
        result_url = f"http://2captcha.com/res.php?key={API_KEY}&action=get&id={request_id}&json=1"
        result = requests.get(result_url).json()

        if result.get("status") == 1:
            return result.get("request") # Bu, g-recaptcha-response token'ıdır
        elif result.get("request") == "CAPCHA_NOT_READY":
            continue
        else:
            return None

# Adım 3: engeli aşmak için token'ı kullan
captcha_token = solve_captcha()
if captcha_token:
    data = {'g-recaptcha-response': captcha_token}
    proxies = {'http': PROXY, 'https': PROXY}
    final_response = requests.post(PAGE_URL, data=data, proxies=proxies)
    print("Bypass Successful!")
Proxy ile CAPTCHA nasıl aşılır: ipuçları ve araçlar

İleri seviye stratejiler: tarayıcı parmak izi ve TLS

Cloudflare'in "I'm under attack" modu gibi modern anti-bot sistemleri yalnızca IP'nize bakmaz. Proxy'niz yüksek kaliteli olsa bile tarayıcı parmak iziniz tutarsızsa yine engellenirsiniz. CAPTCHA'yı istikrarlı biçimde aşmak için proxy kullanımınızı tarayıcı profilinizle senkronize etmelisiniz.

User-Agent ve başlık tutarlılığı

User-Agent değerinizin proxy'nizin cihaz türüyle eşleştiğinden emin olun. Mobil proxy kullanıyorsanız başlıklarınız bir mobil tarayıcıyı yansıtmalıdır (Android'de Chrome veya iOS'ta Safari). Accept-Language ya da Sec-Fetch-Dest gibi eksik başlıklar anında şüphe uyandırır.

TLS parmak izi (JA3)

Siteler artık istemciyi tanımlamak için TLS handshake'ini analiz ediyor. Python'un requests gibi standart kütüphanelerinin, gerçek bir Chrome tarayıcısından farklı belirgin bir TLS parmak izi vardır. Bunu aşmak için modern bir tarayıcıyı taklit eden özel TLS bağlamıyla curl_cffi veya httpx gibi kütüphaneler kullanın. GProxy'nin residential IP'leriyle birleştiğinde bu, neredeyse görünmez bir scraping profili oluşturur.

Canvas ve WebGL parmak izi

Yüksek güvenlikli hedefler için playwright-stealth veya puppeteer-extra-plugin-stealth gibi otomasyon çerçevelerinin "stealth" sürümlerini kullanın. Bu eklentiler navigator.webdriver = true gibi headless tarayıcı kimliğini ele veren değişkenleri maskeler. Bu "stealth" tarayıcıyı bir GProxy residential düğümü üzerinden yönlendirerek CAPTCHA'ları tetikleyen entropiyi en aza indirirsiniz.

IP rotasyonu ve oturum kalıcılığını yönetmek

Rate limit'lerden kaçınmak için IP döndürmek ile yeniden kimlik doğrulama CAPTCHA'larından kaçınmak için oturumu korumak arasında hassas bir denge vardır. Çoğu scraping işinde sticky oturumlar tercih edilir.

  1. Sticky oturumlar: sticky oturum, aynı IP'yi belirli bir süre (örneğin 10-30 dakika) korumanızı sağlar. Giriş yapmanız, sepete ürün eklemeniz ve aynı IP adresiyle ödeme yapmanız gereken e-ticaret siteleri için hayati önemdedir.
  2. Rotating proxy'ler: giriş gerektirmeyen basit veri çekimlerinde, her istekte IP'yi döndürmek "hız" tetikleyicilerini önler. GProxy, hem rotasyonlu hem sticky yapılandırmalar için kullanımı kolay endpoint'ler sunar.
  3. Back-off mantığı: 403 Forbidden veya 429 Too Many Requests aldıysanız üstel back-off stratejisi uygulayın. Hemen yeni bir IP ile tekrar denemeyin; hedefin rate-limiter'ının soğuması için birkaç saniye bekleyin.

Önemli çıkarımlar

CAPTCHA aşmak artık yalnızca bir çözücüye sahip olmakla ilgili değil; sofistike kimlik yönetimiyle ilgili. Yüksek kaliteli residential proxy'ler kullanarak CAPTCHA'ların büyük kısmının hiç ortaya çıkmamasını sağlar, zaman kazanır ve çözücü API'lerinin maliyetini düşürürsünüz.

  • IP itibarını önceliklendirin: gelişmiş bot tespiti olan sitelerde GProxy residential proxy'lerini kullanın. Veri merkezi IP'leri çoğu zaman siz ilk isteğinizi göndermeden önce kara listededir.
  • Proxy ve çözücüyü senkronize edin: session mismatch yaşamamak için CAPTCHA'yı her zaman onunla karşılaşan IP üzerinden çözün.
  • Parmak izinizi yönetin: IP, kimliğinizin yalnızca bir parçasıdır. TLS parmak iziniz, başlıklarınız ve tarayıcı meta verilerinizin proxy'nizin "insan" profiliyle eşleştiğinden emin olun.

Pratik ipucu 1: reCAPTCHA v3 olan siteleri çekerken 0.7 veya üzeri bir puan hedefleyin. Bu, yüksek güvenli bir residential IP kullanarak ve önce birkaç düşük güvenlikli siteyi ziyaret edip tarayıcı çerezlerinizi ısıtarak elde edilir.

Pratik ipucu 2: Headless tarayıcıyı yalnızca gerektiğinde kullanın. Veriler gizli bir API üzerinden erişilebiliyorsa, residential proxy'lerle requests kullanmak tam bir tarayıcı ortamı render etmekten 10 kat daha hızlı ve belirgin şekilde daha ucuzdur.

support_agent
GProxy Support
Usually replies within minutes
Hi there!
Send us a message and we'll reply as soon as possible.