Atac Ddos - ghid detaliat. Ce sunt atacurile ddos, cum sunt efectuate și metodele de protecție împotriva acestora

Atacurile distribuite prin refuz de serviciu sau DDoS pe scurt, au devenit răspândite și reprezintă o durere de cap majoră pentru proprietarii de resurse Internet din întreaga lume. De aceea, protecția împotriva atacurilor DDoS pe site nu este o opțiune suplimentară astăzi, dar O condiție prealabilă pentru cei care doresc să evite timpii morți, pierderi uriașe și o reputație deteriorată.

Vă vom spune mai detaliat ce fel de boală este și cum să vă protejați de ea.

Ce este DDoS

Refuzul distribuit al serviciului este un atac asupra unui sistem de informații pentru a împiedica procesarea cererilor utilizatorilor. În cuvinte simple, DDoS este suprimarea unei resurse web sau a unui server cu trafic dintr-un număr mare de surse, făcându-l inaccesibil. Adesea, un astfel de atac este efectuat pentru a provoca o întrerupere a funcționării resurselor de rețea într-o companie mare sau organizație guvernamentală.

Atacurile DDoS sunt similare cu o altă amenințare comună pe web - Denial of Service (DoS). Singura diferență este că un atac tipic distribuit provine dintr-un singur punct, în timp ce un atac DDos este mai mare și provine din surse diferite.

Scopul principal al unui atac DDoS este de a face un site web inaccesibil vizitatorilor prin blocarea funcționării acestuia. Dar există momente în care astfel de atacuri sunt efectuate pentru a distrage atenția de la alte influențe nocive. Un atac DDoS poate fi, de exemplu, efectuat atunci când un sistem de securitate este compromis pentru a prelua baza de date a unei organizații.

Atacurile DDoS au atras atenția publicului în 1999 cu o serie de atacuri asupra site-urilor web ale companiilor mari (Yahoo, eBay, Amazon, CNN). De atunci, acest tip de criminalitate cibernetică a evoluat într-o amenințare globală. Potrivit experților, în ultimii ani, frecvența acestora a crescut de 2,5 ori, iar puterea maximă a început să depășească 1 Tbit / s. Fiecare a șasea companie rusă a devenit cel puțin o dată victimă a unui atac DDoS. Până în 2020, numărul lor total va ajunge la 17 milioane.

O platformă de găzduire cu protecție non-stop împotriva celor mai sofisticate atacuri DDoS.

Motivele atacurilor DDoS

  1. Animozitate personală. Adesea îi încurajează pe atacatori să atace corporații sau companii guvernamentale. De exemplu, în 1999, site-urile FBI au fost atacate și dezactivate timp de câteva săptămâni. Acest lucru s-a întâmplat datorită faptului că FBI a lansat un raid pe scară largă asupra hackerilor.
  2. Protest politic. De obicei, astfel de atacuri sunt efectuate de hacktiviști - specialiști IT cu opinii radicale asupra protestelor civile. Un exemplu bine cunoscut este o serie de atacuri cibernetice asupra estoniei instituțiile statuluiîn 2007. Motivul lor probabil a fost posibilitatea demolării Monumentului soldatului liberator din Tallinn.
  3. Divertisment. Astăzi, tot mai mulți oameni sunt dependenți de DDoS și vor să-și încerce mâna. Hackerii începători lansează adesea atacuri pentru distracție.
  4. Extorcare și șantaj.Înainte de a lansa un atac, hackerul contactează proprietarul resursei și cere o răscumpărare.
  5. Competiție. Atacurile DDoS pot fi comandate de la o companie lipsită de scrupule pentru a-și influența concurenții.

Cine sunt potențialele victime

DDoS poate distruge site-uri web de toate dimensiunile, de la bloguri obișnuite până la mari corporații, bănci și alte instituții financiare.

Potrivit cercetărilor efectuate de Kaspersky Lab, atacul ar putea costa compania până la 1,6 milioane de dolari. Aceasta este o pagubă gravă, deoarece resursa web atacată nu poate fi întreținută pentru o perioadă de timp, motiv pentru care este întreruptă.

Cel mai adesea site-urile și serverele suferă de atacuri DDoS:

  • companii mari și agenții guvernamentale;
  • instituții financiare (bănci, societăți de administrare);
  • servicii de cupoane;
  • instituții medicale;
  • sisteme de plată;
  • Agregatoare de media și informații;
  • magazine online și companii de comerț electronic;
  • jocuri online și servicii de jocuri;
  • schimburi de criptomonede.

Nu cu mult timp în urmă, echipamentele conectate la Internet, cunoscute sub numele de Internetul obiectelor (IoT), au fost adăugate la lista tristă a victimelor frecvente ale atacurilor DDoS. Cea mai mare dinamică de creștere în acest domeniu este demonstrată de atacurile cibernetice care vizează perturbarea funcționării comenzilor online în magazinele mari sau centrele comerciale.

Mecanismul de lucru

Toate serverele web au propriile limite în ceea ce privește numărul de solicitări pe care le pot gestiona în același timp. În plus, există o limită pentru lățime de bandă canalul care conectează rețeaua și serverul. Pentru a ocoli aceste restricții, atacatorii creează o rețea de calculatoare cu software rău intenționat, numită „botnet” sau „rețea zombie”.

Pentru a crea o botnet, infractorii cibernetici răspândesc troianul prin e-mail, rețele sociale sau site-uri web. Computerele incluse în botnet nu au nicio conexiune fizică între ele. Ele sunt unite doar „servind” obiectivele master-hackerului.

În timpul unui atac DDoS, un hacker trimite comenzi către computerele zombie „infectate” și acestea încep o ofensivă. Botnet-urile generează o cantitate imensă de trafic care poate suprasolicita orice sistem. Principalele „obiecte” pentru DDoS sunt de obicei lățimea de bandă a serverului, serverul DNS și conexiunea la internet în sine.

Semne de atac DDoS

Când acțiunile intrușilor își ating scopul, acesta poate fi determinat instantaneu de eșecuri în funcționarea serverului sau a resursei găzduite acolo. Dar există o serie de semne indirecte prin care puteți afla despre un atac DDoS chiar de la început.

  • Software-ul server și sistemul de operare pornesc frecvent și eșuează clar- îngheț, oprire incorectă etc.
  • putere hardware server, care diferă brusc de media zilnică.
  • Creștere rapidă de intraretraficîntr-unul sau mai multe porturi.
  • Repetat acțiuni duplicate de același tip clienții dintr-o singură resursă (accesarea site-ului, încărcarea unui fișier).
  • Când analizați jurnalele (jurnalele de activitate ale utilizatorului) de pe server, firewall sau dispozitive de rețea, multe cereri de același tip din surse diferite catre unul port sau serviciu. Ar trebui să fiți deosebit de precaut dacă audiența cererilor diferă brusc de publicul țintă pentru site sau serviciu.

Clasificarea tipurilor de atac DDoS

Protocol ofensiv (strat de transport)

Un atac DDoS este direcționat către stratul de rețea al unui server sau resursă web, prin urmare este adesea denumit un strat de rețea sau un strat de transport. Scopul său este de a supraîncărca spațiul de masă pe un firewall cu un jurnal de securitate încorporat (firewall), pe o rețea centrală sau pe un sistem de echilibrare a sarcinii.

Cea mai comună metodă DDoS la nivelul de transport este potop de rețea, creând un flux uriaș de cereri fictive pentru niveluri diferite cu care nodul receptor nu poate face față fizic.

Obișnuit serviciu de rețea aplică regula FIFO conform căreia computerul nu merge la service a doua solicitare până nu procesează prima. Dar în timpul unui atac, numărul de solicitări crește atât de mult încât dispozitivul nu are resurse suficiente pentru a finaliza lucrarea cu prima solicitare. Drept urmare, inundația saturează cât mai mult lățimea de bandă și înfundă complet toate canalele de comunicație.

Tipuri comune de inundații în rețea

  • Potop HTTP- o masă de mesaje HTTP obișnuite sau criptate sunt trimise către serverul atacat, înfundând nodurile de comunicare.
  • Potop ICMP- botnetul atacatorului suprasolicită mașina gazdă a victimei cu cereri de servicii, la care este obligat să dea răspunsuri de ecou. Un exemplu particular al acestui tip de atac este Pinundarea sau atac Smurf, atunci când canalele de comunicații sunt umplute cu cereri de ping utilizate pentru a verifica disponibilitatea unui nod de rețea. Din cauza amenințării inundațiilor ICMP, administratorii de sistem adesea blochează complet capacitatea de a face cereri ICMP folosind un firewall.
  • Inundația SYN- Atacul afectează unul dintre mecanismele de bază ale protocolului TCP, cunoscut sub numele de principiul „triple handshake” (algoritm cerere-răspuns: pachet SYN - pachet SYN-ACK - pachet ACK). Victima este bombardată cu false solicitări SYN fără răspuns. Canalul utilizatorului este înfundat cu o coadă de conexiuni TCP de la conexiunile de ieșire care așteaptă un pachet de răspuns ACK.
  • Inundația UDP- porturile aleatorii ale mașinii gazdă a victimei sunt inundate cu pachete UDP, răspunsurile la care supraîncarcă resursele de rețea. Se numește o variație a inundațiilor UDP direcționate către un server DNS Inundație DNS.
  • Potop MAC- ținta este echipamentul de rețea, ale cărui porturi sunt înfundate cu fluxuri de pachete „goale” cu adrese MAC diferite. Pentru a vă proteja împotriva acestui tip de atacuri DdoS, comutatoarele de rețea sunt configurate cu o verificare a validității și filtrarea adresei MAC.

