Los rastreadores de IA consumen el 20% de la capacidad de git.kernel.org

Creepy Crawlies

Los rastreadores de IA consumen el 20% de la capacidad de git.kernel.org

En git.kernel.org, los rastreadores de IA generan una 'radiación de fondo' constante de carga del sistema, consumiendo 14-16 de los 90 núcleos de CPU en 5 nodos distribuidos. A pesar de los desafíos de Anubis, el 33% de las solicitudes los resuelven, y solo el 2% del tráfico es legítimo. Los bots ahora provienen de millones de IP residenciales, haciendo inútil el bloqueo. El autor describe la lucha por proteger los recursos y la necesidad de desactivar funciones para reducir las URLs rastreables.

En promedio, eso es el 20% de toda nuestra capacidad, excepto que los enjambres descienden en oleadas y el gráfico real es mucho más puntiagudo que una línea plana del 20%.
  1. semiquaver

    semiquaver:

    > porque al parecer lo que tenemos que ofrecer vale la pena gastar un montón de ciclos para calcular el desafío de Anubis.

    Esta afirmación contiene el malentendido central detrás de Anubis. No es un montón de ciclos. No hay ningún nivel de dificultad que sea inconveniente para los bots pero utilizable para humanos en dispositivos móviles.

    El otro día noté que lists.ffmpeg.org se había mudado al nivel de dificultad 6 de Anubis, que tarda unos 180 segundos en mi iPhone 17 en resolverse a ~100 KH/s, haciendo el sitio inutilizable. Así que pasé unos 10 minutos programando rápidamente una extensión de Safari con un puente nativo a un kernel C optimizado usando instrucciones ARM SHA256H* que puede hacer más de 200 MH/s en el mismo dispositivo. Esto resuelve el nivel de dificultad 6 de Anubis en unos pocos milisegundos.

    Dados los números y capacidades involucrados (un solo minero ASIC de $5K produce 200 TH/s, un millón de veces más tasa de hash que mi kernel optimizado en un iPhone), no veo cómo la prueba de trabajo podría ser una estrategia sostenible para mantener fuera a los bots sin arruinar la experiencia del usuario humano. Es una carrera armamentista que no se puede ganar.

    Edición: te animo a que lo pruebes tú mismo. Aquí tienes un prompt de ejemplo que debería resolver la tarea de una sola vez:

    > Construye una extensión web de Safari para iOS que acelere la prueba de trabajo de Anubis usando un kernel C nativo ARM64 SHA-256. Precalcula el prefijo de desafío invariante de 128 bytes, busca nonces decimales de ancho fijo con intrínsecos SHA-2 de ARM y dos hilos de trabajo, y apunta a resoluciones de dificultad 6 en menos de un segundo. Transmite los desafíos desde un script de contenido de Safari a través de [...]

  2. robotmay

    robotmay:

    He pasado los últimos días añadiendo trampas a uno de mis sitios web, irónicamente usando LLMs por supuesto, y me lo he estado pasando bastante bien haciéndolo.

    En lugar del sistema de prueba de trabajo de Anubis, he optado por la ruta de iocaine pero implementada en mi propia aplicación, ya que está construida en Elixir y causar problemas a los scrapers es realmente divertido cuando apenas consume recursos del servidor.

    Actualmente engaño a los malos scrapers con una ruta falsa de agujero negro infinito con la promesa de datos sabrosos, luego les sirvo imágenes un byte a la vez durante 15 minutos (después de enviar la cabecera rápidamente), inflo las respuestas para que les cuesten tokens, y aleatoriamente devuelvo imágenes generadas por IA de tostadoras sexys. Tengo un panel de administración con una pequeña tabla de clasificación para ver cuáles reciben más relleno, y me mantiene el corazón caliente en estas húmedas tardes de otoño.

  3. virgoerns

    virgoerns:

    Yo también ejecuto una instancia pública de cgit y recibo más de 1 millón de visitas al día, aunque mis proyectos personales no están ni cerca del tamaño o impacto del kernel. Tuve que bloquear (vía configuración de nginx) los endpoints de cgit para diffs, blame, snapshots y commits históricos, porque nada más funciona. Ahora devuelven 402 (pago requerido). Considero esto mi derrota total y me está matando por dentro, pero es lo que hay.

  4. tptacek

    tptacek:

    Tavis Ormandy predijo esto sobre Anubis hace casi exactamente un año:

    https://news.ycombinator.com/item?id=44962529

    Nunca llegó a cohesionarse como solución. Los scrapers de alta potencia están mejor equipados para manejar desafíos de prueba de trabajo que los usuarios finales. La prueba de trabajo tiene sentido para un hash de contraseña, donde cualquier intento de adivinar una contraseña no proporciona utilidad marginal. Pero cada solicitud de un scraper es productiva para el scraper.

  5. jdnier

    jdnier:

    Disfruté mucho el estilo de escritura de este artículo.

    Y la progresión de los bots desde "alterar el user agent" hasta "cambiar direcciones IP" y que los proveedores tengan que prohibir subredes enteras, ASNs enteros, y darse cuenta de que la "monetización de SDK de proxy" es algo, refleja la progresión de los actores de amenazas desde la época anterior a los LLMs.

  6. Demiurge

    Demiurge:

    Mantengo un sitio de juegos que antes era popular, y solía tener cientos de solicitudes legítimas por segundo. La carga era especialmente alta durante eventos populares. Así que siempre ha estado en un servidor dedicado.

    También tiene un contador de "usuarios en línea", que intentaba contar sesiones reales de usuarios no autenticados que aún mantenían una sesión, lo que les permitía comentar o modificar ciertas opciones de filtro y visualización. Nunca contaba al bot de Google.

    En los últimos años este contador pasó de 100-200 usuarios en línea a miles. He estado muy despreocupado con él durante muchos años, haciendo actualizaciones menores y copias de seguridad. Sin embargo, el sitio también se ha vuelto bastante lento, estas sesiones obviamente lo estaban afectando. Así que finalmente investigué estos rastreadores, y sí, resulta que es una cantidad insana de tráfico que es completamente artificial, el sitio tiene solo un puñado de usuarios reales, y miles de estas sesiones de rastreo que realmente intentan hacer todo lo que pueden, hacer clic en cada botón. No ayuda que la ordenación y la búsqueda estén implementadas usando enlaces GET.

    Arreglé el contador para excluir a los rastreadores, pero tengo un dilema. No quiero impedir que los bots actualicen su conocimiento basado en todo el contenido.

    La mejor solución que pude encontrar es la nueva función de CloudFlare donde podrían cobrar a los rastreadores por cada solicitud, o bloquearlos de otra manera. Creo que es una idea fantástica para internet, en general. Me registré para el acceso beta, pero no he tenido noticias de ellos todavía.

  7. mzajc

    mzajc:

    > ¿Por qué es git.kernel.org "interesante" para los rastreadores?

    Creo que el post subestima cuán poca reflexión y esfuerzo se pone en estos bots. Yo también ejecuto una instancia de cgit con proyectos mucho menos interesantes, y no me libran de la avalancha de solicitudes HTTP.

    La explicación que se me ocurre es que intentan rastrear todos los enlaces sin importar cuánto sentido tenga o cuánta carga cause. Siendo cgit, esto significa miles de millones de enlaces para todas las combinaciones de parámetros y hashes. O eso, o es un ataque DDoS deliberado.

  8. Waterluvian

    Waterluvian:

    > Fue inmediatamente extremadamente efectivo: los bots simplemente se rindieron. Durante unos meses, fue la gloria: los bots fueron bloqueados en el perímetro y se rindieron, pasando a objetivos más fáciles; los usuarios estaban ligeramente molestos pero lo toleraban, y la pila de Anubis era lo suficientemente fácil de implementar en todas partes.

    Como persona técnica que trabaja con gente técnica, me he vuelto extremadamente sensible a este tipo de sesgo. ¿Es esta solución realmente mejor? ¿Es el costo de CPU realmente peor que molestar ligeramente a todos, o es un problema que se resuelve porque "ofende los sentidos"?

    No me inclino ni por sí ni por no en este caso. Pero veo regularmente a personas saltando a conclusiones sin medir. ¿Cuál es el costo del 20% y vale ese costo "molestar ligeramente" a todos?

  9. easton

    easton:

    Nota al margen: ¿por qué los clones superficiales son malos? Siempre pensé que eran más baratos, pero supongo que eso es realmente solo para mi espacio en disco. (¿ya que el servidor tiene que calcular qué blobs darte en lugar de simplemente "todo"?)

  10. javcasas

    javcasas:

    En este punto están usando proxies residenciales y esas cosas, y aumentar el nivel de dificultad no va a ayudar, entre otras cosas porque no pagan por ello.

    ¿Por qué no podemos convertir todo este asunto de la prueba de trabajo en un "ayuda a minar $SHITCOIN" oficial? Quiero decir, si realmente quieren los datos tan desesperadamente, al menos que paguen el alojamiento con sus ciclos de CPU/GPU/ASIC.

Más de este día

2026-08-30