Un potenziale attacco di phishing CAPTCHA contro reCAPTCHA?

3

Nell'API di reCAPTCHA (senza plug-in), la parte chiave è

<iframe src="http://www.google.com/recaptcha/api/noscript?k=your_public_key"height="300" width="500" frameborder="0"></iframe><br>
 <textarea name="recaptcha_challenge_field" rows="3" cols="40">
 </textarea>
 <input type="hidden" name="recaptcha_response_field"
     value="manual_challenge">

Il sito web che incorpora questa API richiede effettivamente all'utente di recuperare un iframe da reCAPTCHA utilizzando una chiave pubblica . Supponiamo che stackexchange stia usando reCAPTCHA e che abbia una chiave pubblica A. E voglio attaccare stackexchange aggirando il suo CAPTCHA.

Supponiamo di avere un sito Web con utenti legittimi. Posso incorporare un'API reCAPTCHA nel mio sito Web che utilizza la chiave pubblica A, che è la chiave pubblica reCAPTCHA di stackexchange. Ora dopo che i miei utenti hanno risolto il CAPTCHA, presenteranno un ID sfida CAPTCHA e una soluzione al mio sito web. Successivamente, posso inviare lo stesso ID challenge e la soluzione a stackexchange utilizzando uno script automatico. Quindi ho superato con successo la sfida CAPTCHA di stackexchange.

Non sono sicuro che questo attacco sia pratico o meno. Supponiamo che il browser dei miei utenti non riempia il campo del referrer HTTP nella richiesta di reCAPTCHA, il che impedisce a reCAPTCHA di sapere che il mio sito Web sta effettivamente utilizzando la chiave pubblica di stackexchange.

    
posta RandyTek 03.10.2014 - 20:58
fonte

1 risposta

0

Sembra che nessuno risponda a questa domanda.

Secondo il mio esperimento, Google utilizza Referer HTTP per limitare l'utilizzo di reCAPTCHA pubblico. Quando registri un nuovo account reCAPTCHA, Google ti chiederà di digitare il sito (dominio) in cui utilizzerai la chiave pubblica reCAPTCHA. Quindi, quando un utente visita il tuo sito web e sta inviando una richiesta a reCAPTCHA per recuperare l'immagine CAPTCHA, il suo browser inserirà il dominio del sito web che sta visitando nel campo di riferimento HTTP. Quindi reCAPTCHA saprà se il dominio del sito Web che utilizza la chiave pubblica è lo stesso del dominio che detiene la chiave pubblica. In caso contrario, reCAPTCHA emetterà un avviso nel browser.

    
risposta data 21.10.2014 - 18:45
fonte

Leggi altre domande sui tag