Seguridad web

CAPTCHA

Se lee en aproximadamente 5 minutos

Qué es CAPTCHA

CAPTCHA (Completely Automated Public Turing test to tell Computers and Humans Apart, prueba de Turing pública y completamente automatizada para distinguir ordenadores de humanos) es un test que sirve para determinar si quien accede a un sitio web es una persona o un bot. El concepto fue formalizado en 2000 por Luis von Ahn y sus colegas de la Universidad Carnegie Mellon, y se emplea ampliamente para bloquear el spam en formularios, los ataques de fuerza bruta contra páginas de acceso y la compra masiva automatizada de entradas.

Los primeros CAPTCHA pedían leer texto distorsionado, pero a medida que mejoró la precisión del reconocimiento de texto dejó de sostenerse la premisa de que solo un humano podía leerlo. En 2026, el enfoque predominante consiste en estimar el riesgo de cada acceso y pedir una comprobación adicional únicamente cuando algo resulta sospechoso, en lugar de plantear un desafío a todo el mundo.

Evolución de reCAPTCHA - v1 a v3

reCAPTCHA, de Google, es la implementación más conocida de CAPTCHA. El recorrido de sus versiones muestra con precisión dónde se estancó la detección de bots y hacia dónde se desplazó.

reCAPTCHA v1 (texto distorsionado)
Mostraba imágenes de texto distorsionado para que el usuario las transcribiera. Servía además como herramienta de digitalización de libros, al presentar palabras que el OCR no había conseguido leer (Google adquirió reCAPTCHA en septiembre de 2009). En diciembre de 2014, Google anunció que su propia investigación había resuelto incluso la variante más difícil de texto distorsionado con una precisión del 99,8 %, y concluyó que el texto distorsionado por sí solo ya no era un test fiable.
reCAPTCHA v2 (2014-)
Introdujo la casilla "No soy un robot" (publicado en diciembre de 2014). Cuando el clic no basta para decidir, muestra un desafío de selección de imágenes (semáforos, pasos de peatones, autobuses). Qué indicios utiliza para tomar esa decisión no se ha publicado.
reCAPTCHA v3 (2018-)
No pide ninguna acción al usuario y devuelve una puntuación de 0.0 a 1.0 a partir de cómo se interactúa con el sitio (publicado en octubre de 2018). Solo exige verificación adicional cuando la puntuación es baja, es decir, cuando hay sospecha de bot. No añade fricción, pero elegir el umbral de bloqueo queda en manos de quien opera el sitio.

Circula ampliamente la idea de que los desafíos de semáforos y pasos de peatones de reCAPTCHA v2 recogen datos de entrenamiento para la conducción autónoma de Google, pero no hay ninguna fuente primaria que lo respalde. Lo único que puede afirmarse con seguridad es que, igual que v1 estaba ligado a la digitalización de libros, las respuestas se acumulan como etiquetas de esas imágenes; el uso que se les da no se ha publicado.

Mecanismo técnico de CAPTCHA

Los sistemas CAPTCHA distinguen a los bots de las personas mediante tres enfoques principales.

  • Basado en desafío: plantea tareas fáciles para las personas y difíciles para los bots, como texto distorsionado, clasificación de imágenes o puzles deslizantes. Su principal inconveniente es la fricción para el usuario, que eleva la tasa de rebote.
  • Basado en análisis del comportamiento: en lugar de plantear una tarea, estima el riesgo a partir de cómo se interactúa con el sitio y pide una comprobación adicional solo cuando algo resulta sospechoso. reCAPTCHA v3 sigue este enfoque. En la mayoría de los casos el usuario no percibe el CAPTCHA, pero las señales en las que se apoya cada servicio no se publican.
  • Proof of Work: hace que el navegador resuelva un cálculo ligero, con lo que encarece el envío masivo de solicitudes. Cloudflare describe Turnstile como una serie de pequeños desafíos no interactivos que incluyen proof of work, proof of space y la comprobación de la presencia de determinadas API web. La carga por solicitud es mínima, pero se acumula para quien envía miles o decenas de miles.

