Saltar al contenido principal
GLOSARIO

Suplantación de User-Agent

Toshendra Sharma

Por Toshendra SharmaFundador y CEO, AgentCredia · Updated November 13, 2026

Enviar un encabezado User-Agent que tergiversa al cliente, por ejemplo un script que afirma ser un navegador o un scraper que afirma ser un rastreador conocido.

Qué es la suplantación de user-agent

Cada cliente de HTTP puede enviar un encabezado User-Agent que se describe a sí mismo: el nombre y la versión de un navegador, el nombre de un rastreador, un identificador de biblioteca. El encabezado es autodeclarado. Nada en HTTP verifica que sea verdadero, así que cualquier cliente puede enviar cualquier valor. La suplantación de user-agent es la práctica de enviar un valor que tergiversa al cliente, por ejemplo:

  • un script de automatización que se presenta como un navegador de escritorio actual,
  • un scraper que afirma ser un rastreador de búsqueda muy conocido para obtener un trato favorable,
  • un agente de IA que usa una cadena genérica de navegador para que se lo trate como a una persona.

Por qué importa

Muchos sistemas todavía toman decisiones a partir de la cadena user-agent: incluir rastreadores conocidos en una allowlist, servir contenido distinto a bots o excluir la automatización de las analíticas. Cada una de esas decisiones hereda la debilidad del encabezado. Si una política dice "allow anything that claims to be crawler X", permite a cualquiera que copie la cadena de crawler X.

Para aplicaciones que reciben tráfico de agentes de IA, esto importa más con el tiempo. Los agentes cada vez más se ejecutan dentro de navegadores reales o de marcos de navegador headless, así que sus cadenas de user-agent se ven exactamente como las de navegadores de personas. Otros se identifican con honestidad. El encabezado por sí solo no puede decirte cuál es cuál. Nuestra publicación sobre cómo saber si el tráfico de un sitio web proviene de agentes de IA analiza las señales que funcionan mejor.

Mejor evidencia que el encabezado

  • Firmas criptográficas. Con HTTP Message Signatures y el trabajo de Web Bot Auth, un cliente demuestra que posee una clave publicada por el operador que nombra. Una cadena user-agent copiada no puede reproducir una firma.
  • Verificación publicada por el operador. Algunos operadores de rastreadores publican rangos de IP o admiten comprobaciones de reverse DNS, lo que dificulta la suplantación más que el encabezado por sí solo. Google documenta una comprobación de reverse DNS y rango de IP para sus rastreadores, Microsoft ofrece una herramienta Verify Bingbot, y OpenAI publica archivos de direcciones IP para cada uno de sus bots. La guía de Anthropic para su agente de navegador alojado afirma claramente que cualquiera puede enviar el mismo encabezado User-Agent y recomienda comprobar sus direcciones IP publicadas.
  • Comprobaciones de consistencia. Comparar el cliente declarado con los detalles del protocolo y las señales de interacción puede mostrar cuándo una afirmación no encaja, aunque esto produce inferencia, no prueba.
  • Credenciales. Para APIs, una clave de API o un token te dice qué cuenta está llamando, independientemente de lo que diga el encabezado.

Conceptos erróneos comunes

  • "Un user-agent de navegador significa una persona." Los navegadores headless y los marcos de agentes envían cadenas de navegador de forma rutinaria.
  • "Un user-agent de rastreador significa que es el rastreador." Sin una firma o una comprobación de verificación del operador, solo es una afirmación.
  • "La suplantación siempre es maliciosa." Algunas herramientas legítimas envían cadenas genéricas para evitar que se les sirvan páginas rotas. La suplantación es un motivo para restar valor al encabezado, no una prueba de mala intención.

Cómo trata Proof of Actor la cadena user-agent

Proof of Actor registra una afirmación de user-agent como evidencia Declared: algo que el cliente declaró, que puede ser verdadero o no. Nunca eleva por sí solo una declaración a Verified. Una solicitud cuya única evidencia de identificación es una cadena user-agent de rastreador se etiqueta en consecuencia, y cuando la evidencia es insuficiente el resultado es Unknown en lugar de una conjetura segura. Tus políticas en Route pueden entonces tratar de forma distinta a un agente firmado y verificado y a uno autodeclarado, por ejemplo permitiendo a ambos en rutas de solo lectura pero aplicando límites más estrictos al declarado.

Consulta cómo funcionan las bases de evidencia o solicita acceso anticipado.

Fuentes

Ve la inteligencia de actor en tu propia app.

¿Prefieres hablar primero? Habla con los fundadores