Atacuri de nivel de aplicație (strat de infrastructură)

Această varietate este utilizată atunci când este necesară confiscarea sau dezactivarea resurselor hardware. Ținta „raiderilor” poate fi atât memoria fizică cât și cea cu acces aleatoriu sau timpul procesorului.

Nu este necesar să supraîncărcați lățimea de bandă. Este suficient doar pentru a supraîncărca procesorul victimei sau, cu alte cuvinte, pentru a prelua întreaga cantitate de timp de procesare.

Tipuri de atacuri DDoS de nivel de aplicație

  • Expediere "GreuNS "pachete mergând direct la procesor. Dispozitivul nu poate gestiona calcule complexe și începe să funcționeze defectuos, dezactivând astfel vizitatorii să acceseze site-ul.
  • Scriptul este utilizat pentru a umple serverul Conținut nedorit- fișiere jurnal, „comentarii ale utilizatorilor” etc. Dacă administratorul de sistem nu a stabilit o limită pentru server, atunci hackerul poate crea pachete uriașe de fișiere care vor umple întregul hard disk.
  • Probleme cu sistemul de cote... Unele servere utilizează un CGI (Common Gateway Interface) pentru a comunica cu programe externe. Când obține acces la CGI, un atacator își poate scrie propriul script care va folosi unele dintre resursele, de exemplu, timpul procesorului, în interesul său.
  • Verificare incompletă date despre vizitatori. De asemenea, duce la utilizarea prelungită sau chiar infinită a resurselor procesorului până la epuizare.
  • Atac de tip II... Provoacă o alarmă falsă în sistemul de protecție, care poate închide automat resursa din lumea exterioară.

Atacuri la nivel de aplicație

Un atac DDoS la nivel de aplicație exploatează omisiunile din generarea de cod care expune software-ul intruziunii externe. LA acest fel include un atac atât de obișnuit ca „Ping of Death” - trimiterea masivă de pachete ICMP la computerul victimei de lungime mai mare, provocând o revărsare a bufferului.

Dar hackerii profesioniști recurg rar la o metodă atât de simplă precum congestia lățimii de bandă. Pentru a ataca sistemele complexe ale companiilor mari, ei încearcă să înțeleagă pe deplin structura sistemului a serverului și să scrie un exploit - un program, un lanț de comenzi sau o bucată de cod de program care ia în considerare vulnerabilitatea software-ului victimei și este folosită pentru atacă un computer.

Atacuri DNS

  1. Primul grup își propune să vulnerabilitatesi inPE Serverele DNS. Acestea includ astfel de tipuri comune de infracțiuni cibernetice precum atacul Zero-day și Fast Flux DNS.
    Unul dintre cele mai frecvente tipuri de atacuri DNS se numește DNS Spoofing. În timpul acestuia, atacatorii înlocuiesc adresa IP din memoria cache a serverului, redirecționând utilizatorul către o pagină falsă. În timpul tranziției, criminalul obține acces la datele personale ale utilizatorului și le poate folosi în avantajul lor. De exemplu, în 2009, din cauza falsificării înregistrării DNS, utilizatorii nu au putut merge pe Twitter o oră. Acest atac a fost de natură politică. Atacatorii instalați pe pagina principala avertismente de rețele sociale ale hackerilor din Iran legate de agresiunea americană
  2. Al doilea grup este atacurile DdoS care duc la Inoperabilitate DNS-servitori... În caz de eșec al acestora, utilizatorul nu se va putea conecta la pagina dorită, deoarece browserul nu va găsi adresa IP specifică unui anumit site.

Prevenirea și protejarea împotriva atacurilor DDoS

Conform datelor Corero Network Security, mai mult de ⅔ din toate companiile din lume sunt supuse atacurilor de „refuz de acces” în fiecare lună. Mai mult, numărul lor ajunge la 50.

Proprietarii de site-uri care nu asigură protecția serverului împotriva atacurilor DDoS nu numai că pot suferi pierderi uriașe, ci și pot reduce încrederea clienților și competitivitatea pe piață.

Cel mai eficient mod de a vă proteja împotriva atacurilor DDoS sunt filtrele instalate de furnizor pe canalele de internet cu lățime de bandă mare. Ei efectuează o analiză consecventă a întregului trafic și identifică activitatea sau erorile suspecte ale rețelei. Filtrele pot fi instalate atât la nivelul routerelor, cât și utilizând dispozitive hardware speciale.

Metode de protecție

  1. Chiar și în etapa de scriere a software-ului, trebuie să vă gândiți la securitatea site-ului. Pe deplin verificați software-ul pentru erori și vulnerabilități.
  2. In mod regulat actualizează programulși, de asemenea, luați în considerare opțiunea de a trece la o versiune mai veche dacă apar probleme.
  3. Urma restricționarea accesului... Serviciile legate de administrare ar trebui să fie complet închise de accesul terților. Protejați-vă contul de administrator cu parole puternice și schimbați-le des. Ștergeți în timp util conturile angajaților care au renunțat.
  4. Acces la interfață de administrare trebuie efectuată exclusiv din rețeaua internă sau prin VPN.
  5. Scanați sistemul prezența vulnerabilităților... Cele mai periculoase variante ale vulnerabilităților sunt publicate în mod regulat de către autoritatea OWASP Top 10.
  6. aplica firewall-ul aplicației- WAF (Firewall pentru aplicații web). Monitorizează traficul transmis și monitorizează legitimitatea solicitărilor.
  7. Utilizare CDN(Rețea de livrare a conținutului). Este o rețea de livrare de conținut care funcționează pe o rețea distribuită. Traficul este sortat pe mai multe servere, ceea ce reduce latența vizitatorilor.
  8. Controlați traficul de intrare cu liste de control acces (ACL), unde va fi indicată lista persoanelor care au acces la obiect (program, proces sau fișier), precum și rolurile acestora.
  9. Poate sa bloca traficul care provine din atacarea dispozitivelor. Acest lucru se face în două moduri: folosind firewall-uri sau ACL-uri. În primul caz, un flux specific este blocat, dar ecranele nu pot separa traficul „pozitiv” de traficul „negativ”. Și în al doilea, se filtrează protocoale minore. Prin urmare, nu va fi de nici un folos dacă hackerul aplică cereri de prim rang.
  10. Pentru a vă proteja de falsificarea DNS, trebuie să faceți periodic spălați memoria cache DNS.
  11. Utilizare protecție împotriva spamboților- captcha (captcha), intervale de timp „umane” pentru completarea formularelor, reCaptcha (caseta de selectare „Nu sunt un robot”) etc.
  12. Atac invers... Tot traficul rău intenționat este redirecționat către atacator. Va ajuta nu numai să respingă atacul, ci și să distrugă serverul atacatorului.
  13. Plasarea resurselor pe mai multe servere independente... Dacă un server eșuează, restul va fi operațional.
  14. Folosind dovedit protecție hardware din atacurile DDoS. De exemplu, Impletec iCore sau DefensePro.
  15. Alegeți un furnizor de hosting care funcționează cu furnizor de încredere servicii de securitate cibernetică. Printre criteriile de fiabilitate, experții disting: disponibilitatea garanțiilor de calitate, protecția împotriva întregii game de amenințări, asistență tehnică non-stop, transparență (accesul clienților la statistici și analize), precum și absența tarifării pentru traficul rău intenționat .

Concluzie

În acest articol, am analizat ce înseamnă un atac DDoS și cum să vă protejați site-ul de atacuri. Este important să ne amintim că o astfel de activitate rău intenționată poate dezactiva chiar și cele mai sigure și mai mari resurse web. Acest lucru va implica consecințe grave sub forma unor pierderi uriașe și a pierderii clienților. De aceea, protejarea resurselor dvs. împotriva atacurilor DDoS este o sarcină urgentă pentru toate structurile comerciale și agențiile guvernamentale.

Dacă doriți un nivel profesional de protecție împotriva atacurilor DDoS - alegeți! Monitorizare constantă și asistență tehnică non-stop.

Recent, ne-am putut asigura că atacurile DDoS sunt o armă destul de puternică în spațiul informațional. Cu ajutorul atacurilor DDoS cu putere mare, puteți nu numai să dezactivați unul sau mai multe site-uri, ci și să întrerupeți funcționarea întregului segment de rețea sau să dezactivați Internetul într-o țară mică. În zilele noastre, atacurile DDoS devin din ce în ce mai frecvente și puterea lor crește de fiecare dată.

