¿Qué tan confiable / seguro es QCaptcha?

1

QCaptcha es una forma alternativa de proteger un sitio web de los bots. Se requiere una acción de arrastrar y soltar como esta:

Pregunta

¿Qué tan confiable es esta implementación en comparación con otras mencionadas en este sitio?

    
pregunta random65537 23.07.2012 - 15:56
fuente

1 respuesta

6

Así es como funciona QapTcha:

  1. El JS crea un campo de entrada oculto y lo llena con un valor aleatorio.
  2. Cuando el usuario arrastra con éxito, JS publica ese valor aleatorio en un script PHP y borra el valor del formulario. A continuación, crea una entrada oculta cuyo nombre es el valor aleatorio.
  3. El script PHP verifica que no se haya establecido una variable de sesión y que se haya publicado el valor aleatorio, y establece la variable de sesión en el valor aleatorio.
  4. Cuando el usuario publica el formulario, la secuencia de comandos verifica que existe una entrada oculta con un nombre aleatorio.

Este es un truco bastante bueno, ya que explota el hecho de que la mayoría de los robots completan el formulario rápidamente y no analizan / ejecutan JavaScript.

Sin embargo, es relativamente trivial omitirlo: simplemente falsificamos la funcionalidad de QapTcha por completo. Primero, tomamos el HTML de la página. Luego, enviamos un POST al script PHP de inicialización, que contiene el valor aleatorio. Finalmente, enviamos el POST con el conjunto de campo vacío aleatorio. ¡Bam!

Esto es algo así como un captcha de seguridad a través de la oscuridad, porque cualquier robot que lo sepa puede pasarlo por alto. Sin embargo, es bastante seguro asumir que detendrá la mayoría de los ataques "drive-by" no dirigidos, hasta que QapTcha sea lo suficientemente frecuente como para que valga la pena el tiempo de los desarrolladores de bots.

Una extensión de esta idea es el captcha de interacción de usuario cero, que, en lugar de probar al usuario, prueba el navegador. Comprueba si el navegador puede usar correctamente JavaScript, Flash, CSS, etc., y sondea el movimiento del mouse y las pulsaciones del teclado. Estos datos se envían con el POST del formulario, luego se analizan. Para cada prueba que se pasa, la puntuación se incrementa. Si la puntuación no alcanza un umbral mínimo, se toman medidas, por ejemplo. bloquee la acción, colóquela en la cola de moderación, presente con un captcha de imagen, etc. También hay un truco mediante el uso de CSS donde un cuadro de entrada está ordenado por z detrás de otros elementos, que un usuario nunca completaría pero que un bot. hay un ejemplo funcional de este esquema en alguna parte , que alguien presentó en una charla hace unos años, pero no lo puedo encontrar ahora mismo.

    
respondido por el Polynomial 23.07.2012 - 16:19
fuente

Lea otras preguntas en las etiquetas