Kaj je DDoS napad - njegovo bistvo in izvor. DDoS napad: kako to storiti? Programi za DDoS napade Kaj je potrebno za DDoS napad

Veliko govorimo o napadih na stran, hekanju, vendar nismo omenili teme DDOS. Danes popravljamo to situacijo in vam ponujamo popoln pregled tehnologije za organiziranje DDOS napadov in poznana orodja za izvajanje hekerskih napadov.


Seznam razpoložljivih orodij za napade DDOS v KALI si lahko ogledate tako, da zaženete ukaz:

kali > /usr/share/exploitdb/platforms/windows/dos


Ta ukaz prikaže bazo podatkov o podvigih za napade na sisteme Windows.

Če si želite ogledati razpoložljiva orodja za napad DDOS na Linux, vnesite ukaz:

/usr/share/exploitdb/platforms/Linux/dos.

2.LOIC

Nizkoorbitalni ionski top (LOIC) Nizkoorbitalni ionski top. Morda najbolj priljubljen program DDOS. Pošilja lahko množične zahteve prek protokolov ICMP in UDP in s tem zamaši kanal do strežnika žrtve. Najbolj znan napad LOIC so izvedli Anonymous leta 2009 in je bil usmerjen proti PayPal, Visa, MasterCard v maščevanje, ker je bil WikiLeaks izključen iz sistema zbiranja donacij.

Napade, organizirane z uporabo LOIC, je mogoče izkoristiti z blokiranjem paketov UDP in ICMP na omrežni opremi internetnih ponudnikov. Sam program LOIC lahko brezplačno prenesete s spletne strani. To orodje je vklopljeno Temelji na sistemu Windows in delo z njim je zelo preprosto, določite mesta žrtve in pritisnete samo en gumb.

2.HOIC

HOIC je med operacijo Payback razvila Praetox ista ekipa, ki je ustvarila LOIC. Ključna razlika je, da HOIC uporablja protokol HTTP in ga uporablja za pošiljanje toka naključnih zahtev HTTP GET in POST. Sposoben je hkrati napasti 256 domen. Lahko ga prenesete iz.


3.XOIC

XOIC je še eno zelo preprosto orodje DDOS. Uporabnik mora preprosto nastaviti naslov IP žrtve, izbrati protokol (HTTP, UDP, ICMP ali TCP) in potegniti sprožilec! Lahko ga prenesete iz

5. HULK

6. UDP Flooder

UDP Flooder upraviči svoje ime - orodje je zasnovano za pošiljanje več paketov UDP do cilja. UDP Flooder se pogosto uporablja pri napadih DDOS na igralne strežnike za prekinitev povezave igralcev s strežnikom. Program je na voljo za prenos na.

7. RUDY

8. ToR-jevo kladivo

ToR's Hammer je bil ustvarjen za delo čez omrežja, da bi dosegli večjo anonimnost napadalca. Težava tega orodja je, da je omrežje TOR precej počasno in s tem zmanjša učinkovitost napada DDOS. Ta program DDOS lahko prenesete iz Packet Storm ali .

9. Piloris

Pyloris je še eno orodje DDoS, ki uporablja nov pristop. Napadalcu omogoča ustvarjanje lastnega unikata HTTP zahteva. Program bo nato poskušal obdržati povezavo TCP odprto s takšnimi zahtevami in s tem zmanjšati število razpoložljivih povezav na strežniku. Ko omejitev povezav strežnika doseže svojo omejitev, strežnik ne more več servisirati povezav in spletno mesto postane nedosegljivo. To orodje je na voljo za brezplačen prenos s spletnega mesta.

10. OWASP Switchblade

Open Web Application Security Project (OWASP) in ProactiveRISK sta razvila orodje Orodje Switchblade DoS za testiranje odpornosti SPLETNIH aplikacij na DDoS napade Ima tri načine delovanja: 1. SSL Half-Open, 2. HTTP Post in 3. Slowloris. Za pregled ga lahko prenesete s spletnega mesta OWASP.

11. DAVOSET

12. Orodje GoldenEye HTTP DoS

13. THC-SSL-DOS

Ta program DDOS (priložen Kali) se od večine orodij DDOS razlikuje po tem, da ne uporablja internetne pasovne širine in ga je mogoče uporabljati iz enega računalnika. THC-SSL-DOS izkorišča ranljivost v protokolu SSL in lahko zruši ciljni strežnik. Razen seveda, če ima to ranljivost. Program lahko prenesete s spletne strani THC ali uporabite KALI Linux, kjer je to orodje že nameščeno.

14. DDOSIM – Layer 7 DDoS emulator

Tukaj se naš pregled konča, vendar se bomo v prihodnosti vrnili k temi napadov DDOS na straneh našega bloga.

Boj proti napadom DDoS ni le težko delo, ampak tudi razburljivo. Ni presenetljivo, da vsak skrbnik sistema najprej poskuša organizirati obrambo sam - še posebej, ker je to še vedno mogoče.

Odločili smo se, da vam pomagamo pri tej težki zadevi in ​​objavimo nekaj kratkih, trivialnih in neuniverzalnih nasvetov za zaščito vašega spletnega mesta pred napadi. Navedeni recepti vam ne bodo pomagali obvladati nobenega napada, vendar vas bodo zaščitili pred večino nevarnosti.

Prave sestavine

Huda resnica je, da lahko vsakdo uniči številna spletna mesta z uporabo napada Slowloris, ki popolnoma ubije Apache, ali z organizacijo tako imenovane poplave SYN z uporabo farme virtualni strežniki, dvignjen v minuti v oblaku Amazon EC2. Vsi naši nadaljnji nasveti o zaščiti DDoS "naredi sam" temeljijo na naslednjih pomembnih pogojih.

1. Nehajte uporabljati Windows Server

Praksa kaže, da je stran, ki teče v sistemu Windows (2003 ali 2008 - ni pomembno), v primeru DDoS-a obsojena na propad. Razlog za napako je v omrežnem skladu Windows: ko je povezav veliko, se strežnik zagotovo začne slabo odzivati. Ne vemo zakaj Windows Server v takšnih situacijah deluje tako zoprno, a s tem smo se srečali več kot enkrat ali dvakrat. Zato se bo ta članek osredotočil na načine zaščite pred napadi DDoS v primeru, ko strežnik deluje v sistemu Linux. Če ste srečni lastnik razmeroma sodobnega jedra (od 2.6 naprej), bodo primarni orodji pripomočki iptables in ipset (za hitro dodajanje naslovov IP), s katerimi lahko hitro prepovete bote. Drug ključ do uspeha je pravilno pripravljen omrežni sklad, o katerem bomo prav tako govorili kasneje.

2. Prekinite z Apache

Drugi pomemben pogoj je opustitev Apache. Če poganjate Apache, pred njim namestite vsaj proxy za predpomnjenje - nginx ali lighttpd. Apache zelo težko streže datoteke in, kar je še huje, je na temeljni ravni (tj. nepopravljivo) ranljiv za najnevarnejši napad Slowloris, ki vam omogoča, da strežnik zrušite s skoraj mobilni telefon. Za boj proti različnim vrstam Slowloris so si uporabniki Apache najprej omislili popravek Anti-slowloris.diff, nato mod_noloris, nato mod_antiloris, mod_limitipconn, mod_reqtimeout ... Če pa želite ponoči mirno spati, je lažje uporabiti HTTP strežnik. ki je neranljiv za Slowloris na kodi arhitekturne ravni. Zato vsi naši nadaljnji recepti temeljijo na predpostavki, da se na frontendu uporablja nginx.

Boj proti DDoS

Kaj storiti, če pride DDoS? Tradicionalna tehnika samoobrambe je branje datoteke dnevnika strežnika HTTP, pisanje vzorca grep (lovljenje zahtev botov) in izključitev vseh, ki spadajo pod to. Ta tehnika bo delovala... če boš imel srečo. Obstajata dve vrsti botnetov, obe nevarni, vendar na različne načine. Eden v celoti pride na stran takoj, drugi postopoma. Prvi pobije vse naenkrat, v logih pa se pojavi cela zadeva in če jih pogreješ in prepoveš vse IP naslove, potem si zmagovalec. Drugi botnet spletno mesto napade nežno in previdno, vendar ga boste morda morali prepovedati za 24 ur. Pomembno je, da vsak skrbnik razume: če se nameravate boriti z grep, morate biti pripravljeni posvetiti nekaj dni boju proti napadu. Spodaj so nasveti, kam lahko vnaprej postavite slamice, da bo padec manj boleč.

3. Uporabite modul testcookie

Morda najpomembnejši, učinkovit in operativni recept v tem članku. Če DDoS pride na vaše spletno mesto, je najučinkovitejši način za obrambo modul testcookie-nginx, ki ga je razvil habrauser @kyprizel. Ideja je preprosta. Najpogosteje so roboti, ki izvajajo HTTP poplave, precej neumni in nimajo HTTP piškotkov in mehanizmov za preusmeritev. Včasih naletite na naprednejše - lahko uporabljajo piškotke in obdelujejo preusmeritve, vendar skoraj nikoli DoS bot ne nosi polnega mehanizma JavaScript (čeprav to postaja vse pogostejše). Testcookie-nginx deluje kot hiter filter med boti in zaledjem med napadom L7 DDoS, kar vam omogoča filtriranje neželenih zahtev. Kaj je vključeno v te preglede? Ali odjemalec ve, kako izvesti HTTP Redirect, ali podpira JavaScript, ali je to brskalnik, za katerega se predstavlja (ker je JavaScript povsod drugačen in če odjemalec reče, da je recimo Firefox, potem lahko to preverimo). Preverjanje se izvaja s piškotki na različne načine:

  • “Set-Cookie” + preusmeritev z uporabo 301 HTTP Location;
  • “Set-Cookie” + preusmeritev z z uporabo HTML meta osvežitev;
  • katero koli predlogo in lahko uporabite JavaScript.

Da bi se izognili samodejnemu razčlenjevanju, lahko potrditveni piškotek šifrirate z AES-128 in ga pozneje dešifrirate na strani odjemalca JavaScript. IN nova različica modula, je postalo mogoče nastaviti piškotke prek Flasha, kar vam omogoča tudi učinkovito izločanje botov (ki jih Flash praviloma ne podpira), vendar pa tudi blokira dostop številnim legitimnim uporabnikom (skoraj vsem mobilne naprave). Omeniti velja, da je zelo enostavno začeti uporabljati testcookie-nginx. Predvsem razvijalec ponuja več jasni primeri uporabite (za različne primere napadov) z vzorci konfiguracij za nginx.

Testni piškotek ima poleg svojih prednosti tudi slabosti:

  • izreže vse bote, vključno z Googlebotom. Če nameravate trajno obdržati testni piškotek, poskrbite, da ne boste izginili iz rezultatov iskanja;
  • povzroča težave uporabnikom s povezavami, w3m in podobnimi brskalniki;
  • ne ščiti pred roboti, opremljenimi s popolnim motorjem brskalnika z JavaScriptom.

Skratka, testcookie_module ni univerzalen. Pomaga pa pri številnih stvareh, kot so na primer primitivna orodja v Javi in ​​C#. Na ta način odrežete del grožnje.

4. Koda 444

Cilj DDoS-jev je pogosto del spletnega mesta, ki zahteva največ virov. Tipičen primer je iskanje, ki izvaja zapletene poizvedbe po bazi podatkov. Seveda lahko napadalci to izkoristijo tako, da v iskalnik naložijo več deset tisoč zahtev hkrati. Kaj lahko storimo? Začasno onemogoči iskanje. Čeprav stranke morda ne bodo mogle iskati informacij, ki jih potrebujejo, z vgrajenimi orodji, bo celotno glavno spletno mesto delovalo, dokler ne najdete korena vseh težav. Nginx podpira nestandardno kodo 444, ki vam omogoča, da preprosto zaprete povezavo in ne vrnete ničesar kot odgovor:

Lokacija / iskanje ( vrni 444; )

Na ta način lahko na primer hitro implementirate filtriranje po URL-ju. Če ste prepričani, da zahteve za lokacijo / iskanje prihajajo samo od botov (na primer, vaše zaupanje temelji na dejstvu, da vaše spletno mesto sploh nima razdelka / iskanje), lahko namestite paket ipset na strežnik in prepovete boti s preprostim lupinskim skriptom:

Ipset -N ban iphash tail -f access.log | med branjem LINE; do echo "$LINE" | \ cut -d""" -f3 | cut -d" " -f2 | grep -q 444 && ipset -A prepoved "$(L%% *)"; končano

Če je format datoteke dnevnika nestandarden (ni kombiniran) ali morate prepovedati na podlagi kriterijev, ki niso status odgovora, boste morda morali zamenjati cut z regularnim izrazom.

5. Prepovedujemo z geolokacijo

Nestandardna odzivna koda 444 je lahko uporabna tudi za hitro prepoved odjemalcev na podlagi geografskih značilnosti. Določene države, ki vam povzročajo nelagodje, lahko strogo omejite. Na primer, malo verjetno je, da ima spletna trgovina s fotoaparati iz Rostova na Donu veliko uporabnikov v Egiptu. Ni zelo dober način(odkrito povedano, odvratno), saj so podatki GeoIP netočni in Rostovci včasih letijo v Egipt na počitnice. Če pa nimate česa izgubiti, sledite navodilom:

  1. Povežite modul GeoIP z nginx (wiki.nginx.org/HttpGeoipModule).
  2. Prikaz informacij o georeferenciranju v dnevniku dostopa.
  3. Nato s spreminjanjem zgornjega lupinskega skripta zaženite nginxov accesslog in prepovedi dodajte geografsko izključene odjemalce.

Če bi bili na primer roboti večinoma iz Kitajske, bi to morda pomagalo.

6. Nevronska mreža (PoC)

Končno lahko ponovite izkušnjo uporabnika habre @SaveTheRbtz, ki je vzel nevronsko mrežo PyBrain, vanj vnesel dnevnik in analiziral poizvedbe (habrahabr.ru/post/136237). Metoda deluje, čeprav ni univerzalna :). Če pa resnično poznate notranjost svojega spletnega mesta - in vi, kako Sistemski administrator, bi morali, potem imate možnost, da vam bo v najbolj tragičnih situacijah pomagal tak komplet orodij, ki temelji na nevronskih mrežah, usposabljanju in vnaprej zbranih informacijah. V tem primeru je zelo koristno imeti access.log pred začetkom DDoS-a, saj opisuje skoraj 100 % legitimnih strank in je zato odličen nabor podatkov za usposabljanje zivcno omrezje. Poleg tega roboti niso vedno vidni v dnevniku.

Diagnoza problema

Stran ne deluje - zakaj? Je to DDoSed ali je to napaka motorja, ki je programer ni opazil? Ni važno. Ne iščite odgovora na to vprašanje. Če menite, da je vaše spletno mesto morda napadeno, se obrnite na podjetja, ki nudijo zaščito pred napadi – številne storitve za preprečevanje DDoS ponujajo brezplačno prve dni po povezavi – in ne izgubljajte več časa z iskanjem simptomov. Osredotočite se na problem. Če je spletno mesto počasno ali se sploh ne odpre, je nekaj narobe z njegovim delovanjem in – ne glede na to, ali gre za napad DDoS ali ne – ste kot strokovnjak odgovorni razumeti, kaj ga povzroča. Večkrat smo bili priča, kako je podjetje, ki ima težave z delovanjem svoje spletne strani zaradi DDoS napada, namesto da bi iskalo slabosti v mehanizmu spletne strani, poskušalo poslati izjave na ministrstvo za notranje zadeve, da bi našli in kaznovali napadalce. Ne delajte teh napak. Iskanje kiberkriminalcev je težaven in dolgotrajen proces, ki ga otežuje sama zgradba in princip delovanja interneta, zato je treba težavo z delovanjem spletnega mesta odpraviti sproti. Naj tehnični strokovnjaki najdejo razlog za upad delovanja spletnega mesta, odvetniki pa lahko napišejo izjavo.

7. Uporabite profiler in razhroščevalnik

Za najpogostejšo platformo za ustvarjanje spletnih strani - PHP + MySQL - je ozko grlo mogoče najti z naslednjimi orodji:

  • Xdebug profiler bo pokazal, za katere klice aplikacija porabi največ časa;
  • vgrajeni razhroščevalnik APD in izhodni podatki za odpravljanje napak v dnevniku napak vam bodo pomagali natančno ugotoviti, katera koda izvaja te klice;
  • v večini primerov je pes zakopan v zapletenost in težo poizvedb po bazi podatkov. Tukaj bo v pomoč direktiva SQL, ki je vgrajena v pogon baze podatkov.

Če stran ne deluje in ne izgubljate ničesar, prekinite povezavo z omrežjem, poglejte dnevnike in jih poskusite predvajati. Če ga ni, pojdite skozi strani in si oglejte osnovo.

Primer je za PHP, vendar je ideja veljavna za katero koli platformo. Razvijalec, ki piše izdelke programske opreme v katerem koli programskem jeziku, mora biti sposoben hitro uporabljati razhroščevalnik in profiler. Vadite vnaprej!

8. Analizirajte napake

Analizirajte obseg prometa, odzivni čas strežnika in število napak. Če želite to narediti, si oglejte dnevnike. V nginxu se odzivni čas strežnika beleži v dnevnik z dvema spremenljivkama: request_time in upstream_response_time. Prvi je polni delovni čas izvajanje zahteve, vključno z omrežnimi zamudami med uporabnikom in strežnikom; drugi pove, kako dolgo je zaledje (Apache, php_fpm, uwsgi ...) izvajalo zahtevo. Vrednost upstream_response_time je izjemno pomembna za spletna mesta z velikim številom dinamično vsebino in aktivno komunikacijo med frontendom in bazo podatkov, ne gre zanemariti. Kot obliko dnevnika lahko uporabite naslednjo konfiguracijo:

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";

To je kombinirana oblika z dodanimi časovnimi polji.

9. Sledite zahtevam na sekundo

Poglejte tudi število zahtev na sekundo. V primeru nginxa lahko to vrednost približno ocenite z naslednjim ukazom lupine (spremenljivka ACCESS_LOG vsebuje pot do dnevnika zahtev nginx v kombinirani obliki):

Echo $(($(fgrep -c "$(env LC_ALL=C date --date=@$(($(date \ +%s)-60)) +%d/%b/%Y:%H: %M)" "$ACCESS_LOG")/60))

V primerjavi z običajno ravnjo za ta čas dneva se lahko število zahtevkov na sekundo zmanjša ali poveča. Rastejo, če je prišel velik botnet, in padejo, če je prihajajoči botnet podrl spletno mesto, zaradi česar je popolnoma nedostopno za legitimne uporabnike, hkrati pa botnet ne zahteva statike, ampak legitimni uporabniki. Padec števila povpraševanj je opazen prav zaradi statike. Toda tako ali drugače govorimo o resnih spremembah kazalnikov. Ko se to zgodi nenadoma - medtem ko poskušate težavo rešiti sami in če je ne vidite takoj v dnevniku, je bolje, da hitro preverite motor in se hkrati obrnete na strokovnjake.

10. Ne pozabite na tcpdump

Mnogi pozabljajo, da je tcpdump odlično diagnostično orodje. Dal vam bom nekaj primerov. Decembra 2011 je bila odkrita napaka v jedru Linuxa, ko je odprlo povezavo TCP, ko sta bili nastavljeni zastavici segmenta TCP SYN in RST. Prvo poročilo o napaki je poslal sistemski skrbnik iz Rusije, katerega vir je bil napaden s to metodo - napadalci so izvedeli za ranljivost pred vsem svetom. Očitno mu je ta diagnoza pomagala. Drug primer: nginx ima eno ne zelo prijetno lastnost - piše v dnevnik šele, ko je bila zahteva v celoti obdelana. Obstajajo situacije, ko spletno mesto ne deluje, nič ne deluje in v dnevnikih ni ničesar. To zato, ker vse zahteve, ki jih ta trenutek nalagajo strežnik, še niso dokončani. Tcpdump bo pomagal tudi tukaj.

Tako dobro je, da sem ljudem svetoval, naj ne uporabljajo binarnih protokolov, dokler niso prepričani, da je vse v redu - navsezadnje je besedilne protokole enostavno odpraviti s tcpdumpom, binarnih pa ne. Vendar pa je sniffer dober kot diagnostika orodje – kot sredstvo za vzdrževanje proizvodnje« in je strašljiv. Z lahkoto lahko izgubi več paketov hkrati in uniči vašo uporabniško zgodovino. Primerno je pogledati njegov izhod in uporaben je za ročno diagnostiko in prepovedi, vendar poskusite na njem ne temeljiti ničesar kritičnega. Drugo priljubljeno orodje za "zakopavanje zahtev" - ngrep - običajno privzeto poskuša zahtevati približno dva gigabajta nezamenljivega pomnilnika in šele nato začne zmanjševati svoje zahteve.

11. Napasti ali ne?

Kako razlikovati napad DDoS, na primer, od učinka oglaševalska akcija? To vprašanje se morda zdi smešno, vendar tema ni nič manj zapletena. Obstajajo precej smešni primeri. Nekateri dobri fantje, ko so se napeli in dodobra zajebali predpomnilnik, je stran padla za par dni. Izkazalo se je, da so nekaj mesecev to spletno stran tiho dataminirali nekateri Nemci in preden so predpomnjenje optimizirali, so se strani teh Nemcev z vsemi slikami nalagale kar dolgo časa. Ko se je stran takoj začela streči iz predpomnilnika, jih je začel takoj zbirati tudi bot, ki ni imel nobenih časovnih omejitev. Bilo je težko. Zadeva je še posebej težka iz razloga, ker če ste sami spremenili nastavitev (vklopili predpomnjenje) in je stran po tem prenehala delovati, kdo je potem po vašem in mnenju vašega šefa kriv? točno tako. Če opažate močno povečanje števila zahtevkov, potem poglejte npr. Google Analytics kdo je prišel na katere strani.

Nastavitev spletnega strežnika

Katere druge ključne točke obstajajo? Seveda lahko namestite privzeti nginx in upate, da bo vse v redu. Vendar pa stvari ne gredo vedno dobro. Zato mora skrbnik katerega koli strežnika posvetiti veliko časa fini nastavitvi in ​​nastavitvi nginx.

12. Omejite vire (velikosti medpomnilnika) v nginx

Kaj morate najprej zapomniti? Vsak vir ima omejitev. Najprej se to nanaša na RAM. Zato morajo biti velikosti glav in vseh uporabljenih medpomnilnikov omejene na ustrezne vrednosti za odjemalca in celoten strežnik. Registrirani morajo biti v konfiguraciji nginx.

  • odjemalec_header_buffer_size_ _ Nastavi velikost medpomnilnika za branje glave zahteve odjemalca. Če se vrstica zahteve ali polje glave zahteve ne prilega v celoti temu medpomnilniku, se dodelijo večji medpomnilniki, ki jih določa direktiva large_client_header_buffers.
  • big_client_header_buffers Nastavi največje število in velikost medpomnilnikov za branje velike glave zahteve odjemalca.
  • velikost_medpomnilnika_tela odjemalca Nastavi velikost medpomnilnika za branje telesa zahteve odjemalca. Če je telo zahteve večje od podanega vmesnega pomnilnika, se celotno telo zahteve ali le njegov del zapiše v začasno datoteko.
  • client_max_body_size Nastavi največjo dovoljeno velikost telesa zahteve odjemalca, navedeno v polju »Dolžina vsebine« v glavi zahteve. Če je velikost večja od podane, se odjemalcu vrne napaka 413 (Entiteta zahteve je prevelika).

13. Nastavitev časovnih omejitev v nginx

Čas je tudi vir. Zato bi moral biti naslednji pomemben korak nastavitev vseh časovnih omejitev, ki jih je spet zelo pomembno natančno določiti v nastavitvah nginx.

  • reset_timeout_connection vklopljen; Pomaga pri reševanju vtičnic, ki so obtičale v fazi FIN-WAIT.
  • client_header_timeout Nastavi časovno omejitev pri branju glave zahteve odjemalca.
  • client_body_timeout Nastavi časovno omejitev pri branju telesa zahteve odjemalca.
  • keepalive_timeout Nastavi časovno omejitev, med katero vzdrževalna povezava z odjemalcem ne bo zaprta s strani strežnika. Marsikdo se boji tukaj postaviti velike vrednosti, vendar nismo prepričani, da je ta strah upravičen. Po želji lahko nastavite vrednost časovne omejitve v glavi HTTP Keep-Alive, vendar internet Explorer znan po ignoriranju tega pomena
  • send_timeout Nastavi časovno omejitev pri pošiljanju odgovora odjemalcu. Če po tem času odjemalec ne sprejme ničesar, se povezava prekine.

Takoj se pojavi vprašanje: kateri parametri medpomnilnikov in časovnih omejitev so pravilni? Tukaj ni univerzalnega recepta, vsaka situacija ima svojega. Vendar obstaja preizkušen pristop. Treba je določiti minimalne vrednosti, pri katerih spletno mesto ostane operativno (v mirnem času), to je, da se strani strežejo in zahteve obdelajo. To se ugotavlja le s testiranjem – tako iz namiznih kot mobilnih naprav. Algoritem za iskanje vrednosti vsakega parametra (velikost medpomnilnika ali časovna omejitev):

  1. Nastavimo matematično minimalno vrednost parametra.
  2. Začnemo izvajati teste spletnega mesta.
  3. Če vse funkcionalnosti spletnega mesta delujejo brez težav, je parameter definiran. Če ne, povečajte vrednost parametra in pojdite na 2. korak.
  4. Če vrednost parametra presega celo privzeto vrednost, je to razlog za razpravo v razvojni skupini.

V nekaterih primerih mora revizija teh parametrov voditi do preoblikovanja/preoblikovanja spletnega mesta. Na primer, če spletno mesto ne deluje brez triminutnih zahtev za glasovanje AJAX, vam ni treba povečati časovne omejitve, ampak nadomestite dolgo anketiranje z nečim drugim - botnetom 20 tisoč strojev, ki visijo na zahtevah tri minute, zlahka ubije povprečno poceni strežnik.

14. Omejite povezave v nginx (limit_conn in limit_req)

Nginx ima tudi možnost omejevanja povezav, zahtev itd. Če niste prepričani, kako se bo obnašal določen del vašega spletnega mesta, ga morate v idealnem primeru preizkusiti, razumeti, koliko zahtev bo obdelal, in to zapisati v konfiguracijo nginx. Ena stvar je, ko spletno mesto ne deluje in ga lahko pridete prevzeti. In čisto druga zadeva je, ko gre do te mere, da gre strežnik v swap. V tem primeru je pogosto lažje znova zagnati kot čakati na njegovo zmagoslavno vrnitev.

Predpostavimo, da ima spletno mesto razdelke z opisnimi imeni /prenos in /iskanje. Hkrati mi:

  • ne želimo, da roboti (ali ljudje s preveč vnetimi rekurzivnimi upravitelji prenosov) s svojimi prenosi napolnijo našo tabelo povezav TCP;
  • ne želimo botov (ali potepuških pajkov Iskalniki) je s številnimi iskalnimi poizvedbami izčrpal računalniške vire DBMS.

Za te namene bo delovala naslednja konfiguracija:

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 location ) location /search/ ( limit_req zone= search_r burst=5; # Druga konfiguracijska lokacija ) ) )

Običajno je neposredno smiselno nastaviti omejitve limit_conn in limit_req za lokacije, kjer se nahajajo skripti, katerih izvajanje je drago (primer prikazuje iskanje in to z dobrim razlogom). Omejitve je treba izbrati na podlagi rezultatov obremenitve in regresijskih testiranj ter zdravega razuma.

Upoštevajte parameter 10m v primeru. To pomeni, da bo za izračun te omejitve dodeljen slovar z vmesnim pomnilnikom 10 megabajtov in niti megabajta več. V tej konfiguraciji bo to omogočilo spremljanje 320.000 sej TCP. Za optimizacijo pomnilniškega odtisa se kot ključ v slovarju uporablja spremenljivka $binary_remote_addr, ki vsebuje uporabnikov naslov IP v binarni obliki in zavzame manj pomnilnika kot običajna spremenljivka niza $remote_addr. Upoštevati je treba, da je drugi parameter direktive limit_req_zone lahko ne samo IP, ampak tudi katera koli druga spremenljivka nginx, ki je na voljo v tem kontekstu - na primer, v primeru, ko ne želite zagotoviti bolj nežnega načina za proxy, lahko uporabite $binary_remote_addr$http_user_agent ali $binary_remote_addr$http_cookie_myc00kiez - vendar morate takšne konstrukcije uporabljati previdno, saj so za razliko od 32-bitnega $binary_remote_addr lahko te spremenljivke bistveno daljše in "10m", ki ste jih navedli, se lahko nenadoma konča.

Trendi DDoS

  1. Moč napadov na omrežni in transportni sloj nenehno narašča. Potencial povprečnega napada SYN flood je že dosegel 10 milijonov paketov na sekundo.
  2. Povpraševanje je še posebej v Zadnje čase uporabite napade DNS. Preplavljanje UDP z veljavnimi poizvedbami DNS s ponarejenimi izvornimi naslovi IP je eden izmed napadov, ki jih je najlažje izvesti in se jim je težko zoperstaviti. Številna velika ruska podjetja (vključno s podjetji za gostovanje) so nedavno imela težave zaradi napadov na njihove strežnike DNS. Dlje kot boste šli, več bo takih napadov in njihova moč bo naraščala.
  3. Sodeč po zunanji znaki, večina botnetov ni nadzorovana centralno, temveč prek omrežja enakovrednih. To daje napadalcem možnost, da časovno sinhronizirajo dejanja botneta – če so bili prej nadzorni ukazi razdeljeni po botnetu s 5 tisoč stroji v desetinah minut, zdaj štejejo sekunde in vaše spletno mesto lahko nepričakovano doživi takojšnje stokratno povečanje števila zahtev. .
  4. Delež botov, ki so opremljeni s popolnim motorjem brskalnika z JavaScriptom, je še vedno majhen, vendar nenehno narašča. Takšen napad je težje odbiti z vgrajenimi improviziranimi sredstvi, zato bi morali domači mojstri ta trend opazovati previdno.

priprava OS

Poleg tega fina nastavitev nginx, moraš poskrbeti za nastavitve omrežni sklad sistemi. Vsaj takoj omogočite net.ipv4.tcp_syncookies v sysctl, da se takoj zaščitite pred majhnim napadom SYN-flood.

15. Uglasite jedro

Bodite pozorni na naprednejše nastavitve omrežnega dela (jedra), spet glede časovnih omejitev in pomnilnika. Obstajajo pomembnejši in manj pomembni. Najprej morate biti pozorni na:

  • net.ipv4.tcp_fin_timeoutČas, ki ga bo vtičnica preživela v fazi TCP FIN-WAIT-2 (čaka na segment FIN/ACK).
  • net.ipv4.tcp_(,r,w)mem Velikost vmesnega pomnilnika vtičnice TCP. Tri vrednosti: najmanjša, privzeta in največja.
  • net.core.(r,w)mem_max Enako velja za medpomnilnike, ki niso TCP.

Pri kanalu 100 Mbit/s so privzete vrednosti še kako primerne; če pa imate na voljo vsaj gigabit na sekundo, potem je bolje uporabiti nekaj takega:

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="4096 65536 83 88608" " sysctl - w net.ipv4.tcp_fin_timeout=10

16. Revizija /proc/sys/net/**

Idealno je raziskati vse parametre v /proc/sys/net/**. Videti moramo, kako drugačni so od privzetih in razumeti, kako ustrezno so nastavljeni. Razvijalec Linuxa (ali sistemski skrbnik), ki razume delovanje internetne storitve pod njegovim nadzorom in jo želi optimizirati, bi moral z zanimanjem prebrati dokumentacijo vseh parametrov omrežnega sklada jedra. Morda bo tam našel spremenljivke, specifične za spletno mesto, ki bodo pomagale ne le zaščititi spletno mesto pred vsiljivci, temveč tudi pospešiti njegovo delovanje.

Naj te ne bo strah!

Uspešni napadi DDoS iz dneva v dan uničijo e-trgovino, pretresejo medije in z enim udarcem uničijo največje plačilne sisteme. Milijoni uporabnikov interneta izgubljajo dostop do kritičnih informacij. Grožnja je nujna, zato se ji moramo soočiti neposredno. Naredite domačo nalogo, ne bojte se in imejte hladno glavo. Niste prvi in ​​ne zadnji, ki se bo soočil z DDoS napadom na vašo spletno stran in v vaši moči je, da z znanjem in zdravo pametjo zmanjšate posledice napada na minimum.

Distributed denial of service napadi ali na kratko DDoS so postali pogost pojav in velik glavobol za lastnike internetnih virov po vsem svetu. Zato zaščita pred napadi DDoS na spletnem mestu danes ne pride v poštev. dodatna možnost, ampak predpogoj za tiste, ki se želijo izogniti izpadom, velikim izgubam in poškodovanemu ugledu.

Povedali vam bomo podrobneje, kaj je ta bolezen in kako se zaščititi pred njo.

Kaj je DDoS

Distributed Denial of Service ali "Distributed Denial of Service" - napad na informacijski sistem tako da ne more obdelati uporabniških zahtev. Z enostavnimi besedami, DDoS vključuje preobremenitev spletnega vira ali strežnika s prometom iz velikega števila virov, zaradi česar ni na voljo. Pogosto se tak napad izvede, da povzroči motnje v delovanju omrežnih virov v velikem podjetju ali državni organizaciji.

Napad DDoS je podoben drugi pogosti spletni grožnji, zavrnitvi storitve (DoS). Edina razlika je v tem, da tipični porazdeljeni napad prihaja iz ene točke, medtem ko je napad DDos bolj razširjen in prihaja iz različnih virov.

Glavni cilj DDoS napada je narediti spletno stran nedostopno obiskovalcem tako, da blokira njeno delovanje. Toda obstajajo primeri, ko se takšni napadi izvajajo z namenom odvrniti pozornost od drugih škodljivih vplivov. Napad DDoS se lahko na primer izvede, ko je varnostni sistem ogrožen, da bi prevzel zbirko podatkov organizacije.

DDoS napadi so prišli v javnost leta 1999, ko se je zgodila serija napadov na spletne strani velikih podjetij (Yahoo, eBay, Amazon, CNN). Od takrat se je ta vrsta kibernetskega kriminala razvila v globalno grožnjo. Po mnenju strokovnjakov se je v zadnjih letih njihova frekvenca povečala za 2,5-krat, največja moč pa je začela presegati 1 Tbit/s. Vsako šesto rusko podjetje je vsaj enkrat postalo žrtev DDoS napada. Do leta 2020 bo njihovo skupno število doseglo 17 milijonov.

Platforma za gostovanje z zaščito 24/7 pred najzahtevnejšimi napadi DDoS.

Razlogi za DDoS napade

  1. Osebna sovražnost. Napadalce pogosto spodbuja, da napadejo korporacije ali vladna podjetja. Na primer, leta 1999 so bile napadene spletne strani FBI, zaradi česar so za nekaj tednov prenehale delovati. To se je zgodilo, ker je FBI sprožil obsežno akcijo na hekerje.
  2. Politični protest. Običajno takšne napade izvajajo haktivisti - IT strokovnjaki z radikalnimi pogledi na civilne proteste. Dobro znan primer je serija kibernetskih napadov na estonske vladne agencije leta 2007. Njihovo verjeten vzrok služil kot priložnost za rušenje spomenika vojaku-osvoboditelju v Talinu.
  3. Zabava. To je vse danes velika količina ljudi zanima DDoS in se želijo preizkusiti v njem. Hekerji začetniki pogosto izvajajo napade iz zabave.
  4. Izsiljevanje in izsiljevanje. Pred začetkom napada heker stopi v stik z lastnikom vira in zahteva odkupnino.
  5. Tekmovanje. Napade DDoS je mogoče naročiti pri brezvestnem podjetju, da bi vplivali na svoje konkurente.

Kdo so potencialne žrtve?

DDoS lahko uniči spletna mesta katere koli velikosti, od navadnih blogov do največjih korporacij, bank in drugih finančnih ustanov.

Po raziskavi, ki jo je izvedel Kaspersky Lab, bi lahko napad podjetje stal do 1,6 milijona dolarjev. To je resna škoda, saj napadenega spletnega vira nekaj časa ni mogoče servisirati, kar povzroči izpade.

Najpogosteje so spletne strani in strežniki izpostavljeni DDoS napadom:

  • velika podjetja in vladne agencije;
  • finančne institucije (banke, družbe za upravljanje);
  • storitve kuponov;
  • zdravstvene ustanove;
  • plačilni sistemi;
  • Medijski in informacijski agregatorji;
  • spletne trgovine in e-trgovina;
  • spletne igre in igralne storitve;
  • menjalnice kriptovalut.

Nedolgo nazaj je bila na žalosten seznam pogostih žrtev napadov DDoS dodana oprema, povezana z internetom, skupaj imenovana »Internet stvari« (IoT). Največjo dinamiko rasti na tem področju kažejo kibernetski napadi z namenom motenj v delovanju spletnih blagajn velikih trgovin ali trgovskih centrov.

Mehanizem delovanja

Vsi spletni strežniki imajo svoje omejitve glede števila zahtev, ki jih lahko hkrati obdelajo. Poleg tega obstaja omejitev pasovne širine kanala, ki povezuje omrežje in strežnik. Da bi zaobšli te omejitve, napadalci ustvarijo računalniško omrežje z zlonamerno programsko opremo, imenovano »botnet« ali »omrežje zombijev«.

Da bi ustvarili botnet, kibernetski kriminalci trojanca distribuirajo prek e-novic, družbenih omrežij ali spletnih mest. Računalniki, vključeni v botnet, nimajo fizično povezavo med seboj. Združuje jih le "služenje" ciljem lastnika hekerja.

Med DDoS napadom heker pošlje ukaze "okuženim" zombi računalnikom, ti pa sprožijo napad. Botneti ustvarjajo ogromno prometa, ki lahko preobremeni kateri koli sistem. Glavni »objekti« za DDoS so običajno pasovna širina strežnika, strežnik DNS in sama internetna povezava.

Znaki DDoS napada

Ko dejanja napadalcev dosežejo svoj cilj, se to lahko takoj ugotovi z napakami v delovanju strežnika ali vira, ki tam gostuje. Toda obstaja vrsta posrednih znakov, po katerih lahko že na začetku ugotovite napad DDoS.

  • Strežniška programska oprema in OS se pogosto zaženeta in očitno neuspešno- zamrznitev, nepravilna zaustavitev itd.
  • zmogljivost strojne opreme strežnika, ki močno odstopa od dnevnega povprečja.
  • Hitro povečanje dohodniprometa v enem ali več vratih.
  • Večkrat podvojena dejanja iste vrste strank na enem viru (obiskati spletno mesto, naložiti datoteko).
  • Pri analizi dnevnikov (dnevnikov uporabniških dejanj) strežnika, požarnega zidu oz omrežne naprave razkrila veliko prošenj iste vrste iz različnih virov enemu pristanišče ali storitev. Še posebej morate biti previdni, če se občinstvo zahtev močno razlikuje od cilja za spletno mesto ali storitev.

Razvrstitev vrst DDoS napadov

Protokolna ofenziva (transportna plast)

Napad DDoS je usmerjen na omrežno plast strežnika ali spletnega vira, zato se pogosto imenuje napad omrežne plasti ali transportne plasti. Njegov namen je preobremeniti prostor tabel na požarnem zidu, ki temelji na dnevniku, centralnem omrežju ali sistemu za uravnoteženje obremenitve.

Najpogostejši DDoS metoda na transportni ravni - poplava omrežja, ki ustvarja ogromen tok navideznih zahtev na različnih ravneh, ki jih sprejemno vozlišče fizično ne more obdelati.

Običajno omrežno storitev uporablja pravilo FIFO, po katerem računalnik ne nadaljuje s servisiranjem druge zahteve, dokler ne obdela prve. Toda med napadom se število zahtev toliko poveča, da naprava nima dovolj virov za dokončanje prve zahteve. Kot rezultat, poplava čim bolj nasiči pasovno širino in popolnoma zamaši vse komunikacijske kanale.

Pogoste vrste poplavljanja omrežja

  • HTTP poplava- napadenemu strežniku se pošlje množica navadnih ali šifriranih HTTP sporočil, ki zamašijo komunikacijska vozlišča.
  • ICMP poplava- napadalčev botnet preobremeni žrtvin gostiteljski stroj s servisnimi zahtevami, na katere je dolžan zagotoviti odmevne odgovore. Poseben primer te vrste napada je ppoplava ali napad Smrkca, ko so komunikacijski kanali napolnjeni z zahtevami ping, ki se uporabljajo za preverjanje razpoložljivosti omrežnega vozlišča. Prav zaradi grožnje poplave ICMP sistemski skrbniki pogosto popolnoma blokirajo možnost izdelave zahtev ICMP s pomočjo požarnega zidu.
  • SYN poplava- napad vpliva na enega od osnovnih mehanizmov protokola TCP, znan kot princip “trojnega rokovanja” (algoritem zahteva-odgovor: SYN paket – SYN-ACK paket – ACK paket). Žrtev je bombardirana s poplavo lažnih zahtev SYN brez odgovora. Uporabnikov kanal je zamašen s čakalno vrsto povezav TCP iz odhodnih povezav, ki čakajo na odzivni paket ACK.
  • UDP poplava- naključna vrata žrtvinega gostiteljskega računalnika so preplavljena s paketi UDP, odzivi na katere preobremenijo omrežne vire. Pokliče se vrsta poplave UDP, usmerjene na strežnik DNS DNS poplava.
  • MAC poplava- cilj je omrežno strojno opremo, katerih vrata so zamašena s tokovi "praznih" paketov z različnimi naslovi MAC. Za zaščito pred to vrsto napadov DDoS so omrežna stikala konfigurirana za preverjanje veljavnosti in filtriranje naslovov MAC.

Napadi na aplikacijski sloj (infrastrukturni sloj)

Ta različica se uporablja, ko je treba zaseči ali onemogočiti vire strojne opreme. Cilj "raiderjev" je lahko fizičen in Oven ali procesorski čas.

Pasovne širine ni treba preobremeniti. Dovolj je le, da povzroči preobremenitev procesorja žrtve ali z drugimi besedami, da vzame celoten čas procesa.

Vrste napadov DDoS na ravni aplikacije

  • Odprema "težkaX"paketi, ki prihaja neposredno do procesorja. Naprava se ne more spopasti z zapletenimi izračuni in začne odpovedovati, s čimer obiskovalcem prepreči dostop do spletnega mesta.
  • S pomočjo skripte se strežnik napolni »smeti« vsebine- dnevniške datoteke, “komentarji uporabnikov” itd. Če skrbnik sistema ni nastavil omejitve na strežniku, lahko heker ustvari ogromne količine datotek, ki bodo zapolnile celoten trdi disk.
  • Težave z sistem kvot. Nekateri strežniki uporabljajo za komunikacijo z zunanji programi Vmesnik CGI (skupni vmesnik prehoda, " skupni vmesnik prehod"). Pri dostopu do CGI lahko napadalec napiše lasten skript, ki bo za svoje interese uporabil nekatere vire, na primer procesorski čas.
  • Nepopoln pregled podatki o obiskovalcu. To vodi tudi do dolgotrajne ali celo neskončne uporabe procesorskih virov, dokler niso izčrpani.
  • Napad druge vrste. V varnostnem sistemu povzroči lažni alarm, ki lahko samodejno zapre vir pred zunanjim svetom.

Napadi na ravni aplikacije

Napad DDoS aplikacijske plasti izkorišča opustitve pri ustvarjanju programsko kodo, kar ustvarja ranljivost programske opreme za zunanje vplive. TO te vrste Eden lahko vključuje tako pogost napad, kot je "Ping of death" - množično pošiljanje daljših paketov ICMP v računalnik žrtve, kar povzroči prepolnitev medpomnilnika.

Toda profesionalni hekerji se redko zatečejo k tako preprosti metodi, kot je preobremenitev kanalov pasovne širine. Za napad na kompleksne sisteme velikih podjetij poskušajo v celoti razumeti strukturo sistema strežnika in napišejo exploit – program, verigo ukazov ali del programske kode, ki upošteva ranljivost programske opreme žrtve in se uporablja za napad. Računalnik.

DNS napadi

  1. Prva skupina je namenjena ranljivostin vBY DNS strežniki. Ti vključujejo pogoste vrste kibernetskih zločinov, kot sta Zero-day attack in Fast Flux DNS.
    Ena najpogostejših vrst napadov DNS se imenuje DNS-Spoofing. Med tem napadalci zamenjajo naslov IP v predpomnilniku strežnika in uporabnika preusmerijo na lažno stran. Med prehodom kriminalec pridobi dostop do osebnih podatkov uporabnika in jih lahko uporabi v svojo korist. Na primer, leta 2009 zaradi ponarejanja zapisov DNS uporabniki eno uro niso mogli dostopati do Twitterja. Ta napad je bil politične narave. Napadalci so namestili domača stran socialno omrežje opozorila iranskih hekerjev v zvezi z ameriško agresijo
  2. Druga skupina so napadi DDoS, ki vodijo do Nedelovanje DNS-strežniki. Če ne uspejo, se uporabnik ne bo mogel prijaviti. želeno stran, saj brskalnik ne bo našel naslova IP, ki je specifičen za določeno mesto.

Preprečevanje in zaščita pred DDoS napadi

Po podatkih Corero Network Security je več kot ⅔ vseh podjetij na svetu vsak mesec izpostavljenih napadom z zavrnitvijo dostopa. Poleg tega njihovo število doseže 50.

Lastniki spletnih strani, ki ne zagotovijo zaščite strežnikov pred napadi DDoS, lahko utrpijo ne le velike izgube, ampak tudi zmanjšanje zaupanja strank, pa tudi konkurenčnosti na trgu.

večina učinkovita metoda zaščita pred napadi DDoS - filtri, ki jih je ponudnik namestil na internetnih kanalih z visoko pasovno širino. Izvajajo dosledno analizo vsega prometa in prepoznajo sumljivo omrežno dejavnost ali napake. Filtre je mogoče namestiti tako na ravni usmerjevalnika kot z uporabo posebnih strojnih naprav.

Metode zaščite

  1. Še vedno v fazi pisanja programsko opremo Pomisliti morate na varnost spletnega mesta. Temeljito preveri programsko opremo za napake in ranljivosti.
  2. Redno posodobite programsko opremo, in tudi možnost vrnitve stara različicače se pojavijo težave.
  3. Sledi omejitev dostopa. Storitve, povezane z administracijo, bi morale biti popolnoma zaprte za dostop tretjih oseb. Zaščitite svoj skrbniški račun kompleksna gesla in jih pogosteje menjajte. Takoj izbrišite račune zaposlenih, ki so dali odpoved.
  4. Dostop do skrbniški vmesnik naj se izvaja izključno iz interno omrežje ali prek VPN.
  5. Preglejte sistem za prisotnost ranljivosti. Najnevarnejše ranljivosti redno objavlja avtoritativna ocena OWASP Top 10.
  6. Prijavite se požarni zid aplikacij- WAF (požarni zid spletnih aplikacij). Pregleduje preneseni promet in spremlja zakonitost zahtev.
  7. Uporaba CDN(Omrežje za dostavo vsebin). Je omrežje za dostavo vsebin, ki deluje z uporabo porazdeljenega omrežja. Promet je razvrščen po več strežnikih, kar zmanjša zakasnitev pri dostopu obiskovalcev.
  8. Nadzor dohodnega prometa z seznami za nadzor dostopa (ACL), ki bo nakazal seznam ljudi, ki imajo dostop do predmeta (programa, procesa ali datoteke), kot tudi njihove vloge.
  9. Lahko blokira promet, ki prihaja iz napadalnih naprav. To se naredi na dva načina: z uporabo požarni zidovi ali ACL. V prvem primeru je določen tok blokiran, vendar zasloni ne morejo ločiti "pozitivnega" prometa od "negativnega". V drugem pa se filtrirajo manjši protokoli. Zato ne bo uporabno, če heker uporablja prednostne poizvedbe.
  10. Da bi se zaščitili pred ponarejanjem DNS, morate občasno počisti predpomnilnik DNS.
  11. Uporaba zaščita pred neželeno pošto- captcha, "človeški" časovni okviri za izpolnjevanje obrazcev, reCaptcha (obkljukajte "Nisem robot") itd.
  12. Povratni napad. Ves zlonamerni promet je preusmerjen na napadalca. Pomagal bo ne le odvrniti napad, ampak tudi uničiti strežnik napadalca.
  13. Postavitev virov na več neodvisnih strežnikov. Če en strežnik odpove, bodo ostali zagotovili delovanje.
  14. Uporaba preverjenih zaščita strojne opreme pred DDoS napadi. Na primer Impletec iCore ali DefensePro.
  15. Izberite ponudnika gostovanja, s katerim sodelujete zanesljiv dobavitelj storitve kibernetske varnosti. Med merili zanesljivosti strokovnjaki izpostavljajo: prisotnost jamstev za kakovost, zagotavljanje zaščite pred najširšim obsegom groženj, 24-urno tehnično podporo, preglednost (dostop strank do statistike in analitike) in odsotnost tarif za zlonamerni promet. .

Zaključek

V tem članku smo pogledali, kaj pomeni napad DDoS in kako zaščititi svoje spletno mesto pred napadi. Pomembno si je zapomniti, da lahko takšna zlonamerna dejanja uničijo celo najvarnejše in največje spletne vire. To bo povzročilo resne posledice v obliki velikih izgub in izgube strank. Zato je zaščita vašega vira pred napadi DDoS nujna naloga za vse komercialne strukture in vladne agencije.

Če želite profesionalno zaščito pred DDoS napadi - izberite! Stalen nadzor in 24/7 tehnična podpora.

Tu in tam se v uradnih sporočilih ponudnikov gostovanja vedno pogosteje omenjajo odsevni napadi DDoS. Vse pogosteje uporabniki, ko odkrijejo nedostopnost njihove strani, takoj prevzamejo DDoS. Dejansko je v začetku marca Runet doživel cel val takih napadov. Strokovnjaki ob tem zagotavljajo, da se zabava šele začenja. Tako pomembnega, grozečega in intrigantnega pojava je preprosto nemogoče prezreti. Danes se torej pogovorimo o mitih in dejstvih o DDoS. Z vidika ponudnika gostovanja seveda.

Nepozaben dan

20. novembra 2013 je bila prvič v 8-letni zgodovini našega podjetja celotna tehnična platforma več ur nedosegljiva zaradi DDoS napada brez primere. Na desettisoče naših strank po vsej Rusiji in CIS je trpelo, da ne omenjamo nas in našega internetnega ponudnika. Zadnja stvar, ki jo je ponudnik uspel posneti, preden je bela luč za vse zbledela, je bila, da so bili njegovi vhodni kanali močno zamašeni z dohodnim prometom. Da bi si to predstavljali, si predstavljajte svojo kopalno kad z navadnim odtokom, v katerega drvijo Niagarski slapovi.

Tudi ponudniki višje v verigi so občutili posledice tega cunamija. Spodnji grafi nazorno prikazujejo, kaj se je tisti dan dogajalo z internetnim prometom v Sankt Peterburgu in v Rusiji. Bodite pozorni na strme vrhove ob 15. in 18. uri, točno v trenutkih, ko smo zabeležili napade. Za te nenadne plus 500-700 GB.

Lokalizacija napada je trajala nekaj ur. Izračunan je bil strežnik, na katerega je bilo poslano. Nato je bila izračunana tarča internetnih teroristov. Ali veste, koga je vsa ta sovražna artilerija udarila? Eno zelo običajno, skromno spletno mesto za stranke.

Mit številka ena: »Carča napada je vedno ponudnik gostovanja. To so mahinacije njegovih konkurentov. Ni moje." Pravzaprav je najverjetnejša tarča internetnih teroristov navadna odjemalska stran. To je spletno mesto enega od vaših sosedov gostujočih. Ali morda tudi vaš.

Ni vse DDoS...

Po dogodkih na naši tehnični strani 20. novembra 2013 in njihovi delni ponovitvi 9. januarja 2014 so nekateri uporabniki začeli domnevati DDoS pri kakršni koli izpadu lastne spletne strani: "To je DDoS!" in "Ali spet doživljate DDoS?"

Pomembno si je zapomniti, da če nas doleti takšen DDoS, da ga občutijo celo naše stranke, to takoj prijavimo sami.

Radi bi pomirili tiste, ki se mudi v paniki: če je z vašim spletnim mestom kaj narobe, potem je verjetnost, da gre za DDoS, manjša od 1%. Preprosto zaradi dejstva, da se spletnemu mestu lahko zgodi marsikaj in to "marsikaj" se zgodi veliko pogosteje. O metodah za hitro samodiagnozo, kaj točno se dogaja z vašo spletno stranjo, bomo govorili v eni od naslednjih objav.

V tem času, zaradi natančnosti besedne rabe, pojasnimo izraze.

O pogojih

DoS napad (iz angleščine Denial of Service) - To je napad, katerega namen je povzročiti zavrnitev storitev strežnika zaradi njegove preobremenjenosti.

DoS napadi niso povezani s poškodbo opreme ali krajo informacij; njihov cilj - naj se strežnik neha odzivati ​​na zahteve. Temeljna razlika med DoS je, da se napad zgodi z enega stroja na drugega. Udeleženca sta točno dva.

Toda v resnici napadov DoS praktično ne vidimo. Zakaj? Ker so tarče napadov najpogosteje industrijski objekti (na primer zmogljivi produktivni strežniki gostiteljskih podjetij). In da bi povzročili kakršno koli opazno škodo delovanju takega stroja, je potrebna veliko večja moč od njegove lastne. To je prva stvar. In drugič, pobudnika napada DoS je precej enostavno prepoznati.

DDoS - v bistvu enako kot DoS, le napad je porazdeljena narava. Ne pet, ne deset, ne dvajset, ampak stotine in tisoče računalnikov dostopa do enega strežnika hkrati z različnih krajev. Ta vojska strojev se imenuje botnet. Naročnika in organizatorja je skoraj nemogoče identificirati.

Sokrivci

Kakšni računalniki so vključeni v botnet?

Presenečeni boste, vendar so to pogosto najbolj običajni domači stroji. Kdo ve?.. - zelo verjetno tvoja domači računalnik odnesel na stran zla.

Za to ne potrebujete veliko. Napadalec najde ranljivost v priljubljeni operacijski sistem ali aplikacijo in z njeno pomočjo okuži vaš računalnik s trojancem, ki na določen dan in uro vašemu računalniku ukaže, naj začne izvajati določena dejanja. Na primer, pošljite zahteve na določen IP. Seveda brez vaše vednosti in sodelovanja.

Mit številka dve: « DDoS se izvaja nekje daleč od mene, v posebnem podzemnem bunkerju, kjer sedijo bradati hekerji z rdečimi očmi.” Pravzaprav, ne da bi vedeli, vi, vaši prijatelji in sosedje - kdorkoli je lahko nehote sostorilec.

To se res dogaja. Tudi če ne razmišljaš o tem. Tudi če ste strašno daleč od IT (še posebej, če ste daleč od IT!).

Zabavna mehanika hekanja ali DDoS

Pojav DDoS ni enoten. Ta koncept združuje številne možnosti za ukrepanje, ki vodijo do enega rezultata (zavrnitev storitve). Razmislimo o vrstah težav, ki nam jih lahko prinesejo DDoSerji.

Prekomerna uporaba strežniških računalniških virov

To se izvede s pošiljanjem paketov na določen IP, katerih obdelava zahteva veliko količino virov. Za nalaganje strani je na primer potrebno izvesti veliko število poizvedb SQL. Vsi napadalci bodo zahtevali točno to stran, kar bo povzročilo preobremenitev strežnika in zavrnitev storitve za običajne, zakonite obiskovalce spletnega mesta.
To je napad na ravni šolarja, ki je nekaj večerov preživel ob branju revije Hacker. Ona ni problem. Isti zahtevani URL se izračuna takoj, nato pa je dostop do njega blokiran na ravni spletnega strežnika. In to je samo ena rešitev.

Preobremenitev komunikacijskih kanalov do strežnika (izhod)

Stopnja težavnosti tega napada je približno enaka prejšnjemu. Napadalec določi najtežjo stran na spletnem mestu in botnet pod njegovim nadzorom jo začne množično zahtevati.


Predstavljajte si, da je del medvedka Puja, ki nam je neviden, neskončno velik
V tem primeru je tudi zelo enostavno razumeti, kaj točno blokira odhodni kanal in preprečuje dostop do te strani. Podobne poizvedbe lahko preprosto vidite z uporabo posebne pripomočke, ki vam omogočajo vpogled v omrežni vmesnik in analizo prometa. Nato se za požarni zid napiše pravilo, ki blokira takšne zahteve. Vse to poteka redno, samodejno in tako bliskovito hitro, da Večina uporabnikov se napada niti ne zaveda.

Mit številka tri: "A Vendar le redko pridejo do mojega gostovanja in vedno jih opazim.” Pravzaprav 99,9 % napadov ne vidite ali občutite. Toda vsakodnevni boj z njimi - To je vsakodnevno, rutinsko delo gostiteljskega podjetja. To je naša realnost, v kateri je napad poceni, konkurenca ni na lestvici in vsi ne izkazujejo pronicljivosti v metodah boja za mesto pod soncem.

Preobremenitev komunikacijskih kanalov do strežnika (vhod)

To je že naloga za tiste, ki revijo Hacker berejo več kot en dan.


Fotografija s spletne strani radia Ekho Moskvy. Nismo našli ničesar bolj vizualnega, kar bi predstavljalo DDoS s preobremenitvijo vhodnih kanalov.
Če želite napolniti kanal z dohodnim prometom do zmogljivosti, morate imeti botnet, katerega moč vam omogoča ustvarjanje zahtevane količine prometa. Toda morda obstaja način, da pošljete malo prometa in prejmete veliko?

Obstaja, in ne samo eden. Obstaja veliko možnosti za izboljšanje napada, vendar je trenutno ena najbolj priljubljenih napad prek javnih strežnikov DNS. Strokovnjaki to metodo imenujejo ojačanje Ojačitev DNS(če so komu ljubši strokovni izrazi). Poenostavljeno povedano, predstavljajte si plaz: že majhen napor je dovolj, da se utrga, a nečloveška sredstva so dovolj, da ga ustavite.

Ti in jaz to veva javni DNS strežnik na zahtevo vsakomur posreduje informacije o katerem koli imenu domene. Takšen strežnik na primer vprašamo: povej mi o domeni sprinthost.ru. In brez zadržkov nam pove vse, kar ve.

Poizvedovanje po strežniku DNS je zelo preprosto delovanje. Kontakt z njim ne stane skoraj nič, zahteva bo mikroskopska. Na primer takole:

Ostaja le še izbira Domena, informacije o katerih bodo tvorile impresiven paket podatkov. Tako se prvotnih 35 bajtov s premikom zapestja spremeni v skoraj 3700. Povečanje je več kot 10-kratno.

Toda kako lahko zagotovite, da je odgovor poslan na pravi IP? Kako ponarediti vir IP zahteve, tako da strežnik DNS izda svoje odgovore v smeri žrtve, ki ni zahtevala nobenih podatkov?

Dejstvo je, da strežniki DNS delujejo v skladu z Komunikacijski protokol UDP, ki sploh ne zahteva potrditve vira zahteve. Kovanje odhodnega IP-ja v tem primeru za doserja ni zelo težko. Zato je ta vrsta napada zdaj tako priljubljena.

Najpomembneje je, da za izvedbo takšnega napada zadostuje zelo majhen botnet. In nekaj razpršenih javnih DNS-jev, ki v tem ne bodo videli nič čudnega različne uporabnike občasno zahtevajo podatke na naslov enega gostitelja. In šele takrat se bo ves ta promet zlil v en tok in tesno zabil eno "cev".

Česar dozirnik ne more vedeti, je zmogljivost kanalov napadalca. In če ne izračuna pravilno moči svojega napada in takoj ne zamaši kanala do strežnika na 100%, je napad mogoče odbiti zelo hitro in enostavno. Uporaba pripomočkov, kot je TCP dump Preprosto je ugotoviti, da dohodni promet prihaja iz DNS, in na ravni požarnega zidu blokirati njegovo sprejemanje. Ta možnost - zavrnitev sprejema prometa iz DNS - je povezana z določenimi neprijetnostmi za vse, vendar bodo tako strežniki kot mesta na njih še naprej uspešno delovali.

To je samo ena od mnogih možnih možnosti za okrepitev napada. Obstaja veliko drugih vrst napadov, o njih lahko govorimo drugič. Zaenkrat bi rad povzel, da vse našteto velja za napad, katerega moč ne presega širine kanala do strežnika.

Če je napad močan

Če moč napada preseže zmogljivost kanala do strežnika, se zgodi naslednje. Internetni kanal do strežnika je takoj zamašen, nato do mesta gostovanja, do njegovega internetnega ponudnika, do zgornjega ponudnika in tako naprej in naprej in navzgor (dolgoročno gledano – do najbolj absurdnih meja), vse do napadalna moč je zadostna.

In potem postane globalni problem za vse. In na kratko, s tem smo se morali soočiti 20. novembra 2013. In ko pride do velikih pretresov, je čas, da vklopite posebno magijo!


Takole izgleda posebna čarovnija, s pomočjo katere je mogoče določiti strežnik, na katerega je usmerjen promet in blokirati njegov IP na ravni internetnega ponudnika. Tako da preneha prejemati kakršne koli zahteve na ta IP prek svojih komunikacijskih kanalov z zunanjim svetom (uplinki). Za ljubitelje terminov: strokovnjaki ta postopek imenujejo "Črna luknja", iz angleščine blackhole.

V tem primeru napadeni strežnik s 500-1500 računi ostane brez svojega IP-ja. Zanj je dodeljeno novo podomrežje naslovov IP, po katerem so računi strank naključno enakomerno porazdeljeni. Nato strokovnjaki čakajo, da se napad ponovi. Skoraj vedno se ponavlja.

In ko se ponovi, napadeni IP nima več 500-1000 računov, ampak samo ducat ali dva.

Krog osumljencev se oži. Teh 10-20 računov je spet porazdeljenih različne naslove IP. In spet so inženirji v zasedi in čakajo, da se napad ponovi. Račune, ki ostanejo pod sumom, znova in znova razdelijo na različne IP-je in tako, postopoma približujejo, določijo tarčo napada. Vsi drugi računi se na tej točki vrnejo v normalno delovanje na prejšnjem IP-ju.

Kot je jasno, to ni takojšnji postopek; za izvedbo je potreben čas.

Četrti mit:»Ko pride do obsežnega napada, moj gostitelj nima načrta ukrepanja. Z zaprtimi očmi samo čaka, da se bombardiranje konča, in na moja pisma odgovarja z enakimi odgovori.«To ne drži: v primeru napada ponudnik gostovanja deluje po načrtu, da ga lokalizira in čim hitreje odpravi posledice. In pisma iste vrste vam omogočajo, da prenesete bistvo dogajanja in hkrati prihranite sredstva, potrebna za čim hitrejše reševanje izrednih razmer.

Je luč na koncu tunela?

Zdaj vidimo, da aktivnost DDoS nenehno narašča. Naročanje napada je postalo zelo dostopno in nesramno poceni. Da bi se izognili obtožbam o propagandi, ne bo dokaznih povezav. Toda verjemite nam na besedo, res je.

Mit številka pet: »Napad DDoS je zelo drag podvig in samo poslovni tajkuni si lahko privoščijo, da ga naročijo. Vsaj to so mahinacije tajnih služb!« Pravzaprav so tovrstni dogodki postali izjemno dostopni.

Zato ni mogoče pričakovati, da bo zlonamerna dejavnost izginila sama od sebe. Namesto tega se bo samo še stopnjevalo. Ostane le še kovati in brusiti orožje. To počnemo, izboljšujemo omrežno infrastrukturo.

Pravna stran vprašanja

To je zelo nepriljubljen vidik razprave o napadih DDoS, saj le redko slišimo o primerih, ko bi bili storilci ujeti in kaznovani. Vendar se morate spomniti: Napad DDoS je kaznivo dejanje. V večini držav sveta, vključno z Rusko federacijo.

Mit številka šest: « Zdaj vem dovolj o DDoS-u, bom naročil zabavo za tekmeca - in zaradi tega se mi ne bo nič zgodilo!" Možno je, da se bo zgodilo. In če bo, se ne bo zdelo veliko.

Na splošno nikomur ne svetujemo, da se vključi v zlobno prakso DDoS, da si ne bi nakopali jeze pravice in si ne bi uničili karme. In mi, zaradi specifičnosti naše dejavnosti in velikega raziskovalnega interesa, še naprej preučujemo problem, stojimo na straži in izboljšujemo obrambne strukture.

PS:nimamo dovolj prijaznih besed, da bi izrazili svojo hvaležnost, zato samo rečemo"Hvala vam!" našim potrpežljivim strankam, ki so nas toplo podpirale v težkem dnevu 20. novembra 2013. Izrekli ste veliko spodbudnih besed v našo podporo