Dar care este esența unui astfel de atac? Ce se întâmplă în rețea când rulează, de unde a venit ideea și de ce este atât de eficientă? Veți găsi răspunsuri la toate aceste întrebări în articolul nostru de astăzi.

DDoS, sau refuzul de serviciu distribuit, este un atac asupra unui computer specific dintr-o rețea care face ca acesta să nu mai răspundă la alți utilizatori prin supraîncărcarea acestuia.

Pentru a înțelege ce înseamnă un atac ddos, să ne imaginăm o situație: un server web oferă utilizatorilor o pagină a site-ului, să presupunem că durează o jumătate de secundă pentru a crea o pagină și a o transfera complet pe computerul utilizatorului, apoi serverul nostru poate funcționa normal la o frecvență de două solicitări pe secundă. Dacă există mai multe astfel de solicitări, acestea vor fi în coadă și procesate de îndată ce serverul web devine gratuit. Toate cererile noi sunt adăugate la sfârșitul cozii. Acum să ne imaginăm că există o mulțime de solicitări, iar cele mai multe dintre ele merg doar pentru a supraîncărca acest server.

Dacă rata noilor solicitări care sosesc depășește rata de procesare, atunci, în timp, coada de solicitări va fi atât de lungă încât, de fapt, noile cereri nu vor mai fi procesate. Acesta este principiul principal. atacuri ddos... Anterior, astfel de solicitări au fost trimise de la o singură adresă IP și aceasta a fost denumită atac de refuz de serviciu - Dead-of-Service, de fapt, acesta este răspunsul la întrebarea care este dosarul. Dar astfel de atacuri pot fi combătute în mod eficient prin simpla adăugare a adresei IP sursă sau mai multe la lista de blocuri; în plus, mai multe dispozitive, datorită limitărilor lățimii de bandă a rețelei, nu pot genera fizic suficiente pachete pentru a suprasolicita un server serios.

Prin urmare, atacurile sunt acum efectuate direct de la milioane de dispozitive. Cuvântul Distribuit a fost adăugat la nume, distribuit, sa dovedit - DDoS. Unul câte unul, aceste dispozitive nu înseamnă nimic și, probabil, au o conexiune la Internet cu o viteză nu foarte mare, dar când încep să trimită toate cererile către un server în același timp, pot atinge o viteză totală de până la 10 TB / s. Și acesta este deja un indicator destul de serios.

Rămâne să ne dăm seama unde atacatorii iau atât de multe dispozitive pentru a-și efectua atacurile. aceasta calculatoare obișnuite, sau diverse Dispozitive IoT la care atacatorii au putut accesa. Poate fi orice vă place, camere video și routere cu un firmware pe termen lung, care nu este actualizat, dispozitive de control și calculatoare obișnuite ale utilizatorilor care au prins cumva virusul și nu știu despre existența acestuia sau nu se grăbesc să-l șteargă.

Tipuri de atacuri DDoS

Există două tipuri principale de atacuri DDoS, unul axat pe supraîncărcarea unui anumit program și atacuri care vizează supraîncărcarea canalului de rețea însuși pe computerul țintă.

Atacuri la supraîncărcarea oricărui program, numite și atacuri în 7 (în modelul de rețea osi, există șapte niveluri, iar ultimul este aplicații individuale). Un atacator atacă un program care folosește o mulțime de resurse de server, trimițând un număr mare de cereri. În cele din urmă, programul nu are timp să proceseze toate conexiunile. Acest punct de vedere l-am considerat mai sus.

Atacurile DoS pe canalul de Internet necesită mult mai multe resurse, dar sunt mult mai dificil de gestionat. Dacă facem o analogie cu osi, atunci acestea sunt atacuri la nivelul 3-4, și anume pe canal sau protocolul de transfer de date. Faptul este că orice conexiune la Internet are propria limită de viteză la care datele pot fi transmise prin ea. Dacă există o mulțime de date, atunci echipamentul de rețea, la fel ca programul, le va pune la coadă pentru transmisie și dacă cantitatea de date și viteza de sosire a acestora sunt mult mai mari decât viteza canalului, atunci va fi supraîncărcat. Rata de transfer de date în astfel de cazuri poate fi calculată în gigaocteți pe secundă. De exemplu, în cazul deconectării de la internetul unei țări mici din Liberia, rata de transfer a datelor a fost de până la 5 TB / sec. Cu toate acestea, 20-40 Gb / s este suficient pentru a suprasolicita majoritatea infrastructurilor de rețea.

Originea atacurilor DDoS

Mai sus, am examinat ce sunt atacurile DDoS, precum și metodele atacurilor DDoS, este timpul să trecem la originea lor. V-ați întrebat vreodată de ce aceste atacuri sunt atât de eficiente? Ele se bazează pe strategii militare care au fost dezvoltate și testate de-a lungul mai multor decenii.

În general, multe dintre abordările securitatea informațiilor bazat pe strategii militare din trecut. Există viruși troieni care seamănă cu bătălia antică pentru Troia, viruși ransomware care îți fură fișierele pentru a obține răscumpărare și atacuri DDoS care limitează resursele inamicului. Limitând opțiunile adversarului, câștigi puțin control asupra acțiunilor sale ulterioare. Această tactică funcționează foarte bine pentru ambii strategi militari. și pentru infractorii cibernetici.

În cazul strategiei militare, ne putem gândi foarte simplu la tipurile de resurse care pot fi limitate pentru a limita capacitățile inamicului. Limitarea apei, hranei și materialelor de construcție ar distruge pur și simplu inamicul. Cu computerele, totul este diferit, există diverse servicii, de exemplu, DNS, server web, servere E-mail... Toți au infrastructură diferită, dar există ceva care îi unește. Este o rețea. Fără o rețea, nu veți putea accesa serviciul de la distanță.

Domnii războinici pot otrăvi apa, arde recolte și pot stabili puncte de control. Infractorii cibernetici pot trimite date incorecte către serviciu, îl pot obliga să consume toată memoria sau să suprasolicite complet întregul canal de rețea. Strategiile de apărare au, de asemenea, aceleași rădăcini. Administratorul serverului va trebui să monitorizeze traficul primit pentru a găsi traficul rău intenționat și să îl blocheze chiar înainte de a ajunge la canalul sau programul de rețea țintă.

Fondator și administrator de site, îmi place software-ul open source și sistemul de operare Linux. În prezent folosesc Ubuntu ca sistemul meu principal de operare. Pe lângă Linux, mă interesează tot ce ține de tehnologia de informațieși știința modernă.

Dacă citiți ghidul nostru și implementați toate tehnologiile descrise - protejați-vă computerul de amenințările hackerilor! Nu neglija asta!

În domeniul securității informațiilor, atacurile ddos ​​ocupă unul dintre locurile de top în clasamentul amenințărilor electronice. Dar majoritatea utilizatorilor au cunoștințe foarte limitate despre acest subiect. Acum vom încerca să abordăm acest subiect în modul cel mai detaliat și accesibil, astfel încât să vă puteți imagina ce înseamnă acest tip de amenințare electronică, cum se realizează și, în consecință, cum să faceți față în mod eficient. Deci, faceți cunoștință - atac DDOS.

Terminologie

Pentru a vorbi aceeași limbă, trebuie să introducem termeni și definițiile acestora.

Atacul Dos este un atac de negare a serviciului. De aici și abrevierea în limba engleză dos - Denial of Service. Unul dintre subtipuri este un atac distribuit efectuat simultan de la mai mulți și, de obicei, de la un număr mare de gazde. Vom dedica partea principală a discuției acestei opțiuni, deoarece atacul ddos ​​are consecințe mai distructive, iar diferența semnificativă este doar în numărul de gazde utilizate pentru atac.

Pentru a vă înțelege mai ușor... Astfel de acțiuni vizează oprirea temporară a funcționării oricărui serviciu. Poate fi un site separat în rețea, un furnizor mare de Internet sau celular, precum și un serviciu separat (acceptarea cardurilor de plastic). Pentru ca atacul să aibă succes și să aducă acțiuni distructive, acesta trebuie efectuat dintr-un număr mare de puncte (acest moment va fi discutat mai detaliat mai jos). De aici și „atacul distribuit”. Dar esența rămâne aceeași - de a întrerupe activitatea unui anumit sistem.

Pentru a completa imaginea, trebuie să înțelegeți cine și în ce scop efectuează astfel de acțiuni.

Atacurile prin refuz de serviciu, la fel ca alte infracțiuni informatice, sunt pedepsite prin lege. Prin urmare, materialul este prezentat doar în scop informativ. Acestea sunt realizate de specialiști IT, oameni care sunt bine familiarizați cu subiectele „computerelor” și „rețelelor de calculatoare”, sau așa cum a devenit la modă să spună - hackeri. Practic, acest eveniment are ca scop obținerea unui profit, deoarece, de regulă, concurenții fără scrupule comandă atacuri ddos. Un mic exemplu este potrivit aici.

Să presupunem că există doi mari furnizori de internet pe piața serviciilor dintr-un oraș mic. Iar unul dintre ei vrea să dea afară un concurent. Ei comandă un atac dos distribuit pe serverele unui concurent de la hackeri. Iar al doilea furnizor, din cauza supraîncărcării rețelei sale, nu mai poate oferi acces la internet utilizatorilor săi. Ca urmare - pierderea clienților și reputația. Hackerii își primesc recompensa, furnizorii fără scrupule primesc clienți noi.

Dar există adesea cazuri în care „ddosyat” și doar pentru distracție, sau perfecționarea abilităților.

Atac Ddos distribuit

Să fim de acord imediat - vom analiza atacurile computerizate. Prin urmare, dacă vorbim despre mai multe dispozitive de pe care se efectuează un atac, acestea vor fi computere cu software ilegal.

Aici este de asemenea potrivit să facem o mică divagare.. De fapt, pentru a încheia funcționarea unui serviciu sau serviciu, trebuie să depășiți sarcina maximă admisibilă pentru acesta. Cel mai simplu exemplu este accesul la site-ul web. Într-un fel sau altul, este conceput pentru o anumită prezență de vârf. Dacă într-un anumit moment al timpului de zece ori mai mulți oameni vizitează site-ul, atunci serverul nu va putea procesa un astfel de volum de informații și nu va mai funcționa. Iar conexiunile în acest moment se vor face de la un număr mare de computere. Acestea vor fi aceleași noduri care au fost discutate mai sus.

Să vedem cum arată în diagrama de mai jos:

După cum puteți vedea, hackerul a preluat controlul asupra unui număr mare de computere ale utilizatorilor și și-a instalat spyware-ul pe ele. Datorită lui poate acum să efectueze acțiunile necesare. În cazul nostru, pentru a efectua un atac ddos.

Astfel, dacă nu respectați regulile de siguranță atunci când lucrați la computer, puteți fi expus unei infecții cu virus. Și este posibil ca computerul dvs. să fie utilizat ca gazdă pentru a efectua acțiuni rău intenționate.

Va fi util pentru tine: am descris câteva aspecte ale securității în articol.

Dar modul în care vor fi folosite depinde de opțiunea aleasă de atacator.

Clasificarea atacurilor ddos

Următoarele tipuri de atacuri pot fi încercate de intruși:

  1. Congestia lățimii de bandă... Pentru ca computerele conectate la rețea să comunice în mod normal între ele, canalul de comunicație prin care sunt conectate trebuie să funcționeze normal și să ofere parametri suficienți pentru sarcini specifice (de exemplu, lățimea de bandă). Acest tip de atac vizează în mod special supraîncărcarea canalelor de comunicații în rețea. Acest lucru se realizează prin trimiterea constantă a informațiilor incoerente sau de sistem (comanda ping)
  2. Limitarea resurselor... Am discutat deja acest tip mai sus, în exemplul cu acces la un site web. După cum am menționat, serverul a reușit să gestioneze un număr limitat de conexiuni simultane. Atacatorul trebuie să se îndrepte către server un numar mare de conexiuni simultane. Ca urmare, serverul nu va face față sarcinii și nu va mai funcționa.
  3. Atac pe Serverele DNS ... În acest caz, atacul DDOS este, de asemenea, destinat să pună capăt accesului la site-ul web. O altă opțiune este de a redirecționa utilizatorul de pe site-ul corect către unul fals. Acest lucru se poate face în scopul furtului informațiilor personale. Acest lucru se realizează prin atacarea serverelor DNS și înlocuirea adreselor IP cu altele false. Să aruncăm o privire la acest lucru cu un exemplu. O bancă își folosește site-ul web pentru a se stabili online. Utilizatorul trebuie să meargă la el și să introducă datele cardului său de plastic. Pentru a fura aceste informații, un atacator creează un site de același tip și atacă serverele DNS (serverele de nume). Scopul acestui eveniment este de a redirecționa utilizatorul către site-ul atacatorului atunci când acesta încearcă să intre pe site-ul băncii. Dacă acest lucru reușește, utilizatorul, necunoscând amenințarea, va introduce datele sale personale pe site-ul atacatorului și va avea acces la acestea.
  4. Deficiențe în software ... Cel mai dificil este acest tip de atac. Atacatorii identifică defectele software și le folosesc pentru a distruge sistemul. Pentru a comanda un astfel de atac ddos, va trebui să cheltuiți mulți bani

Cum să efectuați un atac DDOS de bricolaj

De exemplu, am decis să vă arătăm cum poate fi efectuat un atac DDOS folosind un software special.

Pentru a începe, descărcați programul la această adresă. Apoi lansați-l. Ar trebui să vedeți o fereastră de pornire:

Trebuie să faceți setările minime:

  1. În coloana „URL”, scrieți adresa site-ului pe care dorim să îl atacăm
  2. Apoi apăsăm butonul „Blocare pe” - Vom vedea resursa țintă
  3. Am pus metoda TCP
  4. Alegerea numărului de fire (Threads)
  5. Setați viteza de trimitere folosind glisorul
  6. Când toate setările sunt terminate, apăsați butonul „IMMA CHARGIN MAH LAZER”

Gata - atacul a început. Repet încă o dată, toate acțiunile sunt prezentate numai în scop informativ.

Cum să vă apărați împotriva atacurilor DDOS

Probabil ați înțeles deja că acest tip de amenințare este foarte periculos. Prin urmare, este foarte important să cunoașteți metodele și principiile de combatere și prevenire a atacurilor distribuite.

  1. Configurarea sistemelor de filtrare este o sarcină pentru administratorii de sistem și furnizorii de găzduire
  2. Achiziționarea de sisteme de protecție împotriva atacurilor DDOS (sisteme software și hardware)
  3. Utilizarea Firewall-ului și a listelor de control al accesului (ACL) - această măsură vizează filtrarea traficului suspect
  4. Creșterea resurselor disponibile și instalarea sistemelor de redundanță
  5. Măsuri tehnice și legale reciproce. Până la aducerea vinovatului la răspundere penală

Video pentru articol:

Concluzie

Acum probabil că înțelegeți întregul pericol al atacurilor DDOS. Problemele legate de asigurarea siguranței resurselor dvs. trebuie abordate foarte responsabil, fără a economisi timp, efort și bani. Mai bine, aveți un specialist separat sau un întreg departament de securitate a informațiilor.

Cititorii obișnuiți foarte des au pus întrebarea cum puteți edita textul dacă fișierul are Format PDF... Răspunsul poate fi găsit în material -

Puteți utiliza o gamă întreagă de măsuri pentru a vă proteja datele. Una dintre aceste opțiuni este

Dacă trebuie să editați videoclipul dvs. online, v-am pregătit o prezentare generală a celor populare.

De ce să căutăm informații pe alte site-uri dacă totul este colectat de la noi?

Lupta împotriva atacurilor DDoS nu este doar o muncă provocatoare, ci și captivantă. Nu este surprinzător faptul că fiecare administrator de sistem încearcă mai întâi să organizeze apărarea pe cont propriu - mai ales că este încă posibil.

Am decis să vă ajutăm în această sarcină dificilă și să publicăm câteva sfaturi scurte, banale și nu universale pentru a vă proteja site-ul de atacuri. Rețetele oferite nu vă vor ajuta să faceți față niciunui atac, dar vă vor salva de cele mai multe pericole.

Ingredientele potrivite

Adevărul dur este că multe site-uri pot fi puse de către oricine folosește atacul Slowloris, care ucide complet Apache, sau prin aranjarea așa-numitei inundații SYN folosind o fermă servere virtuale crescut pe minut în cloud-ul Amazon EC2. Toate sfaturile noastre suplimentare privind protecția împotriva DDoS intern se bazează pe următoarele condiții importante.

1. Renunțați la Windows Server

Practica dictează faptul că un site care rulează pe Windows (2003 sau 2008 - nu contează) este condamnat în cazul DDoS. Motivul eșecului constă în stiva de rețea Windows: atunci când există o mulțime de conexiuni, serverul va începe cu siguranță să răspundă prost. Nu știm de ce Windows Serverîn astfel de situații funcționează atât de dezgustător, dar am întâlnit acest lucru de mai multe ori sau de două ori. Din acest motiv, acest articol se va concentra asupra mijloacelor de protecție împotriva atacurilor DDoS în cazul în care serverul rulează pe Linux. Dacă sunteți norocosul proprietar al unui kernel relativ modern (începând de la 2.6), atunci iptables și utilitățile ipset (pentru adăugarea rapidă a adreselor IP) vor acționa ca instrumentele principale, cu care puteți interzice rapid roboții. O altă cheie a succesului este o stivă de rețea pregătită corespunzător, despre care vom vorbi și mai târziu.

2. Partea cu Apache

A doua condiție importantă este abandonarea lui Apache. Dacă nu aveți o oră, este instalat Apache, apoi cel puțin puneți un proxy în cache - nginx sau lighttpd. Apache "este extrem de dificil de servit fișiere și, și mai rău, este fundamental (adică incorigibil) vulnerabil la cel mai periculos atac Slowloris, care vă permite să blocați serverul cu aproape telefon mobil... Pentru a combate diferite tipuri de Slowloris, utilizatorii Apache au venit mai întâi cu patch-ul Anti-slowloris.diff, apoi mod_noloris, apoi mod_antiloris, mod_limitipconn, mod_reqtimeout ... Dar dacă doriți să dormiți liniștit noaptea, este mai ușor să luați un server HTTP care este invulnerabil pentru Slowloris la codul de nivel arhitectural. Prin urmare, toate rețetele noastre suplimentare se bazează pe presupunerea că nginx este utilizat pe frontend.

Combaterea DDoS

Ce se întâmplă dacă intră DDoS? Tehnica tradițională de autoapărare este de a citi fișierul jurnal al serverului HTTP, de a scrie un model pentru grep (capturarea cererilor de bot) și de a interzice oricui se încadrează sub acesta. Această tehnică va funcționa ... dacă ai noroc. Botnetele sunt de două tipuri, ambele sunt periculoase, dar în moduri diferite. Unul vine pe site complet instantaneu, celălalt - treptat. Primul ucide totul dintr-o dată, dar totul apare complet în jurnale, iar dacă le rulați și interziceți toate adresele IP, atunci sunteți câștigătorul. A doua botnet configurează site-ul cu ușurință și cu atenție, dar poate fi necesar să îl interziceți timp de 24 de ore. Este important ca orice administrator să înțeleagă: dacă intenționați să luptați cu grep, trebuie să fiți gata să dedicați câteva zile luptei împotriva atacului. Următoarele sunt sfaturi despre locul în care se așează paietele înainte ca să nu cadă atât de rău să cadă.

3. Folosiți modulul testcookie

Poate cea mai importantă, eficientă și promptă rețetă pentru acest articol. Dacă DDoS vine pe site-ul dvs., atunci maximul într-un mod eficient modulul testcookie-nginx, dezvoltat de habrapuser @kyprizel, poate lupta înapoi. Ideea este simplă. Cel mai adesea, roboții care implementează inundații HTTP sunt destul de stupide și nu au cookie HTTP și mecanisme de redirecționare. Uneori există altele mai avansate - pot folosi cookie-uri și pot procesa redirecționări, dar aproape niciodată un bot DoS nu are un motor JavaScript complet (deși acest lucru este din ce în ce mai frecvent). Testcookie-nginx acționează ca un filtru rapid între roboți și backend în timpul unui atac L7 DDoS pentru a filtra solicitările nedorite. Ce includ aceste verificări? Știe clientul cum să execute redirecționarea HTTP, acceptă JavaScript, este browserul despre care pretinde că este (deoarece JavaScript este diferit peste tot și dacă clientul spune că este, să zicem, Firefox, îl putem verifica). Verificarea este implementată folosind cookie-uri folosind diferite metode:

  • Set-Cookie + 301 Redirecționare locație HTTP;
  • "Set-Cookie" + redirecționare cu folosind HTML meta refresh;
  • șablon arbitrar și puteți utiliza JavaScript.

Pentru a evita analiza automată, cookie-ul de validare poate fi criptat cu AES-128 și ulterior decriptat în JavaScript partea clientului. În noua versiune a modulului, a devenit posibilă setarea cookie-urilor prin Flash, care vă permite, de asemenea, să eliminați în mod eficient roboții (pe care Flash, de regulă, nu îi acceptă), dar, totuși, blochează accesul pentru mulți utilizatori legitimi ( de fapt, toate dispozitivele mobile). Este de remarcat faptul că este extrem de ușor să începeți să utilizați testcookie-nginx. Dezvoltatorul, în special, oferă câteva exemple clare de utilizare (pentru diferite cazuri de atac) cu eșantioane de configurații pentru nginx.

Pe lângă avantajele sale, testcookie are și dezavantaje:

  • taie toți roboții, inclusiv Googlebot. Dacă intenționați să păstrați testcookie în mod permanent, asigurați-vă că nu dispăruți din rezultatele căutării;
  • creează probleme utilizatorilor cu link-uri, browsere w3m și altele asemenea;
  • nu vă scutește de roboții echipați cu un motor de browser complet cu JavaScript.

Pe scurt, testcookie_module nu este universal. Dar, dintr-o serie de lucruri, cum ar fi, de exemplu, seturi de instrumente primitive în Java și C #, ajută. Astfel, ați tăiat o parte din amenințare.

4. Cod 444

DDoSers vizează adesea cea mai mare parte a resurselor din site. Un exemplu tipic este o căutare care efectuează interogări complexe împotriva unei baze de date. Bineînțeles, infractorii cibernetici pot profita de acest lucru încărcând câteva zeci de mii de cereri simultan motorului de căutare. Ce putem face? Dezactivați temporar căutarea. Lăsați clienții să nu poată căuta informatie necesara instrumente încorporate, dar întregul site principal va rămâne conditii de lucru până când veți găsi rădăcina tuturor problemelor. Nginx acceptă un cod 444 non-standard care vă permite să închideți pur și simplu conexiunea și să nu returnați nimic ca răspuns:

Locație / căutare (return 444;)

Astfel, puteți, de exemplu, să implementați rapid filtrarea adreselor URL. Dacă sunteți sigur că solicitările de localizare / căutare provin doar din roboți (de exemplu, încrederea dvs. se bazează pe faptul că site-ul dvs. nu are deloc o secțiune / căutare), puteți instala pachetul ipset pe server și interzice roboți cu un script shell simplu:

Ipset -N ban iphash tail -f access.log | în timp ce citiți LINE; ecou „$ LINE” | \ cut -d "" "-f3 | cut -d" "-f2 | grep -q 444 && ipset -A ban" $ (L %% *) "; done

Dacă formatul fișierelor jurnal nu este standard (nu este combinat) sau dacă doriți să interziceți din alte motive decât starea răspunsului, poate fi necesar să înlocuiți tăierea cu o expresie regulată.

5. Banim prin geolocalizare

Codul de răspuns 444 non-standard poate fi, de asemenea, util pentru interzicerea operațională a clienților prin geolocalizare. Puteți restricționa sever anumite țări cu care nu vă simțiți confortabil. De exemplu, este puțin probabil ca un magazin de camere online de la Rostov-on-Don să aibă mulți utilizatori în Egipt. Nu este foarte mod bun(sincer - dezgustător), deoarece datele GeoIP sunt inexacte, iar rostoviții zboară uneori în Egipt în vacanță. Dar dacă nu aveți nimic de pierdut, urmați instrucțiunile:

  1. Conectați modulul GeoIP la nginx (wiki.nginx.org/HttpGeoipModule).
  2. Afișați informații de georeferență în jurnalul de acces.
  3. Apoi, după modificarea scriptului shell de mai sus, rulați jurnalul de acces al lui nginx și adăugați clienți cu interdicție geografică.

Dacă, de exemplu, roboții erau în mare parte din China, atunci acest lucru vă poate ajuta.

6. Rețea neuronală (PoC)

În cele din urmă, puteți repeta experiența habrauser @SaveTheRbtz, care a luat rețeaua neuronală PyBrain, a introdus jurnalul în ea și a analizat solicitările (habrahabr.ru/post/136237). Metoda funcționează, deși nu este universală :). Dar dacă știi cu adevărat interiorul site-ului tău - și tu, ca administrator de sistem, ar trebui - ai șansa ca, în cele mai tragice situații, un astfel de set de instrumente bazat pe rețele neuronale, instruire și informații colectate în prealabil să te ajute . În acest caz, este foarte util să aveți access.log înainte de începerea DDoS, deoarece descrie aproape 100% dintre clienții legitimi și, prin urmare, un set de date excelent pentru instruirea unei rețele neuronale. Mai mult, roboții nu sunt întotdeauna vizibili în jurnal cu ochi.

Diagnosticarea problemei

Site-ul nu funcționează - de ce? Este DDoS sau este o eroare de motor care nu a fost observată de programator? Nu conteaza. Nu căutați un răspuns la această întrebare. Dacă credeți că site-ul dvs. poate fi atacat, contactați o companie de protecție împotriva atacurilor - unele servicii anti-DDoS sunt gratuite pentru prima zi după conectare - și nu pierdeți mai mult timp căutând simptome. Concentrați-vă asupra problemei. Dacă site-ul este lent sau nu se deschide deloc, atunci ceva nu este în regulă cu performanța sa și - indiferent dacă un atac DDoS este în curs sau nu - tu, ca profesionist, trebuie să înțelegi ce a cauzat acest lucru. Am asistat în repetate rânduri la modul în care o companie se confruntă cu dificultăți în funcționarea site-ului său din cauza unui atac DDoS, în loc să caute puncte slabe în motorul site-ului, a încercat să trimită declarații la Ministerul Afacerilor Interne pentru a găsi și pedepsi atacatorii . Nu faceți astfel de greșeli. Căutarea criminalilor cibernetici este un proces dificil și de lungă durată, complicat chiar de structura și principiile internetului, iar problema cu funcționarea site-ului trebuie rezolvată cu promptitudine. Solicitați tehnicienilor să afle ce cauzează scăderea performanței site-ului, iar avocații pot scrie declarația.

7. Folosiți profilerul și depanatorul

Pentru cea mai comună platformă de construire a site-urilor web - PHP + MySQL - blocajul poate fi găsit folosind următoarele instrumente:

  • Profilatorul Xdebug va arăta apelurile pe care aplicația le petrece cel mai mult timp;
  • debuggerul APD încorporat și ieșirea de depanare în jurnalul de erori vă vor ajuta să aflați ce cod efectuează aceste apeluri;
  • în majoritatea cazurilor, câinele este îngropat în complexitatea și greutățile interogărilor din baza de date. Aici este utilă directiva explicativă SQL integrată în motorul bazei de date.

Dacă site-ul se află pe spate și nu pierdeți nimic, deconectați-vă de la rețea, priviți jurnalele, încercați să le redați. Dacă nu, atunci parcurgeți paginile, uitați-vă la bază.

Exemplul este pentru PHP, dar ideea este adevărată pentru orice platformă. Scrierea dezvoltatorului produse softwareîn orice limbaj de programare, trebuie să poată utiliza rapid atât depanatorul, cât și profilerul. Exersează din timp!

8. Analizează erorile

Analizați volumul de trafic, timpul de răspuns al serverului, numărul de erori. Pentru aceasta, consultați jurnalele. În nginx, timpul de răspuns al serverului este înregistrat în jurnal de două variabile: request_time și upstream_response_time. Primul este timpul total de execuție a cererii, inclusiv întârzierile de rețea între utilizator și server; al doilea spune cât timp backend-ul (Apache, php_fpm, uwsgi ...) a făcut cererea. Valoarea upstream_response_time este extrem de importantă pentru site-urile cu o cantitate mare conținut dinamic și comunicare activă între front-end și bază de date, acestea nu trebuie neglijate. Următoarea configurare poate fi utilizată ca format de jurnal:

Log_format xakep_log "$ remote_addr - $ remote_user [$ time_local]" "" $ request "$ status $ body_bytes_sent" "" $ http_referer "" $ http_user_agent "$ request_time \ $ upstream_response_time";

Acesta este un format combinat cu câmpuri de sincronizare adăugate.

9. Urmăriți numărul de solicitări pe secundă

Uitați-vă și la numărul de solicitări pe secundă. În cazul nginx, puteți estima aproximativ această valoare cu următoarea comandă shell (variabila ACCESS_LOG conține calea către jurnalul de cereri nginx în format combinat):

Ecou $ (($ (fgrep -c "$ (env LC_ALL = C data [e-mail protejat]$ (($ (data \ +% s) -60)) +% d /% b /% Y:% H:% M) "" $ ACCESS_LOG ") / 60))

Comparativ cu nivelul normal pentru acest moment al zilei, numărul de solicitări pe secundă poate scădea și crește. Ele cresc dacă ajunge o botnet mare și cad dacă un botnet a căzut pe site, făcându-l complet inaccesibil utilizatorilor legitimi, iar botnetul nu solicită statici, ci utilizatorii legitimi. Scăderea numărului de cereri este observată tocmai datorită staticii. Dar, într-un fel sau altul, vorbim despre schimbări serioase ale indicatorilor. Când acest lucru se întâmplă brusc - în timp ce încercați să rezolvați problema pe cont propriu și dacă nu o vedeți imediat în jurnal, este mai bine să verificați rapid motorul și în paralel să contactați specialiștii.

10. Nu uitați de tcpdump

Mulți oameni uită că tcpdump este un instrument de diagnosticare funky. Vă dau câteva exemple. În decembrie 2011, a fost descoperit un bug în Kernel Linux când a deschis o conexiune TCP cu semnalizatoarele de segmente SYN și RST TCP setate. Primul raport de erori a fost trimis de administratorul de sistem din Rusia, a cărui resursă a fost atacată prin această metodă - atacatorii au aflat despre vulnerabilitate în fața întregii lumi. Evident, un astfel de diagnostic l-a ajutat. Un alt exemplu: nginx are o proprietate nu foarte plăcută - scrie în jurnal numai după ce cererea a fost procesată complet. Există situații în care site-ul nu funcționează, nimic nu funcționează și nu există nimic în jurnale. Acest lucru se datorează faptului că toate cererile care sunt în acest momentîncărcați serverul, nu au rulat încă. Tcpdump va ajuta și aici.

Este atât de bun încât am sfătuit oamenii să nu folosească protocoale binare înainte de a fi convinși că totul este în ordine - la urma urmei, protocoalele text sunt ușor de depanat cu tcpdump, dar cele binare nu sunt. Poate pierde cu ușurință mai multe pachete simultan și poate distruge istoricul utilizatorilor. Este convenabil să-i urmăriți ieșirea și este util pentru diagnosticare manuală și interdicții, dar încercați să nu bazați nimic critic pe ea. Un alt instrument iubit pentru „apucarea cererilor” - ngrep - implicit încearcă să solicite în regiunea a doi gigaocteți de memorie care nu poate fi copiată și abia apoi începe să-și reducă cerințele.

11. Atacă sau nu?

Cum să distingem un atac DDoS, de exemplu, de efectul unei campanii publicitare? Această întrebare poate părea ridicolă, dar subiectul nu este mai puțin dificil. Sunt cazuri destul de curioase. Unii băieți buni, când s-au tensionat și au înșelat bine cache-ul, site-ul s-a îmbolnăvit câteva zile. S-a dovedit că, timp de câteva luni, acest site a fost datinizat în liniște de unii germani și înainte de optimizarea memorării în cache a paginii site-ului, acești germani cu toate imaginile au fost încărcați destul de mult timp. Când pagina a început să se epuizeze instantaneu din memoria cache, bot-ul, care nu a avut timp de expirare, a început, de asemenea, să le colecteze instantaneu. A fost greu. Cazul este deosebit de dificil din motivul că dacă tu însuți ai modificat setarea (activarea cache-ului) și site-ul a încetat să funcționeze după aceea, atunci cine, în opinia ta și a șefului tău, este de vină? Exact. Dacă observați o creștere bruscă a numărului de cereri, atunci căutați, de exemplu, în Google Analytics cine a venit la care pagini.

Reglarea unui server web

Ce alte puncte cheie mai sunt? Desigur, puteți pune nginx implicit și sperați că veți fi bine. Cu toate acestea, nu este niciodată bine. Prin urmare, administratorul oricărui server ar trebui să dedice mult timp reglării fine și reglării nginx.

12. Limitarea resurselor (dimensiunile bufferului) în nginx

Ce ar trebui să vă amintiți în primul rând? Fiecare resursă are o limită. În primul rând, acest lucru se referă la RAM. Prin urmare, dimensiunile antetelor și ale tuturor bufferelor utilizate trebuie să fie limitate la valori adecvate pentru client și server în ansamblu. Acestea trebuie să fie înregistrate în configurația nginx.

  • client_header_buffer_size_ _ Setează dimensiunea bufferului pentru citirea antetului cererii clientului. Dacă șirul de solicitare sau câmpul de antet de cerere nu se încadrează complet în acest buffer, atunci sunt alocate buffere mai mari, specificate de directiva large_client_header_buffers.
  • buffers_client_header_header Specifică numărul și dimensiunea maximă a bufferelor pentru citirea unui antet de cerere de client mare.
  • client_body_buffer_size Setează dimensiunea bufferului pentru citirea corpului cererii clientului. Dacă corpul cererii este mai mare decât bufferul specificat, atunci întregul corp al cererii sau doar o parte din acesta este scris într-un fișier temporar.
  • client_max_body_size Specifică dimensiunea maximă permisă a corpului solicitării clientului, așa cum se specifică în câmpul „Lungime conținut” din antetul cererii. Dacă dimensiunea este mai mare decât dimensiunea specificată, atunci eroarea 413 (Cerere entitate prea mare) este returnată clientului.

13. Configurarea expirărilor în nginx

Timpul este, de asemenea, o resursă. Prin urmare, următorul pas important ar trebui să fie setarea tuturor expirărilor, care, din nou, sunt foarte importante pentru a le înregistra cu atenție în setările nginx.

  • reset_timedout_connection on; Ajută la gestionarea prizelor blocate în faza FIN-WAIT.
  • client_header_timeout Setează un timeout în timp ce citește antetul cererii clientului.
  • client_body_timeout Setează un timeout în timp ce citește corpul solicitării clientului.
  • keepalive_timeout Setează expirarea timpului în care conexiunea de păstrare în viață cu clientul nu va fi închisă de server. Mulți oameni se tem să stabilească valori mari aici, dar nu suntem siguri dacă această teamă este justificată. Opțional, puteți seta valoarea de expirare în antetul HTTP Keep-Alive, dar Internet Explorer renumit pentru ignorarea acestui sens
  • send_timeout Setează expirarea timpului pentru trimiterea unui răspuns către client. Dacă după acest timp clientul nu acceptă nimic, conexiunea va fi închisă.

Doar o întrebare: ce parametri ai tampoanelor și expirărilor sunt corecți? Aici nu există o rețetă universală, ele sunt diferite în fiecare situație. Dar există o abordare dovedită. Este necesar să setați valorile minime la care site-ul rămâne într-o stare eficientă (în timp de pace), adică paginile sunt date și solicitările sunt procesate. Acest lucru este determinat doar de testare - atât de pe desktop-uri, cât și de pe dispozitive mobile. Algoritm pentru găsirea valorilor fiecărui parametru (dimensiunea bufferului sau timeout):

  1. Stabilim valoarea minimă matematică a parametrului.
  2. Începem testul site-ului.
  3. Dacă toate funcționalitățile site-ului funcționează fără probleme, parametrul este definit. Dacă nu, mărim valoarea parametrului și trecem la pasul 2.
  4. Dacă valoarea parametrului a depășit chiar valoarea implicită, acesta este un motiv pentru discuții în echipa de dezvoltare.

În unele cazuri, revizuirea acestor parametri ar trebui să ducă la refactorizarea / reproiectarea site-ului. De exemplu, dacă site-ul nu funcționează fără solicitări de sondare lungi AJAX de trei minute, atunci nu este necesar să măriți timpul de expirare, ci înlocuiți sondajul lung cu altceva - un botnet de 20 de mii de mașini suspendate la cereri timp de trei minute ucide cu ușurință un server mediu ieftin.

14. Limitarea conexiunilor în nginx (limit_conn și limit_req)

Nginx are, de asemenea, capacitatea de a limita conexiunile, cererile și așa mai departe. Dacă nu sunteți sigur cum se va comporta o anumită parte a site-ului dvs., ideal ar trebui să îl testați, să înțelegeți câte solicitări va rezista și să scrieți acest lucru în configurația nginx. Un lucru este când site-ul este defect și poți veni să-l ridici. Și o chestiune complet diferită - când s-a întins într-o asemenea măsură încât serverul a intrat în swap. În acest caz, este adesea mai ușor să reporniți decât să așteptați revenirea sa triumfătoare.

Să presupunem că site-ul are secțiuni cu nume / descărcare și / căutare auto-explicative. Procedând astfel, noi:

  • nu vrem ca roboții (sau persoanele cu manageri de descărcări recursive excesiv de zeloși) să înfunde tabelul conexiunilor TCP cu descărcările lor;
  • Nu dorim ca roboții (sau crawlerele rătăcite ale motorului de căutare) să epuizeze resursele de calcul ale SGBD cu o multitudine de interogări de căutare.

În aceste scopuri, se va potrivi următoarea configurație:

Http (limit_conn_zone $ binary_remote_addr zone = download_c: 10m; limit_req_zone $ binary_remote_addr zone = search_r: 10m \ rate = 1r / s; server (location / download / (limit_conn download_c 1; # Other configuration configuration) location / search / (limit_req zone search_r rafală = 5; # Altă locație de configurare)))

De obicei, are sens direct setarea restricțiilor limit_conn și limit_req pentru locațiile în care sunt situate scripturi scumpe (exemplul specifică o căutare, iar acest lucru nu este întâmplător). Constrângerile ar trebui alese pe baza rezultatelor testării sarcinii, testelor de regresie și bunului simț.

Observați parametrul de 10 m din exemplu. Înseamnă că un dicționar cu un buffer de 10 megaocteți și nu mai mulți megaocteți va fi alocat pentru a calcula această limită. În această configurație, aceasta va urmări 320.000 de sesiuni TCP. Pentru a optimiza memoria ocupată, variabila $ binary_remote_addr este utilizată ca cheie în dicționar, care conține adresa IP a utilizatorului în formă binară și are mai puțină memorie decât variabila de șir obișnuită $ remote_addr. Trebuie remarcat faptul că al doilea parametru al directivei limit_req_zone poate fi nu numai IP, ci și orice altă variabilă nginx disponibilă în acest context - de exemplu, în cazul în care nu doriți să furnizați un mod proxy mai blând, puteți folosiți $ binary_remote_addr $ http_user_agent sau $ binary_remote_addr $ http_cookie_myc00kiez - dar folosiți astfel de construcții cu precauție, deoarece, spre deosebire de 32 biti $ binary_remote_addr, aceste variabile pot fi mult mai lungi și „10m” declarați de dvs. se pot încheia brusc.

Tendințe DDoS

  1. Puterea atacurilor asupra rețelei și straturilor de transport continuă să crească. Potențialul atacului de inundații SYN mediu a ajuns deja la 10 milioane de pachete pe secundă.
  2. Atacurile DNS au fost foarte solicitate în ultima vreme. Inundarea UDP cu interogări DNS valide cu adrese IP sursă falsificate este una dintre cele mai ușor de implementat și dificil de contracarat atacurile. Multe mari Companii rusești(inclusiv furnizorii de găzduire) s-au confruntat cu probleme în ultima perioadă ca urmare a atacurilor asupra serverelor lor DNS. Cu cât mai mult, cu atât vor fi mai multe astfel de atacuri și puterea lor va crește.
  3. Judecând după caracteristicile lor externe, majoritatea botnet-urilor nu sunt controlate central, ci printr-o rețea peer-to-peer. Acest lucru oferă criminalilor cibernetici posibilitatea de a sincroniza acțiunile botnetului în timp - dacă comenzile de control anterioare au fost distribuite pe un botnet de 5.000 de mașini în zeci de minute, acum durează doar câteva secunde, iar site-ul dvs. poate experimenta brusc o creștere instantanee de 100 de ori în numărul de cereri.
  4. Ponderea roboților echipați cu un motor de browser complet cu JavaScript este încă mică, dar este în continuă creștere. Un astfel de atac este mai dificil de respins cu mijloace improvizate încorporate, așa că Samodelkins ar trebui să urmărească această tendință cu teamă.

pregătirea sistemului de operare

În plus față de reglarea fină a nginx, trebuie să vă ocupați de setările stivei de rețea a sistemului. Includeți cel puțin net.ipv4.tcp_syncookies în sysctl imediat pentru a vă proteja de un mic atac de inundație SYN simultan.

15. Reglarea nucleului

Acordați atenție setărilor mai avansate ale părții de rețea (nucleu), din nou pentru expirări și memorie. Există altele mai importante și mai puțin importante. În primul rând, trebuie să acordați atenție:

  • net.ipv4.tcp_fin_timeout Timpul pe care socket-ul îl va petrece în faza TCP FIN-WAIT-2 (așteptând un segment FIN / ACK).
  • net.ipv4.tcp _ (, r, w) mem Dimensiunea bufferului de recepție TCP socket. Trei valori: minim, implicit și maxim.
  • net.core. (r, w) mem_max Idem pentru tampoane non-TCP.

Cu un link de 100 Mbps, valorile implicite sunt încă în regulă; dar dacă aveți la dispoziție cel puțin gigabiți pe secundă, atunci este mai bine să folosiți ceva de genul:

Sysctl -w net.core.rmem_max = 8388608 sysctl -w net.core.wmem_max = 8388608 sysctl -w net.ipv4.tcp_rmem = "4096 87380 8388608" sysctl -w net.ipv4.tcp_wmem_max = 8388608 sysctl .tcp_rmem = "4096 87380 8388608" sysctl -w net.ipv4.tcp_wmem_max. w net.ipv4.tcp_fin_timeout = 10

16. Revizuire / proc / sys / net / **

Este ideal să examinați toate opțiunile din / proc / sys / net / **. Trebuie să vedem cum diferă de cele implicite și să înțelegem cât de adecvat sunt expuși. Un dezvoltator Linux (sau administrator de sistem) care înțelege funcționarea serviciului de internet sub controlul său și dorește să-l optimizeze ar trebui să citească cu interes documentația tuturor parametrilor stivei de rețea a nucleului. Poate că va găsi acolo variabile specifice pentru site-ul său, care vor ajuta nu numai la protejarea site-ului de intruși, ci și la accelerarea activității acestuia.

Nu-ți fie frică!

Atacurile DDoS reușite zi de zi sting comerțul electronic, scutură mass-media, elimină cele mai mari sisteme de plată dintr-o singură lovitură. Milioane de utilizatori de Internet pierd accesul la informații critice. Amenințarea este urgentă, deci trebuie să o întâlniți complet înarmată. Fă-ți temele, nu te teme și păstrează-ți capul rece. Nu ești prima sau ultima persoană care se confruntă cu un atac DDoS pe site-ul tău și este în puterea ta, ghidat de cunoștințele și bunul simț, să minimizeze consecințele atacului.

Atac DDOS. Explicație și exemplu.

Bună ziua tuturor. Acest blog Computer76, și acum un alt articol despre elementele de bază ale artei hackingului. Astăzi vom vorbi despre ce este un atac DDOS în cuvinte și exemple simple. Înainte de a arunca în termeni speciali, va exista o introducere pe care toată lumea o înțelege.

De ce se folosește un atac DDOS?

Hacking WiFi este folosit pentru a prelua o parolă retea fara fir... Atacurile sub forma „” vă vor permite să ascultați traficul pe Internet. Analiza vulnerabilităților cu încărcarea ulterioară a unuia specific face posibilă deturnarea computerului țintă. Ce face un atac DDOS? În cele din urmă, scopul său este de a selecta drepturile de a deține resursa de la proprietarul de drept. Nu vreau să spun că site-ul sau blogul nu vă vor aparține. Acest lucru este în sensul că în cazul unui atac reușit pe site-ul dvs., dvs. veți pierde capacitatea de a o controla... Cel puțin pentru o vreme.

Cu toate acestea, în interpretarea modernă a DDOS, atacul este cel mai adesea folosit pentru a perturba funcționarea normală a oricărui serviciu. Grupurile de hackeri, ale căror nume sunt ascultate în mod constant, efectuează atacuri asupra unor mari site-uri guvernamentale sau de stat pentru a atrage atenția asupra anumitor probleme. Dar aproape întotdeauna în spatele unor astfel de atacuri există un interes pur mercantil: munca concurenților sau simple farse cu site-uri complet neprotejate. Principalul concept al DDOS este acela că un număr imens de utilizatori, sau mai degrabă cereri de la computerele bot, accesează site-ul la un moment dat, ceea ce face ca încărcarea de pe server să fie copleșitoare. Auzim adesea expresia „site-ul nu este disponibil”, dar puțini oameni se gândesc la ceea ce este de fapt ascuns în spatele acestei formulări. Ei bine, acum știi.

Atac DDOS - opțiuni

Opțiunea 1.

jucătorii se înghesuiau la intrare

Imaginați-vă că jucați un joc multiplayer online. Mii de jucători joacă cu tine. Și sunteți familiarizați cu cei mai mulți dintre ei. Discutați detaliile și la ora X efectuați următoarele acțiuni. Vizitați toți site-ul în același timp și creați un personaj cu același set de caracteristici. Grupați într-un singur loc, blocând cu numărul dvs. de personaje create simultan accesul la obiectele din joc către alți utilizatori conștiincioși care nu bănuiesc nimic din coluziunea dvs.

Opțiunea 2.


Imaginați-vă că cineva a decis să întrerupă serviciul de autobuz din oraș de-a lungul unei anumite rute pentru a împiedica pasagerii conștiincioși să folosească serviciile de transport public. Mii de prieteni se duc la un moment dat la opriri la începutul traseului specificat și merg fără scop în toate mașinile de la finală până la finală până când banii se epuizează. Călătoria este plătită, dar nimeni nu coboară la nicio oprire în afară de destinațiile finale. Iar ceilalți pasageri, care stau la opriri intermediare, se îngrijesc cu tristețe de microbuzele care pleacă, neputând să se împingă în autobuzele înfundate. Totul este epuizat: atât proprietarii de taxiuri, cât și potențialii pasageri.

În realitate, aceste opțiuni nu pot fi implementate fizic. Cu toate acestea, în lumea virtuală, prietenii tăi pot fi înlocuiți cu computere ale utilizatorilor fără scrupule care nu se obosesc să-și protejeze cumva computerul sau laptopul. Și astfel sunt majoritatea copleșitoare. Există multe programe pentru efectuarea atacurilor DDOS. Inutil să spun că astfel de acțiuni sunt ilegale. Și un atac DDOS pregătit în mod absurd, oricât de reușit ar fi, este detectat și pedepsit.

Cum se desfășoară un atac DDOS?

Făcând clic pe un link către site, browserul dvs. trimite o cerere către server pentru a afișa pagina pe care o căutați. Această cerere este exprimată ca un pachet de date. Și nici măcar unul, ci un pachet întreg de pachete! În orice caz, cantitatea de date transmise pe canal este întotdeauna limitată la o anumită lățime. Iar cantitatea de date returnate de server este incomparabil mai mare decât cele conținute în cererea dvs. Aceasta necesită resursele și energia serverului. Cu atât mai mult server puternic, cu atât este mai scump pentru proprietar și cu atât sunt mai scumpe serviciile pe care le oferă. Serverele moderne pot face față cu ușurință fluxului crescut dramatic de vizitatori. Dar pentru oricare dintre servere, există încă un număr critic de utilizatori care doresc să se familiarizeze cu conținutul site-ului. Cu cât este mai clară situația cu serverul, care oferă servicii pentru găzduirea site-urilor. Doar puțin, iar site-ul victimei este deconectat de la serviciu, pentru a nu suprasolicita procesoarele care deservesc mii de alte site-uri care se află pe aceeași găzduire. Site-ul nu mai funcționează până când atacul DDOS se oprește. Ei bine, imaginați-vă că începeți să reîncărcați oricare dintre paginile de pe site de o mie de ori pe secundă (DOS). Și mii de prieteni fac același lucru pe computerele lor (distribuite DOS sau DDOS) ... Serverele mari au învățat să recunoască faptul că a început un atac DDOS și să îl contracareze. Cu toate acestea, hackerii își îmbunătățesc și abordările. Deci, în cadrul acestui articol, ce atac DDOS este mai detaliat, nu voi putea explica.

Ce este atacul DDOS, puteți afla și încerca chiar acum.

ATENŢIE. Dacă decideți să încercați, toate datele nesalvate se vor pierde; pentru a readuce computerul într-o stare de lucru, aveți nevoie de un buton. RESET... Dar veți putea afla exact cum „se simte” serverul atacat. Exemplul detaliat este în paragraful de mai jos și acum - comenzi simple pentru supraîncărcarea sistemului.

  • Pentru Linux în terminal, tastați comanda:
:(){ :|:& };:

Sistemul va refuza să funcționeze.

  • Pentru Windows, vă sugerez să creați un fișier bat în Notepad cu codul:
: 1 Începeți să mergeți la 1

Denumiți tipul DDOS.bat

Nu cred că merită explicat sensul ambelor comenzi. Totul este vizibil cu ochiul liber. Ambele comenzi forțează sistemul să execute scriptul și să îl repete imediat, referindu-se la începutul scriptului. Având în vedere viteza de execuție, sistemul cade într-o stupoare în câteva secunde. Joc, cum se spune, peste.

Atac DDOS folosind programe.

Pentru un exemplu mai ilustrativ, utilizați programul Cannon Ion Low Orbit. Sau LOIC... Cel mai descărcat kit de distribuție se află la (funcționând în Windows):

https://sourceforge.net/projects/loic/

ATENȚIE! Antivirusul dvs. ar trebui să reacționeze la fișier ca fiind dăunător. Este în regulă: știți deja ce descărcați. În baza de date de semnături, este marcată ca un generator de inundații - în rusă, acesta este scopul final al apelurilor interminabile către un anumit adresă de rețea... PERSONAL nu am observat niciun virus sau troian. Dar aveți dreptul să ezitați și să amânați descărcarea.

Deoarece utilizatorii neglijenți bombardează resursa cu mesaje despre fișier rău intenționat, Source Forge vă va duce la pagina următoare cu un link direct la fișier:

În cele din urmă, am putut descărca utilitarul numai prin intermediul.

Fereastra programului arată astfel:

Punctul 1 Selectarea țintei va permite atacatorului să se concentreze asupra unei ținte specifice (este introdusă adresa IP sau adresa URL a site-ului), punctul 3 Opțiuni de atac vă va permite să selectați portul atacat, protocolul ( Metodă) din trei TCP, UDP și HTTP. În câmpul mesaj TCP / UDP, puteți introduce un mesaj pentru persoana atacată. Odată terminat, atacul începe prin apăsarea butonului. IMMA CHARGIN MAH LAZER(aceasta este o frază pe punctul de a face un fault de pe vremuri popular comiceu eu; Apropo, există o mulțime de prieteni americani în program). Tot.

AVERTIZARE

Această opțiune este doar pentru testarea localhost. De aceea:

  • împotriva site-urilor altor persoane este ilegal și pentru asta ei stau cu adevărat în Occident (ceea ce înseamnă că în curând vor fi închiși și aici)
  • adresa de la care vine inundația va fi calculată rapid, aceștia se vor plânge furnizorului, care vă va emite un avertisment și vă va reaminti primul punct
  • în rețelele cu o lățime de bandă redusă (adică în toate cele de acasă), micul lucru nu va funcționa. Totul este la fel cu rețeaua TOR.
  • dacă îl configurați corect, veți înfunda rapid canalul dvs. de comunicare decât să răniți pe cineva. Deci, aceasta este exact opțiunea atunci când punga de lovitură lovește boxerul și nu invers. Iar opțiunea cu un proxy va urma același principiu: nimănui nu îi va plăcea inundația din partea ta.

Citiți: 9 326