Wie man weiß, ob der BGP eines Betreibers sicher ist

Das BGP (Border Gateway Protocol) ist eines der grundlegenden Protokolle des Internets, da es für den Austausch von Routing-Informationen zuständig ist zwischen den verschiedenen autonomen Systemen das gibt es in der Welt. Beispielsweise verfügt jeder Internetbetreiber über einen eigenen AS. Um mit dem AS eines anderen Betreibers zu kommunizieren, müssen Sie das BGP-Protokoll verwenden.

Wenn dieses Protokoll nicht richtig konfiguriert ist, kann es zu Unterbrechungen im Internet kommen oder die Verkehrswege können so geändert werden, dass der gesamte Verkehr von einem bestimmten AS durch einen anderen geleitet wird, ohne ihn anzufordern. Cloudflare hat eine kostenloses Tool zur Überprüfung der Sicherheit des BGP-Protokolls einfach und schnell.

cloudflare

BGP-Protokoll: Was es ist, wofür es ist und wie es funktioniert

Das Internet ist in autonome Systeme (AS) unterteilt Das autonome System besteht aus einer Reihe von Routern von demselben Betreiber, der Routen zwischen ihnen austauscht, um von einem Ursprung zu einem Ziel zu gelangen. Es ist wichtig, dass ein Betreiber innerhalb seines AS die Routen perfekt aktualisiert hat, da sonst die Verbindung zu einem bestimmten Ziel unterbrochen werden könnte.

An AS ist wie ein "kleines" Internet Dies ermöglicht dem betreffenden Betreiber nur die Kommunikation. Wenn Sie beispielsweise ein Movistar-Client sind und mit einem anderen Movistar-Client kommunizieren möchten, wird der gesamte Datenverkehr über den AS geleitet und nicht ins Internet geleitet (im Prinzip hängt dies davon ab, wie es ist konfiguriert). Beispielsweise verfügt jeder Betreiber in Spanien über mindestens ein autonomes System (es könnten mehrere AS zur Verfügung stehen).

Innerhalb eines autonomen Systems tauschen die Router der Betreiber die verschiedenen Routen aus, um intern von einem Ursprung zu einem Ziel zu gelangen, ohne andere AS zu verwenden. Die Routing-Informationen werden dynamisch von bereitgestellt Routing-Protokolle internes Gateway (IGP - Interior Gateway Protocol): Dieses Routing befindet sich im AS selbst und verwendet in den allermeisten Fällen bestimmte Protokolle wie OSPF oder IS-IS. Es gibt jedoch auch andere IGP-Protokolle wie RIP oder EIGRP.

Das BGP (Border Gateway Protocol) ist ein extern , extern Gateway-Protokoll oder wird auch als "Grenze" bezeichnet. Dieses Protokoll wird verwendet, um Routen zwischen verschiedenen AS austauschen Diese Aufgabe ist wichtig, damit wir eine Verbindung von einer Quelle zu einem Ziel herstellen können, wenn der Datenverkehr durch verschiedene AS geleitet werden muss.

Wenn unser Betreiber beispielsweise Movistar ist und wir mit jemandem kommunizieren möchten, der über Vodafone verfügt, muss unser Datenverkehr über Movistar AS und auch über Vodafone geleitet werden, um das Ziel korrekt zu erreichen. Während IGP-Protokolle Routen innerhalb des AS gemeinsam nutzen, ist BGP für die gemeinsame Nutzung von Routen zu anderen AS verantwortlich, um die Konnektivität zwischen verschiedenen Betreibern herzustellen.

Wenn wir ein BGP-Protokoll konfigurieren, haben wir sowohl interne Verbindungen (iBGP), die innerhalb des AS hergestellt werden, als auch externe Sitzungen (eBGP), die zwischen verschiedenen AS hergestellt werden.

Einige Merkmale von BGP sind, dass es eine Auswahl von schleifenfreien Routen garantiert und Routingentscheidungen basierend auf den definierten Netzwerkrichtlinien (Verkehrstechnik) trifft, wie z. B. der Anzahl der AS-Sprünge vom Ursprung zum Ziel, obwohl wir die verwenden können LOCAL-PREF-Attribut Um dieses Verhalten zu ändern, können die Routen auch basierend auf anderen Attributen geändert werden, die in BGP vorhanden sind.

Warum ist BGP nicht sicher?

Wenn das BGP-Protokoll nicht richtig konfiguriert ist, kann es zu Angriffen wie dem BGP-Hijack kommen. Wenn Sie durch B gehen müssen, um von Quelle A zu Ziel C zu gelangen, ist es möglich, dass Knoten B Knoten A „austrickst“, damit sein Verkehr durch einen anderen AS geleitet wird, oder dass er Ihnen nicht direkt die richtige Route liefert und Ihnen geht die Konnektivität aus, da Sie in keiner Weise zu C gelangen können, wenn B Ihnen die Informationen nicht zur Verfügung stellt. Der BGP-Hijack funktioniert genau so, indem er die BGP-Sitzung entführt und falsche Informationen an einen AS sendet, damit er niemals seinen „Nachbarn“ erreicht oder auf böswillige Weise ankommt (indem er einen Router eines anderen AS unter unserer Kontrolle durchläuft, z Beispiel).

Damit BGP sicher ist, müssen wir die Weitergabe von Routen auf böswillige oder fehlerhafte Weise schützen (aufgrund von menschlichem Versagen können wir die Konnektivität einem gesamten AS überlassen). Es ist wichtig, dass die verschiedenen BGP-Router die Möglichkeit haben, die empfangenen Informationen auf irgendeine Weise zu validieren, damit sie diese unerwünschten Routen selbst ablehnen und ihr Routing nicht ändern können.

Standardmäßig enthält BGP kein Sicherheitsprotokoll, um dies zu vermeiden. Die Implementierung einer falschen Routenfilterung hängt von jedem AS ab. Wenn wir die Routen verlieren, liegt dies normalerweise an menschlichem Versagen, aber es kann auch an der Handlung eines Cyberkriminellen liegen, wie es in der Vergangenheit geschehen ist. BGP kann sicher sein, wenn alle AS nur legitime Routen bewerben, dh wenn sie „Ihre“ sind.

RPKI zur Rettung

RPKI (Resource Public Key Infrastructure) bietet uns die Lösung. Derzeit gibt es Millionen von Routen im Internet, sodass eine manuelle Überprüfung unmöglich ist. Dieses Sicherheitsframework kann eine Route einem bestimmten autonomen System zuordnen. RPKI verwendet Kryptografie zwischen den verschiedenen BGP-Routern, damit die Knoten die Informationen auf sichere Weise validieren, bevor sie an die Router weitergeleitet werden, um zu 100% sicherzustellen, dass es sich um eine legitime Route handelt. Wir empfehlen Ihnen, mehr darüber zu lesen RPKI im Cloudflare-Blog Hier finden Sie technische Informationen.

So funktioniert das Tool, um festzustellen, ob unser ISP BGP mit RPKI verwendet

Dieses Tool ist dafür verantwortlich zu überprüfen, ob unser Betreiber BGP auf sichere Weise implementiert. Er kündigt eine legitime Cloudflare-Route an, stellt jedoch sicher, dass diese Ankündigung nicht gültig ist. Wenn wir die Website laden können, auf der wir diese Route hosten, bedeutet dies, dass wir sie erreichen können und dass unser ISP sie als gültig akzeptiert hat. Andernfalls können wir nicht darauf zugreifen, da der Betreiber sie als ungültig markiert hat.

Das erste, was wir tun sollten, ist ins Internet gehen ist BGP schon sicher? und klicken Sie auf «Testen Sie Ihren ISP», wie Sie hier sehen können:

Nach einigen Sekunden werden wir über das Ergebnis des von uns durchgeführten Tests informiert. Unser Bediener ist Masmóvil, und es scheint, dass dieser BGP-Schutz nicht implementiert wird:

Gleich unten erhalten wir ein Ranking mit verschiedenen Internetbetreibern auf der Welt und es wird angezeigt, ob BGP richtig konfiguriert ist oder nicht. Beispielsweise verfügen andere Betreiber in Spanien wie Vodafone, Orange oder Movistar nach Cloudflare-Tests ebenfalls nicht über diesen BGP-Schutz. Einige Betreiber (oder Unternehmen mit AS), die ihre Arbeit sehr gut gemacht haben, sind Telia, NTT und auch Cloudflare, obwohl andere wie Cogent oder TATA teilweise sicher sind, da sie Peer-Filterung durchführen.