98% požiadaviek na git.kernel.org tvoria boti, čím vytvárajú obrovské parazity zaťaženie

Konštantín Rjabcev, administrátor infraštruktúry kernel.org, zverejnil výsledky analýzy prevádzky služby git.kernel.org, ktorá umožňuje prehliadať obsah git-repozitárov projektov súvisiacich s vývojom jadra Linux. Každý deň služba spracováva približne 6 miliónov požiadaviek na informácie o commitoch, z ktorých 66% pochádza od botov, ktoré sa darí blokovať pomocou systému Anubis. 33% požiadaviek prechádza kontrolou systému Anubis, ktorý povoľuje vstup až po adrese vyhovujúcej podmienkam v jazyku JavaScript, ktorého hash SHA-256 spolu s reťazcom vydaným serverom obsahuje určité množstvo vedúcich núl (táto úloha si vyžaduje CPU na riešenie, ale nevyžaduje zdroje na kontrolu).

Presne určiť, ktorí z týchto 33% sú ľudia a ktorí pokročilé boti, nie je možné, ale na základe povahy požiadaviek sa usudzuje, že celkový podiel legitímnych požiadaviek je približne 2%, ostatných 98% pochádza od skraperov. Jedným z príznakov botov sú priame požiadavky na staré commity vo náhodných starých vetvách, ktoré je nepravdepodobné, že by potrebovali ľudia v práci. Aktivita botov vytvára obrovské parazitné zaťaženie na servery keďže namiesto jedného načítania celého kódu a histórie commitov cez operáciu „git clone“ boti posielajú miliardy požiadaviek, prechádzajú všetkými možnosťami z webového rozhrania a opakovane žiadajú tie isté údaje s rôznymi parametrami.

Blokovanie botov podľa IP adresy a autonómnych systémov už dosť rýchlo prestalo fungovať, pretože boti prešli na posielanie požiadaviek z miliónov náhodných IP adries z domácich alebo mobilných sietí, získaných v dôsledku aktivity botnetov alebo monetizácie prehliadačových doplnkov. Z každej adresy je odoslaných len 4-5 požiadaviek, takže blokovať ich na úrovni firewallu je zbytočné.

Niejakú dobu blokovanie botov pomáhala systém Anubis, ale s časom sa boti prispôsobili na vykonávanie predkladaných výpočtov v Anubis. Medzi iným sa boti naučili riešiť úlohu 5. úrovne obtiažnosti, a ďalej je zvyšovanie úrovne problematické, keďže aj piaty stupeň vyžaduje niekoľko sekúnd výpočtov a značne rozčuľuje legitímnych používateľov.

Nakoniec si infraštruktúra kernel.org vyžaduje viac zdrojov na spracovanie požiadaviek zo skríningových nástrojov ako na všetky ostatné legálne operácie, vrátane "git clone". Na 5 serveroch, spravujúcich git.kernel.org, je v každom okamihu 14-16 z 90 dostupných procesorových jadier neustále zapojených do zobrazovania git-commitov pre roboty. Aby sa znížila záťaž, správcovia teraz skúšajú obmedziť možnosti služby, vypnúť niektoré náročné operácie, obmedziť anonymný prístup a znížiť počet dostupných odkazov na navigáciu.

Zdroj: opennet.ru

Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Kúpte si spoľahlivý hosting pre webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster