¿Cómo una empresa como CloudFlare bloquea el rastreo de robots y los recolectores de correo electrónico?

21

Lo vi en la página de inicio de CloudFlares :

  

CloudFlare protege contra una variedad de amenazas: secuencias de comandos entre sitios, inyección de SQL, spam de comentarios, rastreo excesivo de bots, recolectores de correo electrónico y más.

¿Cómo podría una empresa como CloudFlare bloquear los robots de rastreo y el recolector de correo electrónico? Asumo que son lo suficientemente inteligentes como para no usar User-Agent: Evil-Email-Harvester . Entonces, ¿cómo diferencia un robot como un recolector de correo electrónico de un usuario normal?

Supongo que puedes ver que se trata de algún tipo de bot porque obtienes solicitudes para varios sitios desde la misma IP. Pero ese también sería el caso de muchas direcciones IP legítimas, como una VPN. ¿Cómo se puede decir lo bueno de lo malo?

    
pregunta Anders 03.03.2016 - 09:54
fuente

3 respuestas

23

CloudFlare sirve como una protección entre su servidor web y el cliente. Todos los contenidos que recibe el cliente son proporcionados por su servidor web y filtrados por CloudFlare. De esta manera, CloudFlare confunde las direcciones de correo electrónico al filtrarlas con una expresión regular antes de entregarlas al cliente.

Si su sitio web contiene el correo electrónico

<a href="mailto:[email protected]">[email protected]</a>

CloudFlare lo reemplazará con

<a href="/cdn-cgi/l/email-protection#fed8ddcfcfcbc5d8ddc8cac5d8ddcfcfcbc5d8ddc7c7c5d8ddcfcecac5d8ddc7c9c5d8ddcac8c5d8ddc7c6c5d8ddcfccccc5">&#115;&#64;&#115;&#99;&#104;&#97;&#46;&#98;&#122;</a>

La carpeta / cdn-cgi / -, aunque todavía apunta al servidor web, es solo para CloudFlare, que filtrará automáticamente todo lo que envíes, eliminará y devuelve la dirección de correo electrónico correcta.

Por supuesto, esto no es a prueba de balas (esto simplemente no es posible) ya que un bot puede continuar en esa URL o buscar patrones de correo electrónico codificados. Esta es una ocurrencia rara y la mayoría de los rastreadores simples de hoy no encuentran su correo electrónico.

No debe confiar en este enfoque: la CF ya es bastante popular y es fácil de detectar y desobstruir esas direcciones de correo electrónico. El uso de sus propias técnicas de ofuscación únicas es más probable que sea seguro contra cosechadores inteligentes, ya que es demasiado trabajo adaptar el rastreador para cada técnica de ofuscación única.

    
respondido por el James Cameron 03.03.2016 - 10:20
fuente
16

El comportamiento simple del bot y el comportamiento del "usuario normal" son notablemente diferentes, y la mayoría de los bots tienden a ser relativamente simples, ya que funciona para la mayoría de los sitios. Por ejemplo, considere llegar a Security.SE:

  • Un ser humano carga la página, hay un retraso de unos pocos segundos hacia arriba mientras leen las primeras preguntas, luego recibe una solicitud de una página, seguida de solicitudes iniciadas por el navegador para archivos de soporte (imágenes, scripts, estilos) . Entonces esperaría que pasara un poco de tiempo antes de una solicitud con esa página, ya que el referente para otra página. Un usuario más técnico podría abrir varias preguntas si está usando un navegador con pestañas, pero habrá una breve pausa entre estas solicitudes (mientras mueven el mouse o la pestaña a la siguiente pregunta), luego, nuevamente, espera una pausa antes cualquier solicitud manual de estas páginas.
  • Un bot carga la página e inmediatamente la analiza, buscando enlaces / direcciones de correo electrónico. Verá una gran cantidad de solicitudes casi inmediatamente después de que se haya enviado la página. Dependiendo del bot, es posible que los archivos de soporte no se carguen (al bot no le importa su estilo). Es probable que el bot haga lo mismo con los enlaces de las páginas recibidas en ese momento, y siga haciéndolo hasta que no pueda encontrar más enlaces.

Estos métodos se pueden omitir con un poco de esfuerzo para hacer que un bot se vea como un humano, pero eso ralentizaría mucho el proceso de rastreo, por lo que los dudosos propietarios de bots no se molestan en hacerlo.

    
respondido por el Matthew 03.03.2016 - 10:16
fuente
12

Además de la respuesta de James y Matthew (que son puntos válidos por cierto):

Obviamente, los servicios como CloudFlare tienen un montón de métodos de detección para decidir si se permite o no a un cliente a través de sus distintas capas de protección.

Tienen una gran cantidad de información en su sitio web sobre estas características, pero es probable que no encuentres reglas específicas y detalles de implementación, ya que esto hará que la detección sea más fácil de eludir.

  

Supongo que puedes ver que se trata de algún tipo de bot porque obtienes solicitudes para varios sitios desde la misma IP. Pero ese también sería el caso de muchas direcciones IP legítimas, como una VPN. ¿Cómo se puede decir lo bueno de lo malo?

Anecdótico: de hecho, me siento a menudo 'sospechoso' por CloudFlare mientras estoy conectado a una VPN.

Sospecho que muchos de los factores que mencionó Matthew (tiempo de carga, tipo de recursos solicitados, pausas antes de las próximas solicitudes) contribuyen a que CloudFlare no me bloquee instantáneamente.
En su lugar, sirven ReCaptcha de Google para confirmar que no soy un robot / rastreador y luego me dejaré pasar.

Más información:
Respuesta de James: ofuscación de correo electrónico < br> La respuesta de Matthew: Firewall de aplicaciones web / WAF

    
respondido por el Fluffy 03.03.2016 - 11:04
fuente

Lea otras preguntas en las etiquetas