¿Por qué las computadoras no pueden hacer las tareas de “demostrar que eres humano” como marcar una casilla?

Hay más en esto que solo rastrear el movimiento del mouse y los patrones de desplazamiento, y como muchas otras personas han profundizado en esos temas, hablaré sobre mi punto.

TL; DR Google (que hace que la casilla de verificación sea reCAPTCHAs) también analiza su historial de navegación, si ha iniciado sesión en una cuenta de Google y lo que carga su navegador.

¿Por qué?

1) Historia

Los bots generalmente no tienen un historial de navegación, pero los humanos sí. Si usa Chrome, Google ya tiene acceso a todos los sitios web que ha visitado (excepto los que están en modo Incógnito … probablemente), cuando los haya visitado y con qué frecuencia lo haya hecho. Por lo tanto, si Google ve que tienes un historial de navegación que corresponde principalmente a lo que un ser humano normal, te deja pasar. En otros navegadores como Firefox, Safari o Edge, es más probable que Google busque en su historial de búsqueda.

Una forma sencilla de probar esta teoría es poner su navegador en modo Incógnito, y tratar de resolver una casilla de verificación reCAPTCHA, e intentarlo nuevamente en el modo de navegación normal (asegúrese de tener un historial de navegación). Cuando estás en el modo de incógnito, es probable que se te muestren imágenes para resolver, mientras que cuando tienes un historial de navegación completo, es probable que te dejen ver cuando haces clic en el cuadro.

2) cuenta de Google

Es probable que una gran mayoría de usuarios de Internet tengan al menos una cuenta de Google con la que hayan iniciado sesión todo el tiempo (bueno, tengo 4 cuentas, pero esa es una historia para otro momento). Bots no se molestará en iniciar sesión en una cuenta de Google, por lo que buscar un inicio de sesión usualmente separaría a los humanos de los robots. Sin embargo, algunos bots tienen cuentas de Google asociadas con ellos, por lo que es probable que Google haga una de dos cosas después de verificar el inicio de sesión: a) Observe el historial de actividades de esa cuenta para ver si es similar a la persona y / o b) use otra factores para asegurar que el usuario sea un humano y no un bot .

Para probar esto, intente una casilla de verificación reCAPTCHA con su navegador de “controlador diario”, luego configure un navegador completamente nuevo (o puede borrar su navegador completo de cookies, caché, historial, registros y datos de formularios guardados, pero no lo recomendaría) e intentaría la misma casilla reCAPTCHA. Es probable que se te permita usar tu controlador diario, pero con el nuevo navegador que no ha iniciado sesión en una cuenta de Google, es probable que no te dejen ingresar.

3) Lo que tu navegador carga

Los bots son “ciegos”. Lo que quiero decir cuando digo esto es que los bots no necesitan imágenes o estilos CSS (el código que le dice a su navegador qué fuentes usar, qué formas poner en pantalla, etc.) para “ver” una página web, ya que todas ellas realmente Hacer es rastrear a través del código HTML para llegar a lo que quieren. Para ahorrar tiempo (y ancho de banda), es muy probable que los bots no carguen imágenes y estilos CSS, lo que les permite cargar páginas más rápidamente, lo que aumenta su productividad. Sin embargo, como la mayoría de los humanos pueden ver, los navegadores que utilizan los humanos probablemente cargarán imágenes y estilos CSS, por lo que Google podría verificar si un usuario es un humano o un bot.

Realmente no conozco una buena manera de probar esto, así que si alguien me puede decir un buen método, lo actualizaré.

Los captchas, al menos el reCAPTCHA de Google, son mucho más complejos que simplemente “marcar una casilla”.

En el pasado, la mayoría de los captchas se basaban en la tediosa y ardua tarea de traducir texto-como-una imagen distorsionada en texto regular. Sin embargo, la mayoría de los sistemas de inteligencia artificial actuales pueden resolver este tipo de captcha de forma fácil y precisa.

Así que Google tomó un enfoque diferente: identificar el comportamiento del usuario.

