sábado, 7 de enero de 2017

Bots: resolviendo los re-capchas: human-tunnel by Juanmv94

Antes cuando los captchas eran simples textos deformados con lineas pintadas por encima no era demasiado complicado mediante OCR obtener una determinada tasa de acierto resolviendo los catchas en los bots.

Ahora con la tecnología re-captcha de Google, implementada en muchísimos sitios esta tarea es casi imposible, ya que las técnicas de visión artificial aunque han avanzado mucho estos últimos años, siguen siendo insuficientes para la complejidad que este tipo de capchas presentan.

Nos podríamos calentar la cabeza haciendo unos algoritmos de visión artificial super avanzados... O podríamos resolver este problema de una forma sencilla, eficiente, y que nadie se esperaba. Como dijo Bill Gates: “Siempre escojeré a un vago para hacer un trabajo difícil… porque, encontrará una manera sencilla de hacerlo”


Pues bien: tenemos un servicio (pagina) web con usuarios que pueden registrarse, loguearse, interactuar,... Y aparte tenemos nuestro bot encargado de hacer alguna función repetitiva (buscar en Google, registrar cuentas, publicar comentarios,...) que puede estar o no relacionada con nuestra web.

Cuando a nuestro bot le aparezca un captcha, solo tendremos que enviar ese captcha a la primera persona de nuestra web que vaya a hacer algo, ya sea registrarse, loguearse, o cualquier otra actividad (esta decisión dependerá de la cantidad de actividad de nuestra web en proporcion con la del bot). ¡Esa persona lo resolverá por nosotros! Aparte le daremos mayor seguridad a nuestra web de una forma gratuita.

La forma de hacerlo sería algo así: 
-Nuestro servidor establece una conexion HTTPS con re-capcha y le mostramos al usuario ese mismo re-capcha desde nuestra web, (normalmente tambien desde HTTPS) creando una conexion parecida a un proxy en la que nuestro servidor hace un man-in-the-middle.
-Cuando el usuario resuelva correctamente el captcha (A veces puede darse el caso de que lo fallase) nuestro servidor que intercepta la comunicación lo sabrá, permitiendole acceso al usuario, y continuando la ejecución del bot.

De momento es solo un concepto, que no debería ser muy dificil de implementar.
Comentad cualquier duda que tengáis, comentario, o agradecimiento.

No hay comentarios:

Publicar un comentario