Da li HeadlessChrome ima neuobičajeno visok promet? Cloudflareov vodič u 3 koraka za potpuno blokiranje (s WAF pravilima)

Nedavno sam provjerio pozadinsku podršku web stranice i prosječne dnevne posjete su samo nekoliko hiljada.

Kada sam otvorio Google Analytics, bio sam potpuno zapanjen.

Jednog dana, broj pregleda moje stranice je iznenada skočio na preko 20.000, i bio sam oduševljen, misleći da sam konačno postao slavan. Ali nakon detaljnijeg pregleda distribucije preglednika, otkrio sam da 90% prometa dolazi s nečega što se zove "HeadlessChrome".

Pitao sam ChatGTP koji je ovo preglednik? Je li to nova verzija Chromea?

Vještačka inteligencija je odgovorila da ovo nije preglednik.

Ovo je robot.

Da li HeadlessChrome ima neuobičajeno visok promet? Cloudflareov vodič u 3 koraka za potpuno blokiranje (s WAF pravilima)

Šta je tačno HeadlessChrome?

HeadlessChrome, kao što i samo ime govori, je Chromeov headless mod. Chrome je preglednik koji koristite svaki dan. Headless mod onemogućava grafički interfejs preglednika, omogućavajući mu da radi u pozadini koristeći samo komandnu liniju.

Nema adresne trake, nema trake s oznakama, ništa što možete vidjeti. To je samo dio koda koji poziva mehanizam preglednika, učitava vašu web stranicu, a zatim skida sadržaj.

Pravi korisnici nikada ne bi koristili nešto ovakvo za pregledavanje weba. Vi i ja otvaramo Chrome da čitamo vijesti, gledamo videozapise i kupujemo na Taobao-u . HeadlessChrome otvara vašu web stranicu kako bi prikupio vaše podatke i otišao.

Dakle, kada vidite da HeadlessChrome čini 80% ili čak 90% prometa u vašem statističkom backendu, možete zaključiti da je taj promet 100% bot promet.

Odakle dolazi sav ovaj bot promet?

Iskreno, izvori su veoma raznoliki.

Najčešći primjer je web scraping. Neke kompanije ili pojedinci koriste automatizacijske okvire poput Puppeteera, Playwrighta ili Seleniuma za pokretanje preglednika bez grafičkog prikaza i grupno scraping sadržaja web stranica. Neki scrapinguju cijene proizvoda, neki scrapinguju vijesti, a neki scrapinguju podatke o konkurentima.

A tu je i umjetna inteligencija. Razni alati umjetne inteligencije, pretraživači umjetne inteligencije i sistemi za pretraživanje podataka analiziraju web stranice u pozadini. Kada objavite članak, desetine agenata umjetne inteligencije mogu istovremeno čitati vaš sadržaj.

Druga, suptilnija metoda su vaši vlastiti zakazani zadaci. Na primjer, možete implementirati skriptu za SEO praćenje koja provjerava promjene rangiranja određene stranice svaki sat, koristeći HeadlessChrome. Ili možete postaviti automatsku uslugu snimanja ekrana koja periodično snima slike stranice, također koristeći ovaj alat.

Najneugodnija vrsta je posljednja: zlonamjerno skeniranje. Automatizirane skripte se pokreću kako bi skenirale vašu web stranicu u potrazi za ranjivostima, testirale vaš backend interfejs za prijavu, pa čak i masovno slale neželjene komentare.

Kako statistički backend identificira HeadlessChrome?

Zapravo je prilično jednostavno. Svaki preglednik uključuje polje User-Agent u zaglavlje zahtjeva prilikom pristupa web stranici, govoreći serveru "ko sam ja". Zadani User-Agent u HeadlessChromeu uključuje niz znakova "HeadlessChrome". Vaš analitički sistem će to znati kada analizira ovo polje.

Međutim, ako programer web crawlera napravi malu izmjenu koda, mijenjajući korisničkog agenta u normalan Chrome ili Safari identifikator, to uopće nećete moći vidjeti iz statističkog pozadinskog sistema. To je prava glavobolja.

upotrebaCloudflare WAF precizno presreće HeadlessChrome

U redu, identificirali smo problem. Kako ćemo ga riješiti?

Najdirektnije i najefikasnije rješenje je presretanje prometa na CDN ili WAF sloju. Nemojte čekati da promet stigne do vašeg servera prije nego što ga obradite; blokirajte ga na kućnom pragu.

Ako koristite Cloudflare, operacija je zapravo vrlo jednostavna.

Prijavite se na svoju Cloudflare konzolu, odaberite ciljnu domenu, pronađite Sigurnost, zatim kliknite WAF, a zatim idite na Prilagođena pravila i kreirajte novo pravilo.

Naziv pravila može biti bilo šta, na primjer, "Challenge Headless Chrome"i slično,

Prijavite se na svoju Cloudflare konzolu, odaberite ciljnu domenu, pronađite Sigurnost, zatim kliknite WAF, a zatim idite na Prilagođena pravila i kreirajte novo pravilo.

Samo zapamti.

Odabir poljaUser AgentOdabir operateracontains, unesite vrijednostHeadlessChrome.

U ovom trenutku ćete vidjeti pregled izraza, koji jehttp.user_agent contains "HeadlessChrome"

