98% запытаў да git.kernel.org фармуюць боты, ствараючы велізарную паразітную нагрузку

Канстанцін Рабцаў, адміністратар інфраструктуры kernel.org, апублікаваў вынікі аналізу трафіку сэрвісу git.kernel.org, які дазваляе праглядаць змесціва git-рэпазітараў праектаў, звязаных з распрацоўкай ядра Linux. Штодня сэрвіс апрацоўвае каля 6 млн запытаў інфармацыі аб камітэтах, з якіх 66% даводзяцца на робатаў, якіх атрымоўваецца блакаваць пры дапамозе сістэмы Anubis. 33% запытаў праходзяць праверку сістэмы Anubis, якая дазваляе ўваход толькі пасля падбору на мове JavaScript значэння, хэш SHA-256 ад якога ў спалучэнні з выдадзенай серверам радком змяшчае пэўную колькасць лідзіруючых нулёў (дадзеная задача патрабуе рэсурсаў CPU для рашэння, але не патрабуе рэсурсаў для праверкі).

Дакладна вызначыць хто з гэтых 33% людзі, а хто прасунутыя боты, немагчыма, але па характары зваротаў зроблена выснова, што агульная доля легітымных запытаў прыкладна 2%, а астатнія 98% прыпадаюць на скраперы. Адным з прыкмет робатаў разглядаюцца прамыя запыты старых комітаў у выпадковых старых галінках, якія малаверагодна, што могуць спатрэбіцца людзям у працы. Актыўнасць робатаў стварае велізарную паразітную нагрузку на серверы бо замест таго, каб адзін раз загрузіць увесь код і гісторыю коммітаў праз аперацыю "git clone" боты адпраўляюць мільярды запытаў, перабіраючы ўсе варыянты звароту праз web-інтэрфейс і шматкроць запытваючы адны і тыя ж дадзеныя з рознымі параметрамі.

Блакаванне ботаў па IP-адрасам і аўтаномным сістэмам досыць хутка перастала працаваць, бо боты перайшлі на адпраўку запытаў з мільёнаў выпадковых IP-адрасоў з хатніх ці мабільных сетак, атрыманых у выніку актыўнасці ботнэтаў ці манетызацыі браузерных дадаткаў. З кожнага адраса адпраўляецца толькі 4-5 запытаў, таму блакаваць іх на ўзроўні міжсеткавага экрана бескарысна.

Нейкі час блакаваць боты дапамагала сістэма Anubis, але з часам боты адаптавалі для выканання прапанаваных у Anubis вылічэнняў. Сярод іншага робаты навучыліся вырашаць задачу 5 ўзроўню складанасці, а далей павышаць узровень праблематычна, бо нават пяты ўзровень патрабуе некалькіх секунд вылічэнняў і моцна ятрыць легітымных карыстачоў.

У выніку, на абслугоўванне запытаў скрапераў у інфраструктуры kernel.org даводзіцца марнаваць больш рэсурсаў, чым на ўсе астатнія віды легітымных аперацый, у тым ліку «git clone». На 5 серверах, Абслугоўваючых git.kernel.org, у любы момант часу 14-16 з наяўных 90 ядраў CPU стала занятыя адлюстраваннем git-камітаў для робатаў. Для таго каб знізіць нагрузку адміністратары зараз спрабуюць урэзаць магчымасці сэрвісу, адключыць некаторыя рэсурсаёмістыя аперацыі, абмежаваць ананімны доступ і скараціць колькасць даступных для навігацыі спасылак.

Крыніца: opennet.ru

Купіць надзейны хостынг для сайтаў з абаронай ад DDoS, VPS VDS серверы 🔥 Купіць надзейны хостынг для сайтаў з абаронай ад DDoS, VPS VDS серверы | ProHoster