Co to jest BGP hijacking (przejęcie prefiksu)?
BGP hijacking to bezprawne ogłoszenie cudzego prefiksu IP w BGP, które przekierowuje ruch. Poznaj realne przykłady oraz ochronę przez RPKI ROV i filtry IRR.
Ostatnia aktualizacja:
BGP hijacking (przejęcie prefiksu) to sytuacja, w której system autonomiczny ogłasza w protokole BGP prefiks IP, do którego nie ma uprawnień. W efekcie część globalnego ruchu kierowanego do tego zakresu adresów trafia do niewłaściwej sieci. Klasyczny BGP nie weryfikuje, kto faktycznie jest właścicielem adresów, więc każdy ogłoszony prefiks jest domyślnie przyjmowany na zaufanie. Przejęcie bywa skutkiem pomyłki konfiguracyjnej (literówka w numerze AS lub masce) albo celowego ataku służącego do podsłuchu, blackholingu lub przechwytywania ruchu.
Jak działa przejęcie prefiksu
Atakujący ogłasza cudzy prefiks samodzielnie albo ogłasza prefiks bardziej szczegółowy (z dłuższą maską) niż prawowity właściciel. Routery wybierają trasy zgodnie z regułą najdłuższego dopasowania (longest prefix match), więc ogłoszenie /24 zawsze wygra z prawowitym /22, niezależnie od długości ścieżki AS. Dlatego deagregacja prefiksu jest tak skuteczną techniką przejęcia. Typowych wariantów jest kilka.
- Przejęcie pochodzenia (origin hijack): obcy AS ogłasza się jako źródło prefiksu, do którego nie ma praw.
- Przejęcie bardziej szczegółowe: ogłoszenie dłuższej maski (np. /24 wobec /22), które wygrywa przez longest prefix match.
- Manipulacja ścieżką (path manipulation): fałszowanie atrybutu AS_PATH, by ogłoszenie wyglądało na legalne.
- Przekierowanie z podsłuchem (man-in-the-middle): ruch jest przechwytywany, a następnie odsyłany do celu, by atak pozostał niewidoczny.
Realne przykłady
W lutym 2008 roku Pakistan Telecom (AS17557), próbując zablokować YouTube lokalnie, ogłosił prefiks 208.65.153.0/24 i przez wyciek do upstreamu PCCW unieruchomił serwis globalnie na około dwie godziny. W kwietniu 2018 roku atakujący przejęli prefiksy serwerów DNS Amazon Route 53 przez AS10297 (eNet), kierując ruch użytkowników MyEtherWallet na fałszywy serwer i kradnąc kryptowaluty. Wcześniejszy incydent z 1997 roku, znany jako AS7007, pokazał, jak deagregacja i wyciek całej tablicy mogą zdestabilizować routing w skali globalnej. We wszystkich tych zdarzeniach zabrakło weryfikacji pochodzenia ogłoszeń.
Jak RPKI ROV i filtry IRR ograniczają ryzyko
Dwie uzupełniające się warstwy obrony utrudniają przejęcie. RPKI z mechanizmem Route Origin Validation pozwala właścicielowi prefiksu opublikować podpisany rekord ROA wskazujący prawidłowy AS pochodzenia i maksymalną długość maski. Routery oznaczają trasy jako valid, invalid lub unknown i odrzucają invalid. Filtrowanie oparte na IRR buduje listy prefiksów z obiektów route i as-set w rejestrach (RADb, RIPE, ARIN), dzięki czemu sąsiad przyjmuje tylko zadeklarowane zakresy. Obie metody to fundamenty inicjatywy MANRS.
RPKI ROV chroni pochodzenie prefiksu, ale nie całą ścieżkę AS, dlatego filtry IRR oraz ASPA pozostają potrzebne jako kolejne warstwy. W praktyce operator powinien jednocześnie publikować poprawne rekordy ROA dla własnych zasobów, odrzucać trasy invalid od sąsiadów oraz utrzymywać aktualne obiekty IRR.
BGP hijacking a AS202520 SkyPass
AS202520 SkyPass stosuje walidację RPKI ROV i odrzuca trasy invalid na sesjach z klientami i partnerami, a filtrowanie prefiksów opiera na obiektach IRR, dzięki czemu Twoje ogłoszenia nie zostaną przypadkowo ani złośliwie przesłonięte. Klientom IP tranzytu i peeringu pomagamy poprawnie publikować rekordy ROA oraz utrzymywać as-set, a peering w THINX, TPIX, WRIX i 1-IX oraz węzły w Warszawie i Wrocławiu skracają drogę ruchu. To, jak Twoje prefiksy są widziane w naszej sieci, sprawdzisz na bieżąco w publicznym looking glassie.
Najczęstsze pytania
Czym różni się BGP hijacking od route leak?
Przejęcie to ogłoszenie prefiksu bez uprawnień (fałszywe pochodzenie lub dłuższa maska). Route leak to przekazanie poprawnych tras niezgodnie z polityką relacji (np. tranzyt między dwoma upstreamami), zwykle bez podszywania się pod właściciela.
Czy RPKI w pełni eliminuje przejęcia prefiksów?
Nie. RPKI ROV weryfikuje wyłącznie pochodzenie prefiksu, więc blokuje proste origin hijacki i deagregację poza maxLength, ale nie chroni całej ścieżki AS. Dla pełnej ochrony łączy się je z filtrami IRR oraz ASPA.
Dlaczego ogłoszenie /24 wygrywa z legalnym /22?
Routery stosują regułę najdłuższego dopasowania (longest prefix match), niezależnie od długości ścieżki AS. Bardziej szczegółowy prefiks ma pierwszeństwo, dlatego deagregacja jest skuteczną metodą przejęcia ruchu.
Jak sprawdzić, czy mój prefiks został przejęty?
Monitoruj widoczność prefiksów w looking glassach i kolektorach (RIPE RIS, RouteViews) oraz korzystaj z systemów alertów, które wykrywają nieoczekiwany AS pochodzenia lub nowe, bardziej szczegółowe ogłoszenia.