Zatim odaberite u operacijiManaged ChallengeiliJS Challenge.

  • Predlažem da odabereteManaged ChallengeZato što je njegova metoda verifikacije inteligentnija i ima manji utjecaj na stvarne korisnike.

Na kraju, kliknite na Deploy (Implementiraj) i ovo pravilo će stupiti na snagu globalno.

Cloudflare ima stotine čvorova širom svijeta, konfigurisanih sa sinhronizacijom drugog nivoa. U osnovi, saobraćaj preglednika bez grafičkog prikaza se blokira u trenutku kada kliknete na dugme.

Slijepe tačke u zaštiti i naprednoj prevenciji

Međutim, postoji jedno "ali".

Samo usklađivanje korisničkog agenta može riješiti većinu konfiguracija web pretraživača s zadanim postavkama. Međutim, to nije dovoljno protiv vještih pretraživača.

Počevši od Chromea 110, Google je uveo novi headless mod, koristeći...--headless=newPokretanje parametra. U ovom režimu, korisnički agent HeadlessChrome-a je potpuno isti kao i kod običnog Chrome-a i uopće ne možete vidjeti razliku.

Postoje i oni koji aktivno lažiraju (spoofing). Programeri web crawlera direktno zamjenjuju User-Agent normalnim identifikatorom Chromea ili mobilnog preglednika u kodu, što onemogućava podudaranje čak i s najpreciznijim pravilima.

Za ovu situaciju, Cloudflare također nudi dvije naprednije funkcije koje se mogu omogućiti.

Prva se zove Provjera integriteta preglednika.

Da biste omogućili ovu funkciju, idite na Sigurnost → Postavke → Provjera integriteta preglednika i uključite prekidač.

Da biste omogućili ovu funkciju, idite na Sigurnost → Postavke → Provjera integriteta preglednika i uključite prekidač.

Identifikuje abnormalni saobraćaj putem TLS otisaka prstiju. Bez obzira koliko dobro prikrijete korisničkog agenta, TLS otisak prsta se ne može lažirati.

Drugi se zove Bot Fight Mode, ili mod borbe robota.

Putanja je Sigurnost → Automatski programi → Način borbe s botovima, koji bi također trebao biti omogućen.

Putanja je Sigurnost → Automatski programi → Način borbe s botovima, koji bi također trebao biti omogućen.

Ova funkcija kombinuje karakteristike ponašanja kako bi se utvrdilo da li saobraćaj pripada botovima, kao što su učestalost zahtjeva, putanja kretanja miša, vrijeme zadržavanja na stranici itd.

Besplatna verzija će automatski primijeniti upravljane izazove na sumnjive botove, dok plaćena verzija omogućava detaljniju konfiguraciju pravila.

Od neželjene pošte do web crawlera, bitka između napadača i branitelja nikada nije prestala.

Kad smo već kod toga, nešto mi je odjednom palo na pamet.

U stvari, ova vrsta ofanzivne i defanzivne konfrontacije odvijala se kroz cijelu historiju interneta. Isto je bilo i kada je neželjena pošta bila raširena u ranim danima; blokirali ste jednu funkciju, a pošiljalac ju je promijenio. Koristili ste filtriranje ključnih riječi, a pošiljalac je razvrstao osjetljive riječi. Koristili ste ograničenja učestalosti, a pošiljalac je smanjio učestalost slanja.

Danas je to postala bitka između web stranica i web pretraživača. Vi koristite filtriranje korisničkog agenta, a druga strana se predstavlja kao korisnički agent. Vi koristite TLS otiske prstiju, a druga strana počinje istraživati ​​kako simulirati TLS otiske prstiju.

Tehnologija se možda mijenja, ali osnovna logika teorije igara se nikada nije promijenila.

Međutim, za većinu vlasnika web stranica, prethodni korak je dovoljan.

80% prometa u Chromeu bez nadzora dolazi od robota za indeksiranje s zadanim konfiguracijama koji su previše lijeni da se maskiraju, što se može riješiti jednim WAF pravilom. Što se tiče onih sa sofisticiranim maskiranjem, osim ako nemate posebno osjetljive podatke kojima je potrebna zaštita, nema potrebe za pretjeranom brigom.

Nakon što omogućite sve potrebne funkcije, u osnovi ste spremni.

Na kraju, želio bih dodati još jednu stvar.

Mnogi ljudi vjeruju da što je više prometa na web stranici, to bolje. Međutim, ako ne možete razlikovati stvarni promet od botova, te rastuće brojke su samo taštinske metrike. One čak mogu zavarati vašu prosudbu, navodeći vas da pomislite da je određeni sadržaj posebno popularan, a zapravo se radi o web crawleru koji masovno učitava vašu stranicu.

Razumijevanje prave prirode saobraćaja je mnogo važnije od praćenja podataka o saobraćaju.

Ako imate prijatelje koji vode web stranice ili se bave SEO optimizacijom, slobodno im proslijedite ovaj članak. Mnogi ljudi možda ne shvataju da njihove web stranice napada veliki broj botova, niti znaju da je rješavanje ovog problema zapravo prilično jednostavno.

Pošto ste pročitali do sada, ako vam je bilo korisno, molimo vas da lajkujete i podijelite. Ako želite prvi primati novosti, možete me i pratiti!

Hvala vam što ste pročitali moj članak. Vidimo se sljedeći put.

Komentari

您的邮箱地址不会被公开。必填项已用*标注

Dođite na vrh