«Այն տղան, ով ստեղծել է մեր կայքը, արդեն ստեղծել է DDoS պաշտպանություն»:
«Մենք ունենք DDoS պաշտպանություն, ինչո՞ւ է կայքը խափանվել»:
«Քրատորը քանի՞ հազար է ուզում»:
Հաճախորդի/շեֆի նման հարցերին ճիշտ պատասխանելու համար լավ կլինի իմանալ, թե ինչ է թաքնված «DDoS պաշտպանություն» անվան տակ։ Անվտանգության ծառայություններ ընտրելն ավելի շատ նման է բժշկից դեղ ընտրելը, քան IKEA-ում սեղան ընտրելը:
Ես 11 տարի աջակցում եմ կայքերին, վերապրել եմ հարյուրավոր հարձակումներ իմ աջակցած ծառայությունների վրա, և այժմ ես ձեզ մի փոքր կպատմեմ պաշտպանության ներքին գործունեության մասին:
Կանոնավոր հարձակումներ. 350k req ընդհանուր, 52k req օրինական
Առաջին հարձակումները հայտնվեցին համացանցի հետ գրեթե միաժամանակ։ DDoS-ը որպես երևույթ լայն տարածում է գտել 2000-ականների վերջից (տես
Մոտավորապես 2015-2016 թվականներից ի վեր գրեթե բոլոր հոսթինգ պրովայդերները պաշտպանված են DDoS հարձակումներից, ինչպես նաև մրցակցային տարածքներում հայտնի կայքերը (կատարեք whois IP-ով eldorado.ru, leroymerlin.ru, tilda.ws կայքերը, կտեսնեք ցանցերը: պաշտպանության օպերատորների):
Եթե 10-20 տարի առաջ հարձակումների մեծ մասը կարող էր հետ մղվել հենց սերվերի վրա (գնահատեք Lenta.ru համակարգի ադմինիստրատոր Մաքսիմ Մոշկովի 90-ականների առաջարկությունները.
DDoS գրոհների տեսակները պաշտպանության օպերատորի ընտրության տեսանկյունից
Հարձակումներ L3/L4 մակարդակով (ըստ OSI մոդելի)
— UDP հեղեղ բոտնետից (շատ հարցումներ ուղարկվում են անմիջապես վարակված սարքերից հարձակման ենթարկված ծառայությանը, սերվերները արգելափակված են ալիքով);
— DNS/NTP/ և այլն ուժեղացում (վարակված սարքերից բազմաթիվ հարցումներ են ուղարկվում խոցելի DNS/NTP/և այլն, ուղարկողի հասցեն կեղծված է, հարցումներին պատասխանող փաթեթների ամպը հեղեղում է հարձակման ենթարկվող անձի ալիքը. զանգվածային հարձակումներ են իրականացվում ժամանակակից ինտերնետում);
— SYN / ACK ջրհեղեղ (կապի հաստատման բազմաթիվ հարցումներ ուղարկվում են հարձակման ենթարկված սերվերներին, կապի հերթը լցվում է);
- գրոհներ փաթեթների մասնատմամբ, մահվան պինգ, ping flood (Google it խնդրում եմ);
- և այլն:
Այս հարձակումները նպատակ ունեն «խցանել» սերվերի ալիքը կամ «սպանել» նոր տրաֆիկ ընդունելու նրա կարողությունը։
Չնայած SYN/ACK ջրհեղեղը և ուժեղացումը շատ տարբեր են, շատ ընկերություններ նույնքան լավ են պայքարում դրանց դեմ: Խնդիրներ են առաջանում հաջորդ խմբից գրոհների հետ կապված:
Հարձակումներ L7-ի վրա (կիրառական շերտ)
— http flood (եթե վեբ կայք կամ որոշ http api հարձակման է ենթարկվում);
— հարձակում կայքի խոցելի տարածքների վրա (նրանք, որոնք չունեն քեշ, որոնք շատ ծանր են բեռնում կայքը և այլն):
Նպատակն է ստիպել սերվերին «շատ աշխատել», մշակել բազմաթիվ «իրական թվացող հարցումներ» և մնալ առանց ռեսուրսների իրական հարցումների համար։
Չնայած կան այլ հարձակումներ, դրանք ամենատարածվածն են:
L7 մակարդակի լուրջ հարձակումները ստեղծվում են յուրօրինակ ձևով յուրաքանչյուր հարձակման ենթարկվող նախագծի համար:
Ինչու՞ 2 խումբ:
Քանի որ կան շատերը, ովքեր գիտեն, թե ինչպես լավ ետ մղել հարձակումները L3 / L4 մակարդակում, բայց կամ ընդհանրապես չեն պաշտպանում կիրառման մակարդակում (L7), կամ դեռ ավելի թույլ են, քան այլընտրանքները դրանց հետ վարվելիս:
Ով ով է DDoS պաշտպանության շուկայում
(Իմ անձնական կարծիքը)
Պաշտպանություն L3/L4 մակարդակում
Ուժեղացման միջոցով գրոհները հետ մղելու համար (սերվերի ալիքի «արգելափակում») կան բավականաչափ լայն ալիքներ (պաշտպանական ծառայություններից շատերը միանում են Ռուսաստանի հիմնական հիմնական մատակարարների մեծամասնությանը և ունեն 1 Tbit-ից ավելի տեսական հզորությամբ ալիքներ): Մի մոռացեք, որ շատ հազվադեպ ուժեղացման հարձակումները տևում են մեկ ժամից ավելի: Եթե դուք Spamhaus-ն եք, և բոլորը ձեզ դուր չեն գալիս, այո, նրանք կարող են փորձել փակել ձեր ալիքները մի քանի օրով՝ նույնիսկ գլոբալ բոտնետի հետագա գոյատևման վտանգի տակ։ Եթե դուք պարզապես ունեք առցանց խանութ, նույնիսկ եթե դա mvideo.ru-ն է, դուք շատ շուտով չեք տեսնի 1 Tbit-ը մի քանի օրվա ընթացքում (հուսով եմ):
SYN/ACK ողողման, փաթեթների մասնատման և այլնի հետ հարձակումները հետ մղելու համար ձեզ անհրաժեշտ են սարքավորումներ կամ ծրագրային համակարգեր՝ նման հարձակումները հայտնաբերելու և դադարեցնելու համար:
Շատերը նման սարքավորումներ են արտադրում (Arbor, լուծումներ կան Cisco-ից, Huawei-ից, ծրագրային ապահովման ներդրում Wanguard-ից և այլն), շատ backbone օպերատորներ արդեն տեղադրել են այն և վաճառում են DDoS պաշտպանության ծառայություններ (ես գիտեմ Rostelecom-ի, Megafon-ի, TTK-ի, MTS-ի տեղադրումների մասին: , փաստորեն, բոլոր խոշոր պրովայդերները նույնն են անում հոսթերների հետ իրենց սեփական պաշտպանությամբ a-la OVH.com, Hetzner.de, ես ինքս հանդիպել եմ պաշտպանության ihor.ru-ում): Որոշ ընկերություններ մշակում են իրենց ծրագրային լուծումները (DPDK-ի նման տեխնոլոգիաները թույլ են տալիս մշակել տասնյակ գիգաբիթ տրաֆիկ մեկ ֆիզիկական x86 մեքենայի վրա):
Հայտնի խաղացողներից բոլորը կարող են քիչ թե շատ արդյունավետ պայքարել L3/L4 DDoS-ի դեմ: Հիմա ես չեմ ասի, թե ով ունի ավելի մեծ ալիքի առավելագույն թողունակությունը (սա ներքին տեղեկատվություն է), բայց սովորաբար դա այնքան էլ կարևոր չէ, և միակ տարբերությունն այն է, թե որքան արագ է գործարկվում պաշտպանությունը (ակնթարթորեն կամ ծրագրի դադարեցումից մի քանի րոպե հետո, ինչպես Hetzner-ում):
Հարցն այն է, թե որքանով է դա արվում. ուժեղացման գրոհը կարող է հետ մղվել՝ արգելափակելով երթևեկությունը այն երկրներից, որտեղ ամենաշատ վնասակար երթևեկությունն է, կամ կարելի է հրաժարվել միայն իսկապես անհարկի երթևեկությունից:
Բայց միևնույն ժամանակ, իմ փորձից ելնելով, շուկայի բոլոր լուրջ խաղացողները հաղթահարում են դա առանց խնդիրների՝ Qrator, DDoS-Guard, Kaspersky, G-Core Labs (նախկինում SkyParkCDN), ServicePipe, Stormwall, Voxility և այլն:
Ես չեմ հանդիպել պաշտպանության այնպիսի օպերատորներից, ինչպիսիք են Rostelecom-ը, Megafon-ը, TTK-ն, Beeline-ը, գործընկերների ակնարկների համաձայն, նրանք բավականին լավ են մատուցում այս ծառայությունները, բայց մինչ այժմ փորձի պակասը պարբերաբար ազդում է. երբեմն անհրաժեշտ է ինչ-որ բան շտկել աջակցության միջոցով: պաշտպանության օպերատորի.
Որոշ օպերատորներ ունեն «Պաշտպանություն հարձակումներից L3/L4 մակարդակի վրա» կամ «ալիքի պաշտպանություն» առանձին ծառայություն, որն արժե շատ ավելի քիչ, քան պաշտպանությունը բոլոր մակարդակներում:
Ինչու՞ հիմնական մատակարարը չի վանում հարյուրավոր Գբիթերի հարձակումները, քանի որ այն չունի իր սեփական ալիքները:Պաշտպանության օպերատորը կարող է միանալ խոշոր պրովայդերներից որևէ մեկին և հետ մղել հարձակումները «իր հաշվին»: Դուք ստիպված կլինեք վճարել ալիքի համար, բայց այս հարյուրավոր Գբիթերը միշտ չէ, որ կօգտագործվեն, կան տարբերակներ՝ այս դեպքում զգալիորեն նվազեցնելու ալիքների արժեքը, ուստի սխեման մնում է գործունակ:
Սրանք այն հաշվետվություններն են, որոնք ես պարբերաբար ստանում էի ավելի բարձր մակարդակի L3/L4 պաշտպանությունից՝ հոսթինգ մատակարարի համակարգերին աջակցելիս:
Պաշտպանություն L7 մակարդակում (կիրառման մակարդակ)
L7 մակարդակի հարձակումները (կիրառման մակարդակ) ի վիճակի են հետևողականորեն և արդյունավետ կերպով հետ մղել ստորաբաժանումները:
Ես բավականին իրական փորձ ունեմ
— Qrator.net;
- DDoS-Guard;
- G-Core Labs;
- Կասպերսկի.
Նրանք գանձում են մաքուր տրաֆիկի յուրաքանչյուր մեգաբիթ, մեկ մեգաբիթն արժե մոտ մի քանի հազար ռուբլի: Եթե ունեք առնվազն 100 Մբիթ/վ մաքուր տրաֆիկ - օհ: Պաշտպանությունը շատ թանկ կարժենա։ Ես կարող եմ ձեզ ասել հետևյալ հոդվածներում, թե ինչպես կարելի է նախագծել հավելվածներ, որպեսզի շատ խնայեք անվտանգության ալիքների հզորության վրա:
Իսկական «բլրի արքան» Qrator.net-ն է, մնացածը հետ են մնում նրանցից։ Qrator-ները առայժմ միակն են իմ փորձով, ովքեր տալիս են զրոյին մոտ կեղծ պոզիտիվների տոկոս, բայց միևնույն ժամանակ դրանք մի քանի անգամ ավելի թանկ են, քան շուկայի մյուս խաղացողները:
Մյուս օպերատորները նույնպես ապահովում են բարձրորակ և կայուն պաշտպանություն: Մեր կողմից աջակցվող շատ ծառայություններ (ներառյալ երկրում շատ հայտնիները!) պաշտպանված են DDoS-Guard-ից, G-Core Labs-ից և միանգամայն գոհ են ստացված արդյունքներից:
Քրատորի կողմից ետ մղված հարձակումները
Ես նաև փորձ ունեմ անվտանգության փոքր օպերատորների հետ, ինչպիսիք են cloud-shield.ru-ն, ddosa.net-ը, հազարավոր նրանցից: Միանշանակ խորհուրդ չեմ տա, քանի որ... Ես մեծ փորձ չունեմ, բայց կպատմեմ նրանց աշխատանքի սկզբունքների մասին։ Նրանց պաշտպանության արժեքը հաճախ 1-2 կարգով ցածր է, քան հիմնական խաղացողներինը: Որպես կանոն, նրանք գնում են մասնակի պաշտպանության ծառայություն (L3/L4) ավելի մեծ խաղացողներից մեկից + կատարում են իրենց պաշտպանությունը ավելի բարձր մակարդակներում հարձակումներից: Սա կարող է բավականին արդյունավետ լինել + դուք կարող եք լավ սպասարկում ստանալ ավելի քիչ գումարով, բայց դրանք դեռևս փոքր ընկերություններ են փոքր անձնակազմով, խնդրում ենք հիշեք դա:
Ո՞րն է L7 մակարդակում հարձակումները հետ մղելու դժվարությունը:
Բոլոր հավելվածները եզակի են, և դուք պետք է թույլատրեք երթևեկությունը, որն օգտակար է նրանց համար և արգելափակեք վնասակարները: Միշտ չէ, որ հնարավոր է միանշանակորեն ջնջել բոտերին, այնպես որ դուք պետք է օգտագործեք երթևեկության մաքրման շատ, իսկապես ՇԱՏ աստիճաններ:
Ժամանակին բավական էր nginx-testcookie մոդուլը (
Ցավոք սրտի, հարձակումներն ավելի են դժվարացել։ testcookie-ն օգտագործում է JS-ի վրա հիմնված բոտերի ստուգումներ, և շատ ժամանակակից բոտեր կարող են հաջողությամբ անցնել դրանք:
Հարձակման բոտնետները նույնպես եզակի են, և պետք է հաշվի առնել յուրաքանչյուր մեծ բոտնետի բնութագրերը:
Ուժեղացում, բոտցանցից ուղիղ հեղեղում, տարբեր երկրներից տրաֆիկի զտում (տարբեր երկրների համար տարբեր զտիչներ), SYN/ACK flooding, փաթեթների մասնատում, ICMP, http flooding, մինչդեռ հավելվածի/http մակարդակում կարող եք գալ անսահմանափակ թվով տարբեր հարձակումներ:
Ընդհանուր առմամբ, ալիքների պաշտպանության, տրաֆիկի մաքրման մասնագիտացված սարքավորումների, հատուկ ծրագրակազմի, յուրաքանչյուր հաճախորդի համար զտման լրացուցիչ պարամետրերի մակարդակում կարող են լինել տասնյակ և հարյուրավոր զտման մակարդակներ:
Սա ճիշտ կառավարելու և տարբեր օգտատերերի համար զտման կարգավորումները ճիշտ կարգավորելու համար ձեզ մեծ փորձ և որակյալ անձնակազմ է անհրաժեշտ: Նույնիսկ խոշոր օպերատորը, որը որոշել է պաշտպանական ծառայություններ մատուցել, չի կարող «հիմար կերպով գումար նետել խնդրի վրա». փորձը պետք է ձեռք բերել ստախոս կայքերից և օրինական տրաֆիկի կեղծ պոզիտիվներից:
Անվտանգության օպերատորի համար «repel DDoS» կոճակ չկա, կան մեծ թվով գործիքներ, և դուք պետք է իմանաք, թե ինչպես օգտագործել դրանք:
Եվ ևս մեկ բոնուսային օրինակ.
600 Մբիթ հզորությամբ հարձակման ժամանակ հոսթերի կողմից արգելափակվել է անպաշտպան սերվերը
(Թրաֆիկի «կորուստը» նկատելի չէ, քանի որ հարձակման է ենթարկվել միայն 1 կայք, այն ժամանակավորապես հեռացվել է սերվերից և արգելափակումը վերացվել է մեկ ժամվա ընթացքում):
Նույն սերվերը պաշտպանված է: Հարձակվողները «հանձնվել» են մեկ օր ետ մղված հարձակումներից հետո։ Հարձակումն ինքնին ամենաուժեղը չէր։
L3/L4-ի հարձակումն ու պաշտպանությունը ավելի աննշան են, դրանք հիմնականում կախված են ալիքների հաստությունից, հարձակումների հայտնաբերման և զտման ալգորիթմներից:
L7 հարձակումներն ավելի բարդ և օրիգինալ են, դրանք կախված են հարձակման ենթարկվող հավելվածից, հարձակվողների հնարավորություններից և երևակայությունից: Դրանցից պաշտպանությունը պահանջում է մեծ գիտելիքներ և փորձ, և արդյունքը կարող է լինել ոչ անմիջական և ոչ հարյուր տոկոս: Մինչև Google-ը պաշտպանության համար մեկ այլ նեյրոնային ցանց ստեղծեց:
Source: www.habr.com