El nuevo sistema reCAPTCHA prioriza la información de fondo, como la ubicación del puntero del mouse, la posición de desplazamiento y varios otros factores sobre las tareas que las máquinas completan fácilmente, como la decodificación de texto de una imagen.

Es mucho más que una casilla de verificación. Los servicios de Captcha analizan muchos factores para determinar que eres un humano.

Pueden, pero los robots nunca ven las tareas simples de la casilla de verificación, ven las pruebas de comparación de imágenes más complejas. ¿Cómo?

Al ser un usuario de Internet normal en su hogar, envía una gran cantidad de información a los sitios web que visita: varias credenciales de inicio de sesión, cookies de seguimiento de publicidad, su dirección IP, la versión de su navegador, su ubicación geográfica, el tamaño de su pantalla, etc. supervise cosas como los movimientos del mouse, el tiempo promedio para hacer clic en un enlace, los estilos de escritura y otras formas en que usa los sitios web. Google (ejecutan el servicio reCAPTCHA) utiliza parte o toda esta información para crear una huella digital para usted como usuario, incluso si no inicia sesión en ninguna parte con una cuenta de Google. Y, mientras sea un usuario “agradable” que no ponga grandes cargas en sus servidores o en los servidores de sus clientes o que intente registrarse para obtener cientos de direcciones de correo electrónico, no le importa demasiado si es humano. o no, por lo que te dan la casilla de verificación fácil.

Sin embargo, ¿qué sucede si no es un usuario “agradable” y en realidad es un robot que navega por miles de páginas por segundo? Se dan cuenta de esto, y te ponen en una lista negra para hacer las pruebas más largas de “prueba que eres un humano”.

Si alguna vez ha usado el navegador TOR, entonces la mayor parte o toda la información de identificación que usa Google para tomarle las huellas digitales está oculta para ellos, y todo lo que no está oculto (como la dirección IP) se comparte entre muchos usuarios. Cuando Google ve una gran cantidad de tráfico desde una única ubicación a muchos sitios web diferentes, deciden rápidamente que esta IP no es un usuario “agradable” y le brinda las tareas más complejas. Intente usar TOR para visitar un sitio web que sepa que usa las casillas de verificación reCAPTCHA.

Ellos pueden. Captcha está en una carrera para mantenerse por delante de la IA y los crackers de software que pueden resolver el captcha. Existen varias bibliotecas abiertas y empresas que resuelven captcha de forma automatizada. Captcha necesita continuar evolucionando más rápido que los algoritmos que lo resuelven. Es una carrera Al igual que crypto, debe mantenerse a la vanguardia de la potencia de cálculo que puede generar tablas de búsqueda de arco iris. Al igual que Bitcoin necesita requerir más potencia de cómputo de lo que haría económicamente factible controlar la red o, al menos, falsificarla. Todo es una carrera hacia la meta, que es singularidad. Llegaremos a ese punto un día y la humanidad cambiará de manera material para siempre.

Google: “Python libs para craquear el captcha”. Por lo general, cualquier tecnología anterior a los cinco años puede ser fácilmente resquebrajada. Hay algunos como el captcha de yahoo que aún son difíciles de descifrar.

Nada puede probar que eres humano. Simplemente obtiene pruebas suficientes de que eres humano.

Si sus acciones no son tan disruptivas como las de un bot, entonces todo lo que necesita pasar es una prueba de casilla de verificación, que verifica si hizo clic en la casilla de verificación de forma robótica (ubicación del clic, movimiento del mouse). Se necesitaría un poco de esfuerzo para codificar un bot que pase esta comprobación moviendo el mouse de forma humanoide.

Si sus acciones continúan siendo disruptivas o como bot, se enfrentará a la tarea de “elegir cuál de estas imágenes tiene carteles”. Se necesita mucho tiempo e incluso un poco de I + D para escribir un robot para pasar estas pruebas tan rápido como se espera que un humano. La idea es que, a pesar de que nunca se puede demostrar que se trata de una IA humana en lugar de una IA de vanguardia, se libra de la gran mayoría de spammers / botters, por lo que el problema está resuelto.

Porque el captcha busca imperfecciones en el movimiento y comprobación de la caja. Un guión marcaría la casilla a la perfección, pero la mano de un humano temblará o se desplazará hacia abajo a veces.

Incluso si no hay captcha y haces que un script haga una búsqueda en google, aparecerá este mensaje.

¡Ellos pueden!

Las computadoras pueden sortear CUALQUIER COSA que provenga de otra computadora, CUALQUIER COSA? El campo de juego es el mismo.

Una cosa para recordar es que para que alguien piratee tu tarea de “prueba que eres humano” tiene que haber una demanda. A nadie le importa piratear el disuasorio del Sr. Basement Programmer porque está solo en uno de los sitios web más, lo que da la apariencia de ser impresionante.

Ahora, con un método disuasivo de bot más frecuente como CAPTCHA, la demanda está ahí y, por lo tanto, un equipo de hackers para derrotarlo, fácilmente.

¡Con eso, siéntate y mira este video para una sonrisa hoy! Robot supera “No soy un robot” Captcha

Los CAPTCHA de “marcar una casilla” en realidad monitorean su comportamiento mucho antes de marcar la casilla. Buscan cosas como movimientos suaves e imperfectos del mouse, desplazamiento lo suficientemente lento como para leer lo que hay en la página, etc. Si lo que han visto les hace pensar que eres un humano, la caja simplemente verifica de inmediato.

Si no están seguros, te muestran algún otro desafío, como “haga clic en las señales de la calle en esta imagen”. Estos desafíos son difíciles para las computadoras porque el reconocimiento de objetos en imágenes aún está siendo investigado por expertos en inteligencia artificial. De hecho, Google utiliza los resultados de estos desafíos para ayudar a enseñar a sus propios AI a realizar mejor estas tareas. Una vez que hayan enseñado a sus AI a leer las señales de tráfico, cambiarán a un desafío diferente que aún es demasiado difícil para las computadoras.

Ellos pueden, por supuesto; es solo una cuestión de cuánto esfuerzo se piensa que los hackers pueden gastar para derrotar una barrera CAPTCHA. Incluso los realmente centrados en el ser humano (como “¿Cuál de estas fotos contiene un letrero?”) Puede ser manejado por un Sistema Experto avanzado; El problema es que este tipo de software no se generaliza, por lo que el siguiente truco de CAPTCHA requiere un nuevo exploit para derrotar. En algún momento (hasta ahora) los hackers pasan a pastos más verdes. A menos que realmente quieran piratearte en particular , en cuyo caso estás bastante bien condenado.

Es posible omitir las tareas de captcha programáticamente. Sin embargo, al hacerlo, todavía no ha derrotado el verdadero propósito de estas tareas aparentemente inútiles. Usted ve, la verdadera razón por la que se utilizan los captchas es para evitar que un usuario explote un servicio al hacer bots automatizados. La casilla de verificación captcha fallará si lo haces demasiado rápido, lo que hace que la automatización sea increíblemente lenta y, por lo tanto, redundante. Esto obliga a los usuarios a usarlo de la forma en que estaba destinado a ser utilizado.

La mayoría de los usuarios malintencionados necesitan acceso rápido y repetido para poder explotar cualquier servicio, y los captchas los cierran de manera efectiva.

Ellos pueden. Simplemente no siempre están programados para molestar.

Hace años estaba trabajando en un proyecto con un chico que solo conocía a través de IRC. Necesitábamos una forma de compartir un archivo de texto de modo que pudiéramos editarlo a medida que aprendíamos más sobre el proyecto, olvidé qué era el proyecto, y en ese momento tenía una cuenta de alojamiento web con acceso de shell, por lo que combiné un sencillo sencillo. Lo de la página wiki, que podría hacer precisamente cuatro cosas:

  1. Muestra la versión actual del archivo de texto como una página web normal. En esta página también mostraba un enlace con la etiqueta “Editar”, haciendo que el script …
  2. … mostrar la versión actual del archivo de texto dentro de un control de área de texto, de modo que podamos editarlo y presionar el botón “Guardar”, en el que mi pequeño script …
  3. … guarde la nueva versión del archivo de texto y luego repita desde (1).
  4. En la parte inferior de la página representada en (1) había un pequeño campo de entrada que nos permitiría agregar notas rápidas al final del archivo de texto.

Por alguna razón, algunos robots de spam encontraron este sistema wiki de una sola página y comenzaron a anunciar una marca de relojes caros, medicamentos famosos para la disfunción eréctil y todo el grupo, a través del formulario “Agregar nota”. Como contramedida, puse una pequeña casilla de verificación que inicialmente no estaba marcada, pero tendría que revisar la secuencia de comandos para aceptar la nueva nota.

El spambot se prendió rápidamente, así que mejoré mi juego: agregué un campo de entrada oculto que inicialmente estaba configurado como “Soy un robot sucio” o algo parecido. Una pieza de JavaScript lo configuraría como “marcado” o “sin marcar” y luego configuraría la casilla de verificación con el mismo valor.

En otras palabras, mi prueba para determinar si era un spambot que llenaba el formulario de “Agregar nota” consistía en establecer si el agente de usuario ejecutaba o no una simple pieza de JavaScript.

Tenga en cuenta que esto no suele ser una prueba a prueba de fallas, pero para una wiki simple de una sola página con solo dos usuarios activos, fue lo suficientemente bueno como para mantener nuestros archivos de texto mantenidos en colaboración sin correo no deseado, porque aparentemente el spambot no pudo ser molestado realizar algunas instrucciones de JavaScript.

Las computadoras pueden resolver la mayoría de esas tareas no triviales. Ese es un error común en las computadoras.

Pueden marcar una casilla, pueden resolver captchas y con algo de fuerza bruta incluso resolver tareas más complejas, como identificar elementos en una foto.

Como desarrollador, he tenido que lidiar con una gran cantidad de problemas como este en el pasado. No evitará que un desarrollador con experiencia piratee tu aplicación web, pero al menos pasarán más tiempo haciéndolo.

Ellos son derrotados todo el tiempo. Dejaré que el lector haga un ejercicio sobre cómo hacer esto, pero el V8, el selenio, el autoit, la magia de la imagen, el tesseract y el turco mecánico hacen que la solución de estos problemas sea trivial.

Los controladores web de huellas digitales se están volviendo más populares, pero tienen una tasa de falsos positivos.

La siguiente es una explicación de cómo las computadoras usan la psicología cognitiva humana y los sesgos para identificar al usuario como humano.

CAPTCHAs: cómo las computadoras usan la ciencia cognitiva para identificar a los usuarios como humanos

una computadora puede programarse para marcar una casilla, sin embargo, las letras sesgadas son más difíciles de identificar para las computadoras. ¿Cómo le dice a una computadora que una letra lateral R es una R, especialmente si está también alargada o en cursiva?

Esas pruebas de captcha son cosas que las computadoras pueden resolver. Es solo que los humanos pueden resolverlos rápidamente mientras que las computadoras toman tiempo. Si no responde lo suficientemente rápido, ellos asumen que usted es una computadora y lo excluyen.

Ellas hacen.

reCAPTCHA es un sistema de captcha diseñado por Google. Google prueba algunos de sus robots haciendo que resuelvan los problemas de reCAPTCHA. Usan los datos de estas interacciones para mejorar tanto reCAPTCHA como sus robots.

Nota al margen, también usan reCAPTCHA para digitalizar libros.

Probablemente cae bajo el “problema del marco”.

La historia corta es que es muy difícil automatizar la determinación de lo que es relevante e irrelevante en un entorno y, por lo tanto, qué y cómo abstraer las cosas a un nivel de detalle que facilite la interacción funcional.

La mayoría de los humanos son grandes en ese problema, pero con los enfoques actuales, las computadoras son terribles.

Pueden, buuuutttt …

En realidad, no están intentando detener a los bots. Están intentando detener a los robots que no benefician a su modelo de negocio.

Una vez que tu bot se comporta de una manera que les ayuda a ganar dinero, no les importa.

Espero haber respondido a tu pregunta.

Sí pueden….

Bienvenidos al mundo de los ROBOTS del siglo XXI.

Aquí mira este enlace de YouTube