4 puntos por GN⁺ 2025-08-05 | 2 comentarios | Compartir por WhatsApp
  • Perplexity usó un crawler web que ocultaba su identidad para eludir una directiva de no rastreo
  • Se detectaron conductas como ignorar el archivo robots.txt y cambiar IP y User Agent de forma continua
  • En una prueba con dominios nuevos se confirmó que Perplexity accedió al contenido del sitio pese a las configuraciones de restricción
  • Cloudflare, para evitar este tipo de comportamiento, excluyó a Perplexity de su lista de bots verificados y ajustó sus reglas de gestión
  • A diferencia de operadores de bots bien intencionados como OpenAI, se señaló como problemática la conducta encubierta de Perplexity

Resumen del uso de crawlers encubiertos por Perplexity

  • Perplexity, como motor de respuestas basado en IA, inicialmente rastrea sitios web con un User Agent reportado oficialmente
  • Sin embargo, al enfrentarse a bloqueos de red, cambia el User Agent para ocultar su identidad y también intenta acceder usando distintos ASN (números de sistema autónomo)
  • En ese proceso se detectaron numerosos intentos de ignorar o ni siquiera solicitar el archivo robots.txt

Principios de confianza entre sitios web y crawlers y conductas problemáticas

  • Durante décadas, Internet ha evolucionado sobre la base de la confianza, y los crawlers también deberían regirse por transparencia, propósito y reglas claras de comportamiento
  • Los crawlers deben respetar las reglas y prioridades del propietario del sitio, y la conducta observada en este caso de Perplexity va en contra de ese principio
  • Por ello, Cloudflare excluyó a Perplexity de la lista oficial de bots verificados y aplicó reglas de gestión adicionales para detectar y bloquear crawlers stealth

Casos de prueba y detección

  • Cloudflare realizó pruebas sobre el comportamiento de rastreo de Perplexity creando un dominio nuevo
    • Bloqueó el acceso automatizado con robots.txt y configuró reglas adicionales de WAF
    • Bloqueó el User Agent e IP oficiales de Perplexity, pero aun así se confirmó que siguió recopilando el contenido del sitio con identidad oculta
  • Perplexity intentó acceder al contenido tanto con su User Agent oficial como con uno stealth, y este último emula un navegador real (Chrome)
Tipo Ejemplo de User Agent Solicitudes diarias
Oficial Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; Perplexity-User/1.0; +https://perplexity.ai/perplexity-user) 20 a 25 millones
Encubierto Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36 3 a 6 millones
  • Usó varias IP y ASN que no estaban en el rango IP oficial y fue cambiando IPs continuamente para intentar eludir políticas de bloqueo
  • Como resultado, esta actividad se identificó en decenas de miles de dominios y millones de solicitudes, y Cloudflare la clasificó con señales de red y machine learning

Casos de elusión y límites del crawler encubierto

  • Cuando se bloquea el crawler stealth, Perplexity intenta responder usando fuentes externas de otros sitios web, entre otros recursos
  • Sin embargo, en esos casos también se observó una caída clara en el nivel de detalle del contenido

Criterios para operadores de bots de buena fe y buenas prácticas de OpenAI

  • Un bot bien operado debería tener principios como transparencia, identificación clara, divulgación del objetivo de actividad, uso de bots separados por tipo de actividad y cumplimiento de reglas de webmaster como robots.txt
  • OpenAI publica de forma transparente IP y User Agent oficiales, así como el propósito de su actividad de crawler, y respeta estrictamente robots.txt
  • En pruebas reales, el crawler de ChatGPT también deja de intentar rastrear cuando detecta configuraciones disallow o bloqueos de red
  • También adopta de forma activa métodos de autenticación estandarizados como Web Bot Auth

Medidas de protección y respuesta

  • Todo crawling desde User Agents no declarados de Perplexity es detectado y bloqueado por el sistema de gestión de bots de Cloudflare
  • Los clientes con reglas anti-bot o reglas de challenge ya activadas en Cloudflare ya cuentan con protección
  • Las reglas de administración para bloquear crawlers stealth están disponibles para todos los clientes, incluidos los gratuitos
  • Tras el anuncio de Content Independence Day, más de 2.5 millones de sitios web aplicaron políticas de no rastreo para IA
  • Cloudflare está mejorando continuamente sus sistemas y tecnologías de respuesta frente a los intentos de evasión de operadores de bots en constante evolución

Esfuerzos de política y perspectivas futuras

  • Cloudflare participa activamente en la discusión de estandarización de extensiones de robots.txt junto con expertos técnicos y de política de todo el mundo, incluyendo la IETF
  • Avanza hacia el establecimiento de reglas de crawlers confiables, enfatizando transparencia y cumplimiento en un entorno de IA y crawlers que cambia rápidamente

2 comentarios

 
kaydash 2025-08-07

¡Ánimo, Perplexity!

 
GN⁺ 2025-08-05
Comentarios de Hacker News
  • Creo que resolver este problema es realmente difícil

    1. Cuando como persona hago una solicitud a un sitio web, todos están de acuerdo en que tengo derecho a ver ese contenido.
    2. Instalar software en mi computadora, como un bloqueador de anuncios para cambiar lo que aparece antes de que cargue el contenido, es una elección mía, y creo que está bien que el sitio no sepa que lo hago. La mayoría de los usuarios también lo aceptan, pero algunos sitios te molestan pidiéndote que cambies el software instalado.
    3. Pero si damos un paso más y termino accediendo al contenido resumido por un LLM porque el contenido está cubierto de anuncios, JavaScript y pop-ups y yo no puedo consumirlo directamente, no entiendo por qué no debería tratarse igual legalmente que cuando accedo con Firefox.
  • Algunas tiendas no dan la bienvenida a servicios como Instacart o Postmates. No importa si compras tú mismo, o escaneas con el móvil todos los productos para comparar precios. Pero no permiten que un servicio de terceros envíe a su propio personal para verificar inventario o recoger pedidos en línea por ellos. Hay muchas razones: no quieren perder control sobre la percepción de calidad del producto (que una bebida se enfríe, que suba de precio o que se haga un reemplazo incorrecto), quieren que un empleado atienda directamente y construya relación con el cliente, o simplemente se oponen al envío por terceros. Me parece una decisión razonable rechazar que empresas ajenas operen dentro de mi tienda física. Creo que esta lógica también se aplica a los servicios digitales.

  • Esto es una cuestión de escala. El siguiente paso que mencionas probablemente sea uno donde gente ejecute bots de investigación personales para encontrar respuestas en muchísimos sitios y hacer peticiones mucho más rápido que una persona. Hay que definir hasta dónde es aceptable. ¿Está bien el crawling personal? ¿O cuando el bot se vuelve más inteligente y predice de antemano qué preguntará el usuario y crawlea constantemente para mantenerlo actualizado? ¿O se vuelve un problema cuando escala y comienza un crawling masivo para muchos usuarios?

  • Yo prefiero distinguir entre scraping masivo y agentes orientados al usuario con los términos “crawler” y “fetcher”. Recientemente participé en el desarrollo de una herramienta de detección de agentes de IA (ver: https://stytch.com/blog/introducing-is-agent/), y creo que hay valor real en que el operador del sitio pueda identificar un agente de IA y sugerir un acceso restringido. En cambio, los crawlers pueden falsificar identidades y hacerse pasar por crawlers conocidos mientras ignoran robots.txt y se comportan mal. La solución estándar hoy es la consulta DNS inversa por IP, pero eso también es una carga para el operador del sitio. Me parece más eficiente bloquear cualquier acceso inusual.

  • Coincido en que el propio modelo publicitario tiene muchísimos problemas. Pero no quiero que el futuro de la web sea que las empresas de IA separen al creador de contenido del usuario. Por ejemplo, alguien puede operar un newsletter de pago y publicar una parte gratis para atraer visitas, y convertir algunas de ellas en suscriptores. Ese creador espera que el upsell (incentivar la suscripción) ocurra necesariamente junto con el consumo de contenido. Si un crawler de IA se salta ese proceso y solo extrae el contenido importante, no hay motivo para subir nada gratis a la web. Si gana el crawler de IA, al final todos perdemos.

  • Hay muchas páginas en el mundo que no están repletas de anuncios. Los buscadores tradicionales operaban con un contrato implícito: “te dejamos hacer crawl, tú tráenos tráfico”. Los crawlers de IA para modelos cerrados rompen ese contrato. Construyen un modelo con esos datos y habilitan capacidades QA con ellos; la empresa que opera el LLM gana miles de millones con el conocimiento obtenido por crawler desde el sitio web, pero al sitio no le devuelve nada. Aunque digan que es solo para responder solicitudes de usuarios, el proveedor del LLM se queda con la mayor parte del ingreso, y al autor real del contenido ni siquiera le llegan visitas. Si aceptar que Perplexity ignore robots.txt y bloqueos para traer páginas para solicitudes de usuarios fuera correcto, es difícil creer que luego no use esos datos para entrenamiento.

  • Me pareció interesante lo rápido del cambio. Creo que será más útil que la web se concentre en comunidades más pequeñas o centradas en miembros, no necesariamente en una con significado geográfico. En el futuro, construir tu propia comunidad e invitarla a espacios más privados me parece que será cada vez más importante. La web abierta de antes parece destinada a convertirse en un espacio para máquinas. Antes detestábamos las “burbujas”, pero en realidad las burbujas son naturales y tienen sentido si no eres el único. Cuando la web se llene de máquinas y contenido de máquinas, la gente terminará aprendiendo a conectarse entre sí otra vez.

  • Sobre la prueba en la que Perplexity AI respondió con detalle contenido de un dominio bloqueado: Me parece que la conclusión queda ambigua, como un artículo de marketing para criticar a una empresa específica. No queda claro si Perplexity hizo crawling del sistema completo (recorriendo todas las páginas) o si trajo solo una vez por solicitud del usuario. La mayoría de la gente distingue esas dos cosas y cree que la segunda es mucho más aceptable que la primera.

    • Suena un poco a publicidad de Perplexity. En esta disputa, otra vez sale Cloudflare como el papel positivo y Perplexity como el negativo, pero Cloudflare hoy también hace fuerte marketing de que va a “salvar” la web. La evidencia es débil y ambas parecen quedar en “una pelea de gigantes”, así que tal vez la nota termine siendo ventajosa para Perplexity en PR.
  • Traer una página en lugar del usuario puede ser aceptable en principio, pero dado que las empresas de IA ya han ignorado normas como derechos de autor, no se puede descartar que luego guarden el contenido para entrenamiento futuro o para crawling adicional.

  • En la especificación de HTTP también se refleja indirectamente esta distinción. Se ve en el concepto y nombre de “user agent”.

  • Si la IA cachea o archiva todos los resultados para que los use mucha gente, al final deja de diferir de un scraper. Con eso basta para entrenar con datos en caché. Es una forma de intermediar, extraer contenido valioso y, de paso, obtener señales de valor de los datos.

  • Según la respuesta que Perplexity envió a TechCrunch: Se dice que la publicación del blog de Cloudflare “solo es promoción comercial”. Además, se afirma que la captura del blog “muestra que no se accedió a ningún contenido”. También aclaran que el bot mencionado en ese blog no era suyo.

  • Perplexity en sí bloquea crawlers:

    $ curl -sI https://www.perplexity.ai | head -1
    HTTP/2 403
    

    Aunque lo disfraces con un user agent de navegador, igual se bloquea. Parece que están usando un método de detección de crawlers bastante sofisticado.

  • Siempre van a ganar los crawlers “stealth”. Con herramientas de automatización de navegador (W3C WebDriver2, Chrome DevTools Protocol) se pueden crear scrapers con detección casi imposible. Se puede poner captcha, pero el desarrollador también puede insertar un flujo con intervención humana para que durante el horario de call center alguien lo atienda en tiempo real. Hace 15 años en testing de videojuegos también se usaba scraping basado en raster, y esto hoy puede complicar bastante a la policía de internet.

    • Lo que hará que los crawlers stealth no ganen para siempre es que, al final, el acceso remoto será obligatorio para todos los sitios de valor.
  • Creo que internet necesita un sistema de micropagos. Si un crawler pagara al menos 1 centavo por página, bienvenida la actividad de crawling 24/7. Si yo pago 1 centavo por contenido, no tengo que soportar clicklab ni reglas publicitarias raras. El acceso gratis no siempre debe bloquearse (en la práctica se bloqueará, pero eso también tiene sentido). Por ejemplo, podrías imaginar que Reddit cobre una comisión alta, pero reembolse por buen contenido para incentivar calidad. También es posible un sistema nuevo tipo “depósito-reembolso-penalización”: dejas un depósito al registrarte, si te bannean se confisca, si actúas normalmente te lo devuelven. Esto simplifica la operación de moderación y mejora la calidad del contenido. Esta idea surge porque internet se está llenando cada vez más de basura. Otra idea: pagar 1 centavo por búsqueda en Google, que si el resultado no te gusta te devuelvan el dinero. Google AI mediría la satisfacción; si no hay una búsqueda satisfactoria, solo mostraría resultados populares saturados de anuncios. Eso haría que el usuario le confiara presupuesto a otro motor de búsqueda.

  • El hecho de que una autoridad como Cloudflare critique abiertamente el “scraping fraudulento” cuando alguien lo hace indiscriminadamente y pone en riesgo la confiabilidad de la red pública es algo positivo. El simple hecho de que esta controversia pueda encender la conversación ya es significativo. Al final, los actores principales tendrán que volver a una era de buscadores donde al menos se respetaran reglas mínimas, como antes.

    • Siento que es la era de la falta de vergüenza, así que la vergüenza pública no sirve.
  • Un motor de búsqueda personal construido por uno mismo puede implementar funciones en cierto nivel similares a Perplexity. Al comparar con conocidos, recibió casi una preferencia 50/50 frente a Perplexity. El motor puede llegar a descargar páginas web con fines de investigación. Pero si se encuentra con captcha o bloqueos, se abandona enseguida. En cambio, las grandes empresas de TI, con miles de millones de venture capital detrás, se creen con carta blanca para hacer lo que quieran, y eso me enfurece.

  • Se dice que “más de 2.5 millones de sitios eligieron bloquear por completo el entrenamiento de IA con la función de robots.txt administrado por Cloudflare o reglas de bloqueo de crawlers de IA”. Pero la realidad era que el CEO de Cloudflare lo había aplicado por defecto a todos los clientes. Si una empresa quiere recomendaciones de IA o valora el tráfico, debería desactivar esa opción para evitar daño económico.

    • Decir que viene activada por defecto es mentira. Yo revisé sitios en Cloudflare directamente y cuando no se hace ninguna configuración, esa función no está activada por defecto. Si no hay robots.txt, solo aparece un mensaje de “Considere habilitar Cloudflare managed robots.txt”. Si ya existe un archivo, permanece tal cual, y el aviso de tráfico de IA también queda desactivado manualmente.

    • Sobre el argumento de que “si quieres recomendación de IA debes desactivar la configuración”: El marketing de contenidos, el SEO gamificado y la sobrecarga de anuncios dañan gravemente la calidad de búsqueda de Google. En cambio, en los LLM esa “gamificación” todavía no se ve tanto. Tal vez algún día los LLM también se degraden como una búsqueda podrida, pero espero que OpenAI o Anthropic entiendan que eso también disminuiría su tráfico desde Google.

    • La afirmación de que era “aplicación por defecto” es totalmente falsa. En la práctica, la función no se suscribe automáticamente si no hay ninguna configuración. Además, incluso si hubo un periodo en que esa afirmación se parecía a la verdad, hoy ya no es así, y desde el inicio fue distinto a la realidad.