Hlavní navigace

Konkrétní ukázka (D)DoS útoku z pohledu peeringového uzlu

23. 2. 2015
Doba čtení: 4 minuty

Sdílet

Jednou z často využívaných pomůcek při obraně proti stále silnějším útokům typu (D)DoS, který přichází zejména z cizích sítí, je technika známá jako Remotely-Triggered Black Hole filtering (RTBH filtrování). Při ní je možné zahazovat provoz ještě dřív než dorazí do cílové sítě a zahltí linku oběti.

Technika RTBH využívá možnosti protokolu BGP k tomu, aby omezila přicházející packety na určitý IP rozsah (dále prefix) ze směru, který daná BGP relace obsluhuje, ještě před tím než packety dorazí do sítě, jež se snaží minimalizovat dopady takovéhoto útoku. Při běžné BGP relaci posílá síť směrem ke svým upstream nebo peerovým partnerům prefix, který daná síť sama provozuje nebo připojuje. Pomocí takto popsané techniky se propojují na síťové úrovni de facto všechny sítě, které využívají vlastní autonomní systém (AS).

Seriál vznikl za přispění Národního CSIRT týmu České republiky CSIRT.CZ, který provozuje sdružení CZ.NIC, správce české národní domény. CSIRT.CZ je bezpečnostní tým pro koordinaci řešení bezpečnostních incidentů v počítačových sítích provozovaných v České republice. Cílem jeho členů je pomáhat provozovatelům internetových sítí v České republice zřizovat jejich vlastní bezpečnostní týmy a bezpečnostní infrastrukturu, řešit bezpečnostní incidenty a tím zlepšovat bezpečnost jejich sítí i globálního internetu. Více informací na www.csirt.cz.

csirt.cz

Jestliže budeme chtít tuto BGP relaci zároveň využit i pro RTBH filtrování, budou spolu s běžně přenášenými informacemi o prefixech přidány i informace, které budou přesně určovat, který prefix (či podprefix) bude na routeru filtrován. Pro přenos informací o tom, který prefix má být filtrován, lze využít standardní mechanizmus BGP a označit jej pomocí BGP komunity. Konkrétně tak, aby partnerská síť na druhé straně BGP relace dostala tuto informaci a prefix začala filtrovat. Toto nastavení si musí předem obě strany BGP realce domluvit a nastavit tak, aby docházelo ke správné interpretaci (pro RTBH není zatím žádné jednotné pravidlo, které by globálně používaly všechny sítě).

Na prvním obrázku můžeme vidět velmi zjednodušené schéma propojení dvou vzorových sítí. Ze sítě A jde útok na server/router v síti B (červený, dále „oběť“). Protože jsou obě sítě propojeny přes své poskytovatele „zahraniční konektivity“, vedlo by jednoduché odstranění propagace oběti pouze k přesunu směru samotného útoku přes tyto poskytovatele. Problém by tak pouze změnil svůj tok přes draze placené a obvykle výrazně pomalejší zahraniční linky.

Proto je nutné buď nastavit ACL na straně sítě B, díky čemuž může hrozit saturování vzájemného propojení a nebo využít právě RTBH, kdy budou data původně směrovaná na oběť zahazována již v síti A a nebude tak hrozit saturace vzájemného propoje.

V rámci projektu FENIX, který vznikl na půdě českého peeringového uzlu NIX.CZ, vyvstala potřeba zavést tuto techniku i v propojovacím uzlu. Protože by bylo těžké hromadně měnit konfiguraci vzájemných BGP relaci, bylo zvoleno jako vhodné řešení tohoto záměru využití route serveru (ideálně rovnou dvou, z důvodu redundance).

S tím se postupně připojí maximální možné množství provozovatelů jednotlivých sítí, přičemž tyto route servery se postarají o rozšíření informace RTBH. Aby se předešlo možnému riziku propagace cizího prefixu, dochází k periodické tvorbě filtrů na základě databáze RIPE NCC. Route servery v NIX.CZ využívají schopnosti softwaru BIRD, čímž jsou výrazně širší než u komerčních routerů. V tomto případě dochází k využití možnosti modifikace next-hop routeru u přijatých prefixů. Takto změněný next-hop je jíž na druhé vrstvě (modelu ISO/OSI) filtrován pomocí ACL (Access Control List) a to už v rámci vstupu do infrastruktury NIX.CZ.

Díky tomu síť, která chce využívat RTBH, nemusí provádět úpravy na své straně, ale pouze se spojí s route servery. V případě útoku pak vypropraguje pomocí BGP komunity adresy, které jsou pod DDoS a provoz směrovaný skrze route servery bude odfiltrován. Pro zrušení takovéhoto filtrování stačí přestat propagovat adresy s touto komunitou a provoz tím začne být směrován zpět na požadovaný router.

Na obrázku výše můžeme vidět zjednodušené schéma propojeni pomocí route serveru (dále RS), kdy síť A odesílá své prefixy (a prefixy svých zákazníků) pomocí RS síti B. Síť B tyto příjme a používá je k přenosu dat spolu s Next Hop adresou přímo na vlastní router sítě A. Obdobně odesílá prefixy i síť B a síť A je obdobně akceptuje a využívá Next Hop adresu pro tato data přímo jako adresu routeru sítě B.

UX DAy - tip 2

Na dalším obrázku jíž správce sítě B vyhodnotí, že se některý z jeho prefixů stal oběti DDoS. Proto začne tento prefix propagovat spolu s předem určenou komunitou. To způsobí, že router sítě A bude dále na všechny prefixy kromě zasaženého dostávat stále Next Hop adresu routeru sítě B. Ovšem na prefix, který je obětí DDoS, dostane Next Hop adresu black hole serveru (routeru).

Díky tomuto mechanizmu bude dále oběť DDoS dostupná z ostatních sítí a provoz, který měl být „zbraní“ DDoS útoku, bude zahozen ještě před vstupem do sítě B.

Byl pro vás článek přínosný?

Autor článku

Adam Golecký pracuje ve sdružení NIX.CZ od roku 2008. Od roku 2011 do roku 2018 zastával pozici technického ředitele. Nyní je ředitelem sdružení.