Laboratorium bezpieczeństwa routingu międzydomenowego Łukasz Dobrodziej, Jakub Maćkowiak Opiekun naukowy: mgr inż. Mariusz Mycek
Plan prezentacji Cel pracy i motywacja Wprowadzenie – protokół BGP Wady BGP stanowiące zagrożenie bezpieczeństwa Rodzaje ataków wykorzystujących wady BGP Metody zabezpieczenia protokołu BGP Koncepcja laboratorium Podsumowanie
Cel pracy i motywacja Cel: Rozszerzenie wiedzy dot. protokołu BGP o zagadnienia związane z jego bezpieczeństwem Charakterystyka zagrożeń Zebranie i przedstawienie dobrych praktyk, sposobów na ochronę przed zagrożeniami Przeprowadzenie laboratorium dotyczącego bezpieczeństwa BGP z udziałem studentów na stworzonej platformie laboratoryjnej
Cel pracy i motywacja Motywacja: Rosnące wymagania odnośnie osiągalności w sieci Internet Słabości BGP mają wpływ na globalny routing Wady bezpieczeństwa BGP są powszechnie znane Spammers / Crackers Podatność na błędy konfiguracji (human factor)
Protokół BGP Podstawowy protokół klasy EGP (Exterior Gateway Protocol) Wymiana informacji o dostępnych podsieciach między systemami autonomicznymi Protokół typu path-vector Oparty na regułach i parametrach administracyjnych
Wady BGP mogące powodować zagrożenie bezpieczeństwa Brak pewności czy uczestnicy dialogu BGP rozgłaszają prefixy, których są właścicielami Ingerencja w rozgłoszenia ścieżek i ich atrybuty mająca na celu obalenie polityk routingowych ISP Przesyłanie wiadomości BGP (TCP/IP), jak każda transmisja w publicznej sieci, może być obiektem ataku
Rozgłaszanie niewłaściwych prefixów Router może być skonfigurowany tak by rozgłaszać jakikolwiek prefix Jeśli choć jeden router sąsiadujący (pod względem sesji BGP) nie odrzuci nieprawidłowych rozgłoszeń, dostępność prefixu przez wrogi AS może się łatwo propagować Rozgłaszanie nieużytych przestrzeni adresowych (Bogon IP/Dark IP/Private IP) lub przynależnych do innych AS – Prefix Hijacking ‘Longest prefix match’ rule
Rozgłaszanie niewłaściwych ścieżek Router może być skonfigurowany tak by wysyłać nieprawidłowe rozgłoszenia Zmodyfikowane atrybuty korzystniejsze / gorsze – za ich pomocą można umiejętnie skierować ruch na ścieżkę oczekiwaną przez stronę atakującą.
Announcement tampering Path: 1, 2 Path: 1, 3, 100 AS 100 manipulując atrybutem AS_PATH może: - osiągnąć równą długość AS_PATH dla ścieżki przechodzącej przez niego (usunięcie AS 3) - osiągnąć krótsze AS_PATH jeśli usunie również AS 1
Przesyłanie wiadomości BGP Kanał komunikacji może stać się celem ataków Poufność – brak obowiązku szyfrowania pakietów BGP – pozyskiwanie danych o ISP Integralność – brak obowiązku autoryzacji, brak hashowania: wstrzykiwanie nieprawidłowych danych selektywne kasowanie wiadomości modyfikowanie wiadomości atak powtórzeniowy Denial of Service (komunikacji BGP!) wysyłanie TCP RST wysyłanie TCP SYN (flooding)
Rodzaje ataków przy użyciu BGP Denial of Service Błędy w konfiguracji routera, luki w protokole/konfiguracji, ataki na router, przeciążanie łączy Podsłuch Wprowadzenie nieprawidłowych informacji w celu zmiany routingu danych użytkowych Prefix hijacking Rozgłaszanie nieprawidłowych prefixów (spammers) ominięcie serwerów Real-time Blackhole List utrudnienie wykrycia pochodzenia spamu
Przypadki awarii Kwiecień 1997: AS 7007 ogłasza bezpośrednią ścieżkę do każdego prefixu w Internecie Grudzień 1999: Adresy serwerów AT&T rozgłoszone przez innego ISP Grudzień 2004: TTnet rozgłasza ponad 100k ścieżek Wrzesień 2005: AT&T, XO, Bell South przekierowane do Boliwii Styczeń 2006: Wiele sieci przekierowanych do operatora z Nowego Jorku Źródło: BGP Security, RIPE 52 Meeting, www.ripe.net/meetings
Przypadki awarii Grudzień 2004: 09:19 AS9121 (TTnet) rozgłasza ponad 100.000 ścieżek, 09:19 AS6762 (Telecom Italia) przyjmuje rozgłoszenie (brak ograniczenia na max prefix) Rozgłoszenia z AS6762 zapychają do max prefix wszystkich sąsiadów 09:20 Błędne rozgłoszenia AS9121 przykrywają rozgłoszenia prawowitych właścicieli 09:36 Największa wartość nieprawidłowych rozgłoszeń. ‘neighbor maximum-prefix’ - niewystarczające. Źródło: The Anatomy of a Leak: AS9121, www.renesys.com
Awarie - Prefix Hijacking Router z AS 1 rozgłasza prefix 150.150.0.0/16 150.150.0.0/16
Awarie – Prefix Hijacking Router z AS 5 rozgłasza konkurencyjną ścieżkę dla tego prefixu. Ścieżka jest ‘lepsza’ w kategorii długości AS_PATH dla AS 4 i jednakowa dla AS 3 150.150.0.0/16
Awarie - Prefix Hijacking Router z AS 5 rozgłasza konkurencyjną ścieżkę dla prefixu o dłuższej masce adresu. Ścieżka jest ‘lepsza’ w kategorii ‘szczegółowość’ prefixu dla AS 2 włącznie 150.150.0.0/16
Wymagania na zabezpieczenie BGP Zachowanie dotychczasowej skalowalności Umiar w dodatkowym obciążeniu wydajnościowym routerów Wsteczna kompatybilność Ograniczone zaufanie między uczestnikami Niechęć do dystrybucji informacji przez operatorów
Zabezpieczenie Sesji pomiędzy peer’ami BGP filtry ruchu (Access Control Lists) Sekwencyjna lista instrukcji zezwoleń (permit) lub zakazów (deny), które są stosowane w odniesieniu do adresów lub protokołów wyższych warstw Uwierzytelnianie MD5 Wewnątrz TCP (dodatkowy nagłówek) Weryfikacja, że dane urządzenie wysłało pakiet Ustalenie i ręczna konfiguracja hasła
Zabezpieczenie Sesji pomiędzy peer’ami BGP Rys. Uwierzytelnienie MD5
Zabezpieczenie Sesji pomiędzy peer’ami BGP BGP over IPSec (popularna metoda) Definiuje metody szyfrowania i uwierzytelniania nagłówków i zawartości pakietów Ochrona integralności i zabezpieczenie przed podsłuchem oraz podszywaniem się Użycie IKE do zarządzania kluczami TTL security mechanizm TCP (używane przez BGP do transportu) umożliwia użycie każdego host’a w sieci do ataku Ograniczenie z góry wartości TTL Tylko routery z określonego zasięgu mogą wysyłać informacje
Zabezpieczenie Sesji pomiędzy peer’ami BGP Rys. TTL security mechanizm
Test Reverse Path Forward Zabezpieczenie przed podszywaniem się host’ów pod używany w sieci adres IP (np. do ataku DoS) Sprawdzanie adresu źródłowego przy użyciu lokalnej informacji routingowej „czy pakiet z danym adresem źródłowym przyszedł na interfejs, przez który wiedzie ścieżka do tej sieci źródłowej” Problem z przypadku wielu ścieżek (dual-homed)
Test Reverse Path Forward Rys. Reverse path forward
Zintegrowane rozwiązania problemu bezpieczeństwa protokołu BGP- soBGP Pozwala na: walidacje pochodzenia informacji routingowej walidacje istnienia co najmniej jeden ścieżki od źródła Wykorzystuje : bazę danych prawidłowych systemów autonomicznych i ich kluczy bazę prefiksów powiązanych z systemem autonomicznym (źródłowym) skierowany graf opisujący wszystkie znane prawidłowe ścieżki
Zintegrowane rozwiązania problemu bezpieczeństwa protokołu BGP- soBGP Lokalne topologie są wykorzystywane do stworzenia bazy z topologią globalną (statyczny graf sieci – problem z odświeżaniem) Routery soBGP używają bazy z topologią sieci do walidacji otrzymanych ścieżek Certyfikaty przenoszone są w nowym atrybucie SECURITY Do sprawdzania certyfikatów oraz topologii wykorzystany jest mechanizm out-of-band (PKI)
Zintegrowane rozwiązania problemu bezpieczeństwa protokołu BGP- soBGP Rys. Prosty graf zbudowany z lokalnych informacji o topologii
Zintegrowane rozwiązania problemu bezpieczeństwa protokołu BGP – S-BGP Wykorzystuje podpis cyfrowego i powiązane z nim certyfikaty (infrastruktura klucza publicznego) PKI przechowuje informacje o posiadanych prefiksach przez dane AS’y (IANA) PKI wiąże AS’y z organizacjami a organizacje z routerami w ich sieci przez wydanie certyfikatów (uwierzytelnienie samych urządzeń) Wszystkie informacje przekazane w ramach wiadomości BGP (posiadane prefiksy, ASN, wektor ścieżki) są podpisywane przez urządzenie, od którego pochodzą
Zintegrowane rozwiązania problemu bezpieczeństwa protokołu BGP - S-BGP Rys. Rozgłaszanie ścieżki (wiadomość UPDATE) przez S-BGP
Zintegrowane rozwiązania problemu bezpieczeństwa protokołu BGP – IRV Rozwiązanie niezależne od protokołu routingowego Każdy AS posiada serwer IRV Serwer weryfikuje poprawność otrzymanych informacji routingowych poprzez sekwencję zapytań do innych serwerów IRV na ścieżce Każdy serwer IRV zarządza informacjami tylko ze swojego macierzystego ASa
Zintegrowane rozwiązania problemu bezpieczeństwa protokołu BGP – IRV Rys. Zapytanie IRV sprawdzające poprawność otrzymanych informacji routingowych
Infrastruktura laboratorium
Widok podstawowy
Okno weryfikacji
Raport
Scenariusz laboratorium Rys. Prefix Hijacking
Podsumowanie Kontynuacja pracy inżynierskiej Rozszerzenie wiedzy dot. protokołu BGP o zagadnienia związane z jego bezpieczeństwem Przeprowadzenie laboratorium dotyczącego bezpieczeństwa BGP z udziałem studentów na stworzonej platformie laboratoryjnej Wykorzystanie aplikacji do przeprowadzania i automatycznej oceny wykonania laboratorium
Dziękujemy