Los CAPTCHA reales no dependen de una sola técnica: combinan varios elementos de juicio para estimar el riesgo. Ningún servicio publica esa combinación exacta, pero la dirección IP de origen y la información del entorno del navegador legible como huella del navegador llegan necesariamente al servidor.

Problemas de accesibilidad

CAPTCHA exige demostrar que se es humano, pero no todas las personas pueden demostrarlo del mismo modo. Quienes tienen discapacidad visual no pueden completar desafíos de imágenes; quienes tienen discapacidad auditiva no pueden usar CAPTCHA de audio; quienes tienen discapacidad motriz pueden tener dificultades con el ratón o la pantalla táctil.

Las Pautas de Accesibilidad para el Contenido Web (WCAG) del W3C exigen que un CAPTCHA vaya acompañado de un texto que describa su propósito, junto con formas alternativas dirigidas a distintos sentidos, como la vista y el oído. reCAPTCHA v2 ofrece un desafío de audio como alternativa, pero la mejora del reconocimiento del habla ha hecho que los CAPTCHA de audio sean cada vez más fáciles de resolver de forma automática.

Los CAPTCHA "invisibles" como reCAPTCHA v3 y Cloudflare Turnstile evitan la barrera del desafío en sí, porque no piden nada al usuario. Sin embargo, como la decisión sigue apoyándose en cómo se interactúa con la página, quienes dependen de lectores de pantalla o navegan solo con el teclado pueden seguir siendo interpretados como bots.

Evasión por IA y futuro del CAPTCHA

CAPTCHA parte de la premisa de que ciertas tareas son fáciles para las personas y difíciles para la IA, y esa premisa se está erosionando con rapidez.

  • IA de reconocimiento de imágenes: localizar semáforos y pasos de peatones es exactamente el tipo de trabajo que los modelos de detección de objetos de propósito general realizan a diario, de modo que ya no se sostiene la premisa de diseñar la clasificación de imágenes como una tarea que solo pueden hacer las personas.
  • Servicios de resolución de CAPTCHA: existen "granjas de CAPTCHA" que resuelven los desafíos de forma manual y servicios que combinan el procesamiento automático con intervención humana. El precio por resolución queda diluido en el coste global de un ataque, así que difícilmente supone una barrera para quien opera una botnet.
  • Herramientas de automatización de navegadores: los marcos de automatización como Puppeteer y Playwright manejan un navegador real y pueden reproducir la forma de interactuar de una persona. Incluso los métodos que observan cómo se interactúa tienen difícil distinguirlos.

Como la defensa basada únicamente en CAPTCHA tiene límites, lo realista es combinar varias capas: limitación de tasa mediante WAF, atestación de dispositivo y verificación de identidad con claves de acceso. También avanza la estandarización de la vía que evita mostrar un CAPTCHA: Privacy Pass, un mecanismo que acredita mediante un token la legitimidad de un dispositivo o una cuenta, se publicó como RFC 9576 en junio de 2024. El papel de CAPTCHA está pasando de ser una herramienta para "eliminar los bots por completo" a una para "encarecer el coste de los bots".

Conceptos erróneos comunes

Con CAPTCHA se bloquean completamente los bots
Existen servicios de resolución y evasión por IA. CAPTCHA es una herramienta para encarecer el coste de los bots, y solo es efectivo combinado con limitación de tasa, reputación IP y WAF.
Las imágenes del CAPTCHA tienen una sola respuesta correcta
Los desafíos de imágenes de reCAPTCHA v2 mezclan imágenes con una respuesta clara y otras que caen en una zona gris, como un poste que puede pertenecer o no a un semáforo. También las personas discrepan en esos casos, y una selección algo distinta en las imágenes limítrofes puede pasar igualmente. Dónde se sitúa el límite de lo que se considera respuesta correcta no se ha publicado.
CAPTCHA solo aparece ante accesos sospechosos
Qué provoca la aparición de un desafío no se ha publicado, y la sospecha de bot no es la única condición. En la práctica también puede aparecer al acceder a través de una VPN o un proxy, o desde un entorno que no se usa habitualmente, y no es raro que se pida repetidamente a usuarios legítimos.
Compartir

Términos relacionados

Artículos relacionados