Postavte se velké vodě: Nejčastějšími DDoS útoky jsou SYN a UDP záplavy
Klidný týden technického ředitele Adriana Newbyho se měl ten den změnit. Jeho firma poskytuje internetový software jako službu svým zákazníkům. A právě jeden z jejich klientů najednou začal mít problémy. Servery začaly šílet. Došlo k nim obrovské množství internetového provozu, které nemohly zvládat bez potíží. Příznaky byly Newbymu jasné. Šlo o počátek DDoS útoku, distribuovaného úderu snažícího se o znepřístupnění služeb. Jak se výzvě Newby postavil?
Ihned se spolu se svým týmem pustil do boje s útočníky, který nakonec trval celých 39 hodin. Obránce vyšel na běžné poměry ještě vcelku levně – zhruba na 1500 amerických dolarů, tedy asi 36 tisíc korun.
Newby a jeho tým nakonec hrozbu s velkým štěstím odrazili. Pomohla jim flexibilita cloudu, škálováním kapacit serverů útočníky umořili.
Situace pro ně ale mohla dopadnout mnohem hůře. Kdyby je zasáhl útok jiného typu, ani cloud by jim nemusel zachránit kůži. Existuje více různých druhů DDoS a proti každému je třeba se bránit jinak.
Nejčastější ale útočníci používají dva konkrétní postupy. Které to jsou a jak se proti nim bránit? Čtěte dál.
Ne všechny útoky fungují stejně
Možná víte, jak DDoS zhruba fungují. Opravdu velmi zjednodušeně řečeno: při útoku nastane podobná situace, jako by se vám na mobil zničehonic snažilo dovolat tisíc lidí. Nic důležitého od vás nepotřebují – představte si je třeba jako pojišťovací agenty – jen obsazují linku, aby se vám nemohl dovolat nikdo jiný. Pro lidi mimo síť útočníků (v našem případě pojišťováků) je váš mobil prakticky nedostupný. Takové přirovnání je samozřejmě nepřesné v mnoha ohledech, ale pro představu stačí.
Skutečná situace je však mnohem komplikovanější. Především neexistuje jediný typ útoku. Různých technik je mnoho a v mnohém se od sebe liší.
Experti rozdělují DDoS údery do několika obecných kategorií, zpravidla podle toho, jakým způsobem se pokoušejí službu znepřístupnit. Výrobce ochranných síťových prvků Radware zmiňuje například útoky zaměřené na serverové prostředky, na aplikace, síťové prostředky, nebo třeba na SSL vrstvu.
Názvosloví není jednotné
Jiní odborníci, jako například lidé z firmy Imperva, pro změnu mluví o protokolových, aplikačních a volumetrických útocích. Toto rozdělení je ale trochu nešťastné, protože protokoly a jejich specifika jsou využívány i při útocích, které Imperva klasifikuje jako aplikační a volumetrické. Cisco zase DDoS klasifikuje jako objemové, aplikační a takzvané low-rate. Každé takové rozdělení je ale do jisté míry zjednodušující a abstraktní, takže jsou stejně vhodná jen pro základní představu.
Názvy kategorií do jisté míry o metodách vypovídají – některé se snaží vyčerpat prostředky serveru, jiné využívají slabin aplikací nebo zabezpečení. Za zmínku stojí údery zaměřené na síťové prostředky. Ty se snaží takříkajíc „ucpat trubky“ tím, že prostě vyčerpají kapacity webové konektivity příslušného serveru. Tím pak server znepřístupní běžným uživatelům.
Hrozeb je čím dál víc a jsou silnější než dřív
Jak zaznělo v jednom z dřívějších příspěvků zde na blogu, DDoS útoků v poslední době přibývá. A při velké částí z nich jsou oběti vystaveny hned několika různým úderům najednou. Podle průzkumů agresoři nejčastěji volí dva konkrétní vektory útoku – takzvané SYN flood a UDP flood.
Rozdělení DDoS útoků za druhé čtvrtletí 2015
Jak tyto způsoby fungují?
Nejčastější metodou je UDP záplava. Server prostě zahltí
S přehledem nejčastější formou útoku je záplava UDP, anglicky UDP flood. Zkratkou UDP je míněn internetový protokol zvaný User Datagram Protocol. Ten se stará o komunikaci v síti podobně jako TCP, na rozdíl od něj ale nevyužívá žádný handshaking, tedy ověřování navázání, průběhu a vypršení času komunikace. Díky tomu je zásadně rychlejší, na druhou stranu se ale trochu otevírá možnému zneužití.
Například UDP záplavou.
Ta funguje na vcelku jednoduchém principu. Útočníci pošlou velké množství UDP paketů na náhodné porty cílového serveru. Ten musí na pakety reagovat. Nejprve zkontroluje, jestli tyto porty sleduje nějaká z jeho aplikací. Když zjistí, že ne, musí odpovědět informací, že cílová destinace je nedostupná. Tu posílá paketem internetového protokolu ICMP, který slouží pro odesílání chybových zpráv.
Na každý UDP paket, který server přijme, musí podle pravidel komunikace odpovědět. Když jich obdrží obrovské množství, na všechny se snaží odpovědět a tím vyčerpá svou internetovou konektivitu a někdy i další prostředky. Obrovské množství informací „ucpe trubky“ a znemožní serveru jinou komunikaci.
Tento typ lze zařadit mezi údery zaměřené na síťové prostředky nebo také volumetrické útoky. Je oblíbený pravděpodobně proto, že obrana proti němu je vcelku obtížná. Sami vlastníci serveru proti němu mohou dělat minimum, snad jen limitovat množství zároveň zpracovaných ICMP paketů. Tím ale nevyřeší vytížení linky směrem k serveru, které může být v případě UDP záplavy také značné.
Efektivně řešit takový typ DDoS může především poskytovatel, třeba filtrováním UDP paketů do takzvaných černých děr, destinací, odkud už neputují dál a nevracejí zprávu odesílateli.
Jeho spuštění je navíc relativně jednoduché, zejména díky dostupnosti aplikací jako například Low-Orbit Ion Cannon, které celý proces útoku usnadňují na pouhých několik kroků.
Záplava SYN paketů: Server marně čeká na odpověď
Druhým nejčastějším útokem je podle statistik takzvaná záplava SYN, anglicky SYN flood. Využívá klíčového internetového protokolu TCP, konkrétně jedné jeho charakteristiky. Oproti jednoduššímu, rychlejšímu, ale méně přesnému UDP totiž TCP hlídá průběh komunikace mezi dvěma stranami. Toho docílí pomocí signálů, které si obě strany musí navzájem poslat, než je jejich spojení oficiálně zahájeno.
Strana vyvolávající komunikaci pošle cílovému serveru zprávu SYN, zkratka vychází z anglického synchronize, česky synchronizovat či sladit. Tím dá najevo serveru snahu o zahájení komunikace.
Druhý krok této komunikace provádí cílový server. Ten reaguje na zprávu SYN další zprávou, tentokrát SYN-ACK – z anglického synchronize acknowledged – čímž potvrdí první straně komunikace přijetí paketu SYN.
Třetím krokem má být další zpráva od počítače vyvolávajícího komunikaci. Měl by zaslat paket ACK, čímž potvrdí potvrzení serveru. Spojení TCP je v tom případě úspěšně zahájeno.
Celý proces sestává ze zpráv SYN, poté SYN-ACK, a nakonec ACK. Někdy se nazývá anglicky three-way handshake, česky trojcestné potřesení rukou, nebo volněji trojité navázání spojení.
Právě ve třetím bodě se ale postup v případě SYN záplavy liší.
Cílový server sice obdrží zprávu SYN a odpoví na ni svým SYN-ACK, už k němu ale nedojde tolik potřebná zpráva ACK. Server tedy neví, v jakém stavu se komunikace nachází a dál čeká na přijetí této zprávy – mohla se přece jen opozdit kvůli vytížení sítě.
Musí ale kvůli tomu ponechat toto spojení nějakou dobu takto napůl otevřené, čímž vyčerpává své prostředky.
Mezitím dostává další a další žádosti SYN, na které odpovídá, ale které mu opět nejsou potvrzeny. Celá situace může vést k vyčerpání prostředků serveru, k jeho chybnému fungování, nebo přímo zhroucení.
Odpověď ACK lze obejít a server tak zmást
Server může na ACK zprávu čekat donekonečna ze dvou důvodů. Buď proto, že útočník své zázemí nastavil tak, aby ji serveru vůbec nezaslaly. Nebo proto, že záměrně podvrhnul průvodní informace u prvotního SYN paketu a použil třeba cizí IP adresu – jedná se pak o takzvaný IP spoofing. Server si pak myslí, že mu zprávu poslal úplně jiný počítač. Svou odpověď SYN-ACK posílá tedy jemu. Ten ale vůbec neví, o jakou komunikaci se jedná, a odpověď ACK serveru tedy nevrátí.
Postavte hráz ze sušenek
Proti útokům pomocí SYN záplavy mají naštěstí vlastníci serverů k dispozici možnost obrany. Jejich servery mohou na začátek paketů, které při navazování TCP komunikace vysílají, přidat speciální hodnotu – takzvané SYN cookies.
To umožní serveru na komunikaci zapomenout do chvíle, dokud neobdrží závěrečný ACK paket. Server nemusí tedy držet spojení napůl otevřené a vyčerpávat zbytečně své prostředky. Místo toho jej obnoví až ve chvíli, kdy ACK zprávu opravdu dostane. Potřebné informace si znovu sestaví z hodnot SYN cookies.
Fungování cookies je trochu podobné tomu, jako byste vyzvánějící mobil zvedali jen lidem ve vašem telefonním seznamu a ostatní ignorovali.
Tato metoda existuje už od roku 1996, její formulace se připisuje americkému expertovi a kryptologovi Danielu J. Bernsteinovi.
V poslední době se ale objevila technika, na kterou by ani jeho mazané SYN cookies nestačily. Odborníci z firmy Radware zachytili nový způsob útoku, který nazvali tsunami SYN flood. Podobně jako ona přírodní katastrofa je totiž tsunami SYN záplava obrovská.
Zlomyslní lidé stojící za zrodem tsunami uměle prodloužili SYN paket při svých nájezdech z běžných 40 až 60 bajtů na velikosti dosahující až jednoho tisíce bajtů. Tak velké pakety jsou podle protokolu sice přípustné, ale podle Radware komplikují a znemožňují několik obranných algoritmů. Včetně SYN cookies.
Kromě toho má tsunami úctyhodné rozměry ještě v jednom ohledu – SYN žádosti přichází v obrovském množství. Pro volumetrické útoky většinou pachatelé volí spíše výše zmíněný UDP. Při obraně proti tsunami SYN ale podle odborníků z Radware není možné použít stejné postupy jako při UDP záplavě.
Záplavové útoky jsou obrovská hrozba. Připravte se na ně
Oba typy DDoS – zmiňované UDP i SYN – mohou přivodit cílovým serverům opravdové problémy.
Všechno ale závisí na jejich síle – některým se mohou administrátoři ubránit jen s trochou snahy, zatímco jiné dokážou servery položit stůj co stůj. Vůbec nejsilnější z poslední doby dosáhl až 253 gigabitů za sekundu. Pro srovnání – tým expertů Adriana Newbyho měl plné ruce práce soubojem s útokem, který byl třináctkrát slabší.
Odrazem lze zapojit do DDoS nic netušíci servery
Třeba takzvané reflected neboli odražené DDoS útoky dokáží dostat do kolen servery, na které by si běžný výpad nepřišel. Zapojují totiž do úderu kromě vlastního botnetu také další cizí servery, které falšováním informací přimějí k posílání dat na server oběti. Tím je síla útoku ještě mnohokrát znásobena a obrana je násobně komplikovanější.
Administrátoři a administrátorky musí proto klást velký důraz na prevenci. Jen s dostatečnou přípravou, testováním a mapováním slabin mohou rychle reagovat na příchozí hrozby.
Jaké jsou vaše zkušenosti? Zažili jste už DDoS útok? Kterým metodám jste museli odolávat? A obstáli jste proti nim? Podělte se s ostatními o své zážitky a zkušenosti.