Menü
Ein Beitrag von Adacor

BGP Manipulation leicht gemacht

BGP Manipulation leicht gemachtMittels FlowSpec RFC5575 ist es möglich, IP-Routen so zu manipulieren, dass diese als Trafficfilter analog zu Access Control Lists fungieren.

Wie die Manipulation von IP-Routen funktioniert, zeige ich euch anhand eines kleinen Beispiels.

In diesem Beispiel nutzen wir wieder Exabgp, da wir hier eine komplette Unterstützung aller bereits standardisierten FlowSpec-Features haben.

Nach Etablierung von BGP-Sessions zwischen dem oder den Router(n) an dem die Pakete eintreffen, die wir manipulieren wollen, können wir nun Flowspec Routen setzen.

Diese Routen landen nicht in der „normalen“ Routing Tabelle des Routers, sondern in einer für FlowSpec reservierten Tabelle.

In unserem Scenario kommt JunOS von Juniper Networks zum Einsatz, daher heißt die Routing Tabelle inetflow.0.

Ablauf einer simplen exabgp Konfiguration

group examplerouters {

local-as 65500;

peer-as 65500;

router-id 192.0.2.1;

local-address 192.0.2.1;

hold-time 10;

flow {

route example-1 {

match {

source 198.51.100.0/24;

destination 203.0.113.0/30;

destination-port  =80;

protocol tcp;

}

then {

discard;

}

}

}

neighbor 192.0.2.2 {

description „examplerouter01“;

graceful-restart 5;

family {

inet4 flow;

}

}

neighbor 192.0.2.3 {

description „examplerouter02“;

graceful-restart 5;

family {

inet4 flow;

}

}

process  tcp-server{

run /etc/exabgp/tcp-server;

}

Die Gruppe „examplerouters“ beinhaltet zwei Router (examplerouter 01/02) und tauscht Flow Routen untereinander aus (family inet4 flow).

In dem durch Klammern inkludierten Teil von „flow“ setzen wir nun unseren Filter example-1. Dieser matched auf verschiedene Parameter:

Wenn Quell IP Adressen von 198.51.100.0-255 auf die Zieladressen von 203.113.0-3 via TCP auf Port 80 zugreifen möchten, dann soll der Router dieses Paket verwerfen.

Als Ergebnis hat man auf dem Router dann folgenden Eintrag in der Routingtabelle inetflow.0:

203.0.113.0/30,198.51.100.0/24,proto=6,dstport=80/term:2 (1 entry, 1 announced)

*BGP    Preference: 170/-101

Next hop type: Fictitious

Address: 0x8e6f244

Next-hop reference count: 2

State: <Active Int Ext>

Local AS: 65500 Peer AS: 65550

Age: 3d 8:06:19

Task: BGP_65500.192.0.2.1+47940

Announcement bits (1): 0-Flow

AS path: I

AS path: Recorded

Communities: traffic-rate:0:0

Accepted

Localpref: 100

Router ID: 192.0.2.1

Um nun während eines Angriffes zu verifizieren, dass der Filter auch greift schauen wir uns die vom Router geführte Statistik dazu an:

show firewall filter __flowspec_default_inet__

Filter: __flowspec_default_inet__

Counters:

Name                                                                                                                 Bytes              Packets

203.0.113.0/30,198.51.100.0/24,proto=6,dstport=80                    60673                    1216

Wir haben in diesem Beispiel bereits 1.216 Pakete mit 60.673 Bytes gefiltert.

Dasselbe gilt für unterschiedliche ICMP Pakettypen, Pakete mit bestimmten DSCP Feldern etc…

Durch die im Artikel „Anycast Leichtgemacht“ genannten Checkscripte kann man selbstverständlich auch automatisiert auf Angriffe reagieren. Natürlich nur, wenn man so einen Automatismus möchte.

Hierzu muss ein entsprechender Sensor mitbekommen, dass ein Angriff läuft. Dieser Sensor misst die Art des Angriffs und von welchen Quell-IPs auf welche Ziel-IPs der Angriff stattfindet. Mit diesen Information kann man nun der API von ExaBGP mitteilen, entsprechende FlowSpec Rules zu senden.

Image

So werden Überraschungen im Projektverlauf fast zum Vergnügen!

Hier erfahren Sie, wie Sie Dank spezieller Hosting-Lösungen Kontrolle und Flexibilität perfekt kombinieren können.

Jetzt informieren

, , ,


Weitere Artikel zum Thema lesen

Was ist CoroSync?

Hosting, IT-News

Was ist CoroSync?

Die CoroSync Cluster Engine ist das Herzstück innerhalb eines Linux High-Availability-Clusters (Linux-HA), welche in Verbindung mit weiteren Komponenten für die Überwachung aller angeschlossenen Knoten...

weiter lesen

Achtung Ransomware – die wichtigsten Verhaltensmaßnahmen

IT Security

Achtung Ransomware – die wichtigsten Verhaltensmaßnahmen

Unsere Tipps wie man sich vor den Trojanern schützen kann.

weiter lesen

Das Vier-Augen-Prinzip der Programmierung im Erfahrungsbericht

IT-News

Das Vier-Augen-Prinzip der Programmierung im Erfahrungsbericht

Der Artikel Pair Programming unseres Entwickers Patrick Klös erschien zuerst bei Heise.

weiter lesen


Neueste Nachrichten von Adacor

E-Commerce Hosting

Hosting

Neue Hosting-Lösung für E-Commerce

Adacor hat seine langjährige Erfahrung mit Produkten und Services zur Umsetzung von E-Commerce-Projekten jetzt erstmalig in einer Solution zusammengefasst.

weiter lesen

OpenStack Cloud Module

Cloud

Von VMware zur Self Managed Cloud – OpenStack auf dem Prüfstand

Was leistet die Open-Source-Software OpenStack? Wo liegen ihre Grenzen?

weiter lesen

IT Security

EU-DSGVO stellt hohe Ansprüche an Datenschutz

Geforderte Maßnahmen der EU-DSGVO beginnen bei der Datenportabilität d.h. Wie Unternehmen informieren müssen und umfassen den Datenschutz durch Technikgestaltung.

weiter lesen

Diese Website verwendet Cookies. Mit der weiteren Nutzung der Website stimmen Sie unserer Datenschutzerklärung zu.
Für weitere Informationen klicken Sie bitte hier.