Zurück zum Blog
Co to jest BGP FlowSpec i dlaczego zmienia ochronę sieci ISP?
Co to jest BGP FlowSpec i dlaczego zmienia ochronę sieci ISP?
BGP FlowSpec to rozszerzenie protokołu BGP, które pozwala dystrybuować precyzyjne reguły filtrowania ruchu sieciowego (na podstawie adresu, protokołu, portu, flag TCP i innych cech pakietu) bezpośrednio do routerów brzegowych, tą samą infrastrukturą, która już przenosi trasy routingu - bez ręcznego wchodzenia na każde urządzenie i wpisywania osobnych list ACL. Dla operatora ISP oznacza to możliwość zatrzymania ataku DDoS blisko granicy sieci, precyzyjnie i bez ręcznej interwencji na sprzęcie.
To jeden z fundamentalnych mechanizmów, na których opiera się nowoczesna ochrona anty-DDoS w sieciach operatorskich - i jednocześnie termin, który pojawia się w niemal każdej rozmowie o wyborze systemu anty-DDoS dla ISP, dlatego warto rozumieć go dokładnie, zanim porówna się konkretne rozwiązania.
Jak dokładnie działa BGP FlowSpec
Standardowy BGP przenosi informacje o tym, jak dotrzeć do danej sieci (trasy routingu). FlowSpec rozszerza tę samą sesję BGP o możliwość przenoszenia reguł filtrowania ruchu - czyli informacji o tym, jaki ruch należy odrzucić, ograniczyć albo przekierować, zdefiniowanej na podstawie konkretnych cech pakietu: adresu źródłowego i docelowego, protokołu, portu, flag TCP, rozmiaru pakietu czy typu ICMP.
Router, który odbiera taką regułę przez sesję BGP, instaluje ją bezpośrednio w swoim sprzętowym forwarding path (o ile go wspiera - to temat sam w sobie, opisany osobno w artykule o kompatybilności routerów z FlowSpec) i zaczyna odrzucać wyłącznie pakiety pasujące do zdefiniowanej sygnatury. Cały pozostały ruch, także kierowany na ten sam adres IP, przechodzi bez zakłóceń.
To zasadnicza różnica względem tradycyjnego podejścia, w którym operator musiałby ręcznie logować się na każdy router brzegowy i wpisywać listę ACL osobno, urządzenie po urządzeniu - proces zbyt wolny, żeby nadążyć za atakiem trwającym kilka minut, a przy większej liczbie routerów praktycznie niewykonalny w czasie rzeczywistym.
Czym FlowSpec różni się od zwykłego routingu BGP
Zwykły BGP odpowiada na pytanie "jak dotrzeć do tej sieci". FlowSpec odpowiada na pytanie "co zrobić z ruchem o tych konkretnych cechach". Oba typy informacji podróżują tą samą infrastrukturą BGP - tymi samymi sesjami, do tych samych sąsiadów - ale FlowSpec niesie zupełnie inny rodzaj polecenia: nie "gdzie skierować pakiet", tylko "czy w ogóle go przepuścić, i pod jakim warunkiem".
Dzięki temu FlowSpec można wdrożyć bez budowania osobnej, dedykowanej infrastruktury do dystrybucji reguł filtrowania - wystarczy, że routery brzegowe obsługują to rozszerzenie protokołu i mają odpowiednią sesję BGP skonfigurowaną z systemem generującym reguły.
Dlaczego FlowSpec jest lepszy od blackholingu (RTBH), gdy da się go zastosować
FlowSpec i RTBH (Remote Triggered Black Hole) to dwa różne mechanizmy reakcji na atak, często mylone ze sobą, mimo że działają na zupełnie innej zasadzie precyzji. RTBH odcina cały ruch kierowany na dany adres IP - również legalny. FlowSpec odcina wyłącznie pakiety pasujące do konkretnej sygnatury ataku, zostawiając resztę ruchu do tego samego adresu bez zmian.
Dlatego dobra architektura ochrony anty-DDoS traktuje FlowSpec jako pierwszą linię obrony, a RTBH jako mechanizm awaryjny, uruchamiany dopiero wtedy, gdy sama filtracja FlowSpec przestaje wystarczać - np. przy ataku zbliżającym się do nasycenia łącza. Ten temat rozwijamy osobno w artykule o minimalizowaniu efektów ubocznych mitygacji.
Jak LiveShield wykorzystuje BGP FlowSpec do ochrony sieci ISP
LiveShield posiada własny demon BGP (oparty o GoBGP) i w pełni obsługuje generowanie oraz dystrybucję reguł FlowSpec bez potrzeby ręcznej konfiguracji ACL po stronie operatora. System analizuje ruch w czasie rzeczywistym, wykrywa atak na podstawie skonfigurowanych progów per protokół, a następnie automatycznie generuje regułę FlowSpec dopasowaną do konkretnego wektora ataku i ogłasza ją przez sesję BGP do routera brzegowego - cały proces, od detekcji do wdrożenia pierwszej reguły, odbywa się bez interwencji operatora.
W praktyce oznacza to, że operator konfiguruje sesję BGP między LiveShield a swoimi routerami raz, a od tego momentu każda kolejna reguła FlowSpec generowana jest i dystrybuowana automatycznie, w oparciu o bieżącą analizę ruchu. Dotyczy to również sytuacji z wieloma routerami brzegowymi jednocześnie - reguła jest ogłaszana raz, przez BGP, do wszystkich sąsiadów, którzy mają skonfigurowaną odpowiednią sesję, zamiast wymagać osobnej konfiguracji na każdym urządzeniu z osobna.
Jeden warunek trzeba mieć na uwadze niezależnie od tego, jakiego systemu generującego reguły FlowSpec się użyje: sam fakt, że router "obsługuje BGP FlowSpec" w warstwie kontrolnej, nie oznacza, że zastosuje regułę w sprzętowym forwarding path. To, jakie konkretnie platformy sprzętowe rzeczywiście wspierają FlowSpec w praktyce, opisujemy szczegółowo w osobnym artykule - warto to zweryfikować przed wyborem systemu anty-DDoS, niezależnie od dostawcy.
Podsumowanie
BGP FlowSpec to mechanizm dystrybucji precyzyjnych reguł filtrowania ruchu przez tę samą infrastrukturę BGP, która już przenosi trasy routingu - bez ręcznej konfiguracji ACL na każdym urządzeniu z osobna. W odróżnieniu od RTBH, który blokuje cały ruch do danego adresu, FlowSpec pozwala odciąć wyłącznie ruch pasujący do sygnatury ataku, zachowując ciągłość działania usługi dla ruchu legalnego. LiveShield generuje i dystrybuuje reguły FlowSpec w pełni automatycznie, na podstawie bieżącej analizy ruchu, dzięki własnemu demonowi BGP zintegrowanemu z istniejącą infrastrukturą operatora - bez potrzeby wdrażania dodatkowych komponentów czy ręcznej pracy podczas trwania ataku.
Najczęściej zadawane pytania
Co to jest BGP FlowSpec w prostych słowach? To rozszerzenie protokołu BGP, które pozwala przesyłać do routerów precyzyjne reguły filtrowania ruchu (np. "odrzuć pakiety UDP z tego źródła na ten port") tą samą infrastrukturą, która przenosi trasy routingu, bez ręcznej konfiguracji ACL na każdym urządzeniu.
Czym różni się FlowSpec od RTBH? FlowSpec filtruje precyzyjnie, na podstawie konkretnych cech pakietu, zostawiając resztę ruchu do danego adresu bez zmian. RTBH blokuje cały ruch do adresu IP, w tym ruch legalny - jest mechanizmem mniej precyzyjnym, stosowanym zwykle jako zabezpieczenie awaryjne.
Czy każdy router obsługuje BGP FlowSpec? Obsługa FlowSpec w warstwie kontrolnej BGP nie oznacza automatycznie, że router zastosuje regułę w sprzętowym forwarding path - to zależy od konkretnego modelu, wersji oprogramowania i licencji. Warto to zweryfikować przed wdrożeniem.
Czy wdrożenie FlowSpec z LiveShield wymaga ręcznej konfiguracji reguł podczas ataku? Nie. LiveShield automatycznie generuje i dystrybuuje reguły FlowSpec na podstawie bieżącej analizy ruchu, przez własny demon BGP zintegrowany z routerami operatora - operator konfiguruje sesję BGP raz, a kolejne reguły powstają bez ręcznej interwencji.