¿Desea omitir el formulario CAPTCHA realizado con 100% JavaScript?

2

Hay un sitio web que encontré donde el JavaScript maneja la respuesta del CAPTCHA y luego procede a disparar lo que creo que es una solicitud AJAX.

Entonces el flujo es el siguiente:

Button -> CAPTCHA-> AJAX

¿Qué me impide decir, por ejemplo, que AJAX me solicite? Es todo el lado del cliente. ¿Vale la pena probar y revisar todo el código para encontrar esa solicitud? ¿Cuáles son algunas de las medidas que se pueden usar dentro de JavaScript en general para prevenir este caso?

    
pregunta makakas 28.05.2016 - 01:45
fuente

2 respuestas

5

Si es un CAPTCHA seguro, el mensaje AJAX enviará la entrada del usuario a un servidor. El servidor validará la entrada y devolverá un token. El token será insertado en el formulario por el Javascript. Cuando se envíe el formulario, el servidor validará el token con el servicio CAPTCHA (esto podría ser una llamada de servicio web o una validación de firma). Entonces, el hecho de que exista AJAX no le dice nada sobre la seguridad de CAPTCHA, excepto que podría ser seguro.

En cuanto a lo que le impide disparar la solicitud de AJAX, la respuesta es nada. Pero para hacerlo correctamente, deberá proporcionar la respuesta al CAPTCHA, algo que se supone que se supone es difícil de determinar para un algoritmo informático.

    
respondido por el Neil Smithline 28.05.2016 - 02:20
fuente
2

Si la validación (es decir, la verificación de que la entrada del usuario coincide con el texto en el CAPTCHA) se realiza desde el lado del cliente, nada le impide pasarlo por alto. Ni siquiera tiene que leer el código; solo mire la solicitud HTTP que AJAX le envía y cópiela. Esto se puede hacer con la herramienta de desarrollo en cualquier navegador.

Una regla muy básica para la seguridad web es nunca confiar en el cliente. El hecho de que el cliente diga que la entrada del usuario coincide con el CAPTCHA, no significa que sea cierto. El servidor debe hacer esa comparación y verificar que la entrada del usuario fue correcta.

Podría intentar ofuscar el código en el cliente, pero no valdría la pena. Sin la validación adecuada del servidor, un CAPTCHA no vale nada.

    
respondido por el Anders 28.05.2016 - 01:49
fuente

Lea otras preguntas en las etiquetas