Przejdź do treści

Redakcja i społeczność ludzi, którzy budują z AI

← Wszystkie artykuły

Poradnik · · 5 min czytania

Ruch z aocr.org to bot: jak go rozpoznać i odfiltrować

Fałszywy referrer aocr.org, ekran 800x600 i jedna strona na wizytę: to bot, którego odcisk palca tin.computer dopasował do Bytespidera, crawlera ByteDance. Filtry dla Umami, Plausible, GA4 i PostHoga, reguła nginx i to, czego lepiej nie robić.

W skrócie: wejścia z aocr.org w Twojej analityce to nie są prawdziwi użytkownicy, tylko bot, który udaje zwykłego Chrome'a i wysyła fałszywy referrer. W ośmiu naszych serwisach zostawił już 388 sesji, a na jednym z mniejszych odpowiadał za co szóstą sesję. Odfiltrujesz go w panelu analityki albo na serwerze, po nagłówku Referer. Nie blokuj adresów IP, nie licz na robots.txt i nie pisz do aocr.org.

Co to za bot i po czym go poznać

Najdokładniej opisał go tin.computer w analizie z 29 października 2026. Za potwierdzone uznaje trzy rzeczy: odcisk sieciowy bota (TLS, HTTP/2, nagłówek Accept) pasuje do Bytespidera, jawnego crawlera ByteDance; nagrania sesji zawierają pola czasowe nazwane od Forest, wewnętrznego loadera zasobów ByteDance; a wyciek WebRTC wskazał prawdziwe maszyny w sieci data center China Mobile w Shanxi. Nie ustalono natomiast, kto bota uruchamia: zespół ByteDance czy klient chmury ByteDance, na przykład Volcano Engine. Sama strona aocr.org należy do American Osteopathic College of Radiology i nie ma z tym nic wspólnego. Tło newsowe opisaliśmy w tekście o bocie aocr.org na nowosci.ai.

Nasze dane mówią to samo. Stan na 7 listopada: w naszym self-hostowanym Umami jest 388 sesji z referrerem aocr.org w ośmiu serwisach, z czego 321 w największym z nich. Według tin.computer inni właściciele stron zgłaszają bota od około 24 września, a w naszych danych pierwsze wejścia są z 18 września 2026. Do końca października sesji było kilkadziesiąt, a w listopadzie bot gwałtownie przyspieszył: 6 listopada nabił 206 sesji jednego dnia. Każdą wizytę zdradza ten sam zestaw cech:

  • Referrer aocr.org. W nagłówku Referer jest https://www.aocr.org/, a Umami zapisuje go jako aocr.org. Żądania mają przy tym nagłówek Sec-Fetch-Site: none, czyli wartość, którą przeglądarka wysyła, gdy adres wpisano ręcznie albo otworzył go program. Prawdziwe kliknięcie z aocr.org dałoby cross-site (tin.computer).
  • Ekran 800x600, Windows 10, Chrome 146, język en-US. W naszych danych 800x600 ma niemal każda sesja (dwie miały 600x800), a system, przeglądarka i język zgadzają się w 100%. Sam User-Agent niczego nie przesądza, bo bot udaje zwykłego Chrome'a.
  • Jedna strona i około 25 sekund. W 96% wizyt bot ogląda jedną stronę, mediana czasu wizyty w naszym Umami to 23,6 s, a tin.computer zmierzył około 28 s czekania i przewijania.
  • Nowe IP niemal przy każdej wizycie, w większości z sieci hostingowych i proxy: Datacamp/CDN77, Web2Objects, M247, Ace Data Centers, NET3. To te same sieci, które niezależnie wypisał tin.computer. Dlatego w raporcie krajów dominują USA (75% naszych sesji), choć to tylko lokalizacja proxy.
  • Strefa czasowa Asia/Shanghai przy amerykańskim IP i angielskim języku (tin.computer). W PostHogu znajdziesz ją we właściwości $timezone.
  • Ciekawostka z logów: fałszywy Referer jest doklejany do każdego żądania: po pliki CSS i JS, po obrazki, a nawet do wywołania analityki. Zwykła przeglądarka wysłałaby tam adres Twojej strony, więc nagłówek wstawia automat, a nie przeglądarka. Właśnie dlatego filtr po nagłówku działa.

Jak go odfiltrować

  • Umami: w widokach dodaj filtr Referrer „is not” aocr.org, bez www, bo tak Umami zapisuje tę domenę. Stare wizyty zostają w bazie, ale przestają psuć wykresy.
  • Plausible i Fathom: wyklucz w filtrach referrer www.aocr.org (rada tin.computer). Sprawdź w raporcie źródeł, czy narzędzie zapisuje domenę z www, czy bez.
  • GA4: utwórz segment, który wyklucza sesje ze źródłem aocr.org (rada tin.computer).
  • PostHog: wyklucz zdarzenia, w których $referring_domain to www.aocr.org. Gdyby bot zmienił referrer, tin.computer radzi filtrować po parze $timezone = Asia/Shanghai i $screen_width = 800.

Jeśli analitykę hostujesz sam, możesz bota w ogóle nie liczyć. My od 7 listopada robimy to w nginx przed Umami: każde wywołanie trackera (/api/send) z nagłówkiem Referer z aocr.org dostaje odpowiedź 204 bez treści i nie trafia do bazy. Strony są dalej dostępne, blokujemy wyłącznie liczenie. A ponieważ prawdziwa przeglądarka wysyła do trackera adres Twojej strony, żywy gość z aocr.org (gdyby się trafił) nadal zostanie policzony. Minimalna wersja reguły, z blokiem map w kontekście http:

map $http_referer $aocr_referrer {
    default 0;
    "~*^https?://([^/]+\.)?aocr\.org(/|$)" 1;
}

server {
    # ... the server block of your analytics host
    location = /api/send {
        if ($aocr_referrer) { return 204; }
        proxy_pass http://127.0.0.1:3000;  # your Umami upstream
    }
}

Chcesz bota zatrzymać, a nie tylko go nie liczyć? Dla Cloudflare tin.computer proponuje własną regułę WAF z akcją Managed Challenge: nagłówek Accept zawiera image/heif,image/avif, a nagłówka sec-ch-ua brak. Druga, prostsza reguła sprawdza, czy pole http.referer zawiera aocr.org. Zanim włączysz challenge, zobacz, co reguła łapie: tin.computer radzi zacząć od akcji Log, która tylko zapisuje dopasowania, jeśli Twój plan ją obejmuje. Autor zaznacza też, że reguła po odcisku zatrzyma przy okazji jawnego Bytespidera.

Czego nie robić

  • Nie blokuj adresów IP. W logach naszego serwera 5365 żądań bota przyszło z 1020 różnych adresów, a tylko 7 z nich pojawiło się więcej niż jednego dnia. Lista blokad zestarzeje się, zanim ją wdrożysz. To samo radzi tin.computer.
  • Nie licz na robots.txt. Bot nie przedstawia się jako Bytespider, więc reguła dla Bytespidera go nie dotyczy. Jeśli chcesz go blokować, rób to na CDN albo firewallu.
  • Nie pisz do aocr.org. To strona American Osteopathic College of Radiology, nic nie wskazuje na włamanie, a tin.computer wprost prosi, żeby nie kontaktować się z nimi w sprawie tego ruchu.
  • Nie kasuj historii w pośpiechu. My zostawiliśmy stare wizyty w bazie i ukrywamy je filtrem. Jeśli bot zmieni referrer, surowe dane pomogą go namierzyć po pozostałych cechach.

Dlaczego to ważne w małych projektach

Udział bota liczymy od jego pierwszej wizyty w danym serwisie. W naszym największym serwisie to 0,18% sesji, bo duży ruch go rozmywa. Na raba.pl już 8,45% (18 z 213), a na openclaw.com.pl 16,3% (7 z 43). Jeśli vibecodujesz kolejne side projecty i po analityce oceniasz, który chwycił, ten bot dopisuje Ci nieistniejących użytkowników. To samo dotyczy agenta, któremu dajesz dostęp do statystyk. Bot psuje też inne liczby: w największym serwisie nabił 924 „wyświetlenia” banerów partnerów, a do PostHoga wysłał 321 żądań ze zdarzeniami. Filtr w analityce i reguła nginx nie blokują treści, tylko liczenie wizyt, więc to kilka minut pracy bez wpływu na to, kto może czytać Twoją stronę.


Źródła: tin.computer: Getting traffic from aocr.org? That's ByteDance crawling your website.

Ruch z aocr.org to bot: jak go rozpoznać i odfiltrować | vibecoding.pl