31
LAYER-2-SECURITY 64. DFN-Betriebstagung, Berlin 02.03.2016

Layer-2 Sicherheit mit Packet Tracer · LAYER-2-SECURITY 64. DFN-Betriebstagung, Berlin 02.03.2016. Darstellung von Layer -2-Angriffsmöglichkeiten, die Gefahren, die dadurch entstehen

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

LAYER-2-SECURITY

64. DFN-Betriebstagung, Berlin 02.03.2016

Darstellung von Layer-2-Angriffsmöglichkeiten, die Gefahren, die dadurch entstehen und Lösungsvorschläge.

Ziel

Sicherheit und Fortschritt

Manchmal bedeutet Neuartiges etwas besseres und sicheres

Manchmal bedeutet Erfahrung etwas besseres und sicheres

Aktivitäten im Internet

Was wir im Internet tun

Wie wir angegriffen

werden

Angriffsmöglichkeiten

STP-Root schützen

(Spanning-Tree Protocol)

Manipulation von STP-Parametern

verhindern

Broadcaststürme unterbinden

MAC-Adresstabellen-

Überläufe abwehren

DHCP-Spoofing und –Starvation

verhindern

Das Puzzle

Port-Security

STP-Root schützen

Parameter zur Netzwerksteuerung werden meistens unverschlüsselt übertragen, um die Performance nicht zu schmälern -> daraus resultiert ein Sicherheitsrisiko

Nur für PPP auf Layer 2 im WAN-Bereich stehen mit PAP und CHAP Authentifizierungsverfahren zur Verfügung

Gefahr

Schritt 1: Ein Angreifer platziert einen Switch in das Netzwerk über einen Port oder eine freie Netzwerkdose (Hörsaal, Seminarraum).

Schritt 2: Der Switch wird als Trunk konfiguriert und mit einer hohen Priorität (niedriger Wert der Bridge-ID, z.B. 0) versehen – wenn kein Schutz installiert ist und die Ports als Access-Ports konfiguriert sind.

Schritt 3: Der „Rogue-Switch“ wird Root-Bridge

Der Datenverkehr läuft über die Root-Bridge und kann durch Wiresharkleicht mitgeschnitten werden.

Lösung

Um zu verhindern, dass der Rogue-Switch zur Root wird, wird ein Schutzmechanismus auf den Trunk-Interfaces der Root-Bridge implementiert. Aus Architekturgründen werden diese Ports niemals zu ROOT-Ports - Root Guard (d.h. wechseln nicht den Status von Designatedzu Root)

Root Guard ist ein von Cisco entwickelter Sicherheitsmechanismus für das Spanning Tree Protocol (STP).

Versucht ein Gerät hinter einem Port mit aktivem Root Guard (die aktuelle Root-Bridge) zur Root Bridge zu werden, deaktiviert der Switch diesen Port.

Damit lassen sich Angriffe auf Spanning Tree wirksam abwehren.

Manipulation von STP-Parametern

STP verfügt über keinerlei Sicherheitsmechanismen. Jede Station kann ohne Authentifikation BPDUs erzeugen und ins Netz senden.

Switches werten diese BPDUs aus.

Gefahr

Grundsätzlich sendet und empfängt jeder Switchport BPDUs, sofern er sich im Status Forwarding/Learning/Listening befindet.

Diese Eigenschaft bietet Angreifern die Möglichkeit, die Topologie zu erkennen, auszulesen und sie mit gefälschten BPDUs gezielt zu verändern.

Lösung

Das Abschalten von STP ist keine gute Idee. Eine Schleife auf Layer 2 löst dann sofort einen Broadcast Storm aus.

BPDU Guard wird auf Access Ports aktiviert, d.h. Geräte hinter einem mit Portfast konfiguriertem Port sollen nicht in der Lage sein, die STP-Topologie zu beeinflussen

Empfängt ein Access-Port - auf dem BPDU Guard aktiviert ist - eine BPDU, wird dieser Port deaktiviert.

BPDU Guard sollte zusammen mit PortFast genutzt werden Wird in Folge von BPDU Guard der Port deaktiviert, wechselt der

Interface-Status in ERR-Disabled. Die Folge ist ein Recovery, dass bis zu 5 Min dauern kann.

Beispiel

Switch A Switch B

Switch C

Switch D

Switch A ist die Root-Brigde mit Priorität 8192Switch B ist die Backup-Root mit Priorität 16384Switch C ist ein Access-Switch mit Portfast-Konfiguration zu Switch D

Sind alle weiteren Parameter als Default vereinbart, befindet sich der Port zu Switch B im Blocking-Status

Beispiel cont.

Switch A Switch B

Switch C

Switch D

Versucht Switch D eine Teilnahme an STPmit einer Priorität von 0, um Root-Bridgezu werden, verhindert BPDU Guard aufSwitch C dieses.

Broadcaststürme unterbinden

Broadcaststürme können leicht ganze Netzwerke zum Ausfall durch Überlastung bringen. Sie breiten sich innerhalb einer Broadcast Domain des Layer 2 aus.

Ein Broadcaststurm bedeutet, dass Broadcasts und Multicasts auf alle Switch-Ports weitergeleitet werden mit Ausnahme desjenigen Ports, von dem der Datenverkehr stammt. Dadurch wird eine Schleife erzeugt, und die Switches leiten die Broadcasts des jeweils anderen Switches weiter, so dass es innerhalb kürzester Zeit zur Überlastung des Netzwerkes kommt.

Gefahr

Der typische Verursacher für einen Broadcaststurm ist der kleine Switch im Büro oder auf dem Besprechungstisch, der versehentlich eine Schleife (Loop) erzeugt, weil er nur temporär genutzt/angeschlossen werden soll.

Die Ursache liegt in der redundanten Verkabelung von zwei oder mehr Uplinks zwischen zwei Switches.

Lösung

Das Feature Storm Control bietet die Möglichkeit, auf Broadcast-, Multicast- und Unicast-Storms zu reagieren.

Pro Trunk-Interface können Schwellwerte für die Erkennung eines Storms in Bit pro Sekunde, Paketen pro Sekunde oder Prozent der Bandbreite angegeben werden.

Beispiel

interface FastEthernet0/1 storm-control broadcast level pps 100 storm-control multicast level pps 500 storm-control action shutdownHier erfolgt die Angabe in Paketen pro Sekunde pro Trunk-Interface

MAC-Adresstabellenüberlauf

Bei dieser Angriffsform versucht der Angreifer den Switch mit gefälschten Source-MAC-Adressen zu überhäufen.

Da die MAC-Adresstabelle eine endliche Ressource ist, führt die Menge der Frames zu einem Tabellenüberlauf.

In Folge dieses Überlaufs geht der Switch in einen „fail-open“ Modus über. Er handelt dann als HUB und flutet jeden neu empfangenen Frame auf alle Interfaces.

Gefahr

Der Angreifer kann nun den „normalen“ Datenverkehr mitschneiden, da er alle Frames zwischen den Opfer-Hosts sieht.

Diese Möglichkeit schafft ihm Einblick in die Kommunikation der beteiligten Rechner und damit Einsichten über das Netz.

Lösung

Port-Security als Merkmal der Schicht 2 begrenzt die Zahl möglicher MAC-Adressen auf einem Port.

Bei Überschreiten dieser Maximalzahl kann eine abgestufte Entscheidung bezüglich der Portverfügbarkeit getroffen werden.

Beispiel: beträgt die pro Port zugelassenen Zahl von MAC-Adressen 3, so löst ein vierter Frame mit unbekannter MAC-Adresse eine administrativ konfigurierbare Entscheidung aus

Diese Entscheidung ist nur suboptimal. Insbesondere bei Verwendung virtueller Maschinen, bei der mehrere VMs einen physikalischen Port benutzen, ist diese Maßnahme eher unkomfortabel

Die Anzahl der MAC-Adressen kann auf eins begrenzt werden. Diese Einschränkung kann sinnvoll sein, wenn z.B. ein Drucker angebunden wird

Beispiel

switchport port-securityDieser Befehl ist auf Accessports beschränkt!

switchport port-security maximum 3Beschränkt die Anzahl maximal zulässiger MAC-Adressen

switchport port-security violation {shutdown, restrict, protect}Aktion bei Überschreiten der maximalen Zahl. Default: shutdown

Die allgemein Konfiguration erlaubt ein dynamisches Lernen der MAC-Adressen (sticky) oder eine manuelle Vorkonfiguration.

DHCP-Spoofing

Spoofing Der Angreifer versucht Antworten eines zulässigen DHCP-Servers zu

fälschen. Das falsche DHCP-Device antwortet auf eine DHCP-Anfrage eines

Clients schneller als der gültige DHCP-Server. Der DHCP Server antwortet auf die Client-Anfrage mit der

Basiskonfiguration: IP-Adresse, Subnetzmaske, Default-Gateway und DNS-Server

Die Antwort enthält des Angreifers enthält seine IP-Adresse als Default-Gateway oder eine gefälschte Adresse des DNS-Servers.

Gefahr

Spoofing Im Falle des Default-Gateways werden die Pakete des Clients an den

Angreifer weitergeleitet, der diese dann dem Empfänger zustellt –Man-in-the-Middle-Attacke

DHCP-Spoofing

3. DHCP-Response

Client

DHCP-Server

DHCP-Angreifer

2. Gefälschte DHCP-Response

Lösung

Zur Verhinderung dieser Angriffsform wird DHCP-Snooping verwendet. Snooping verwendet das Prinzip vertrauenswürdiger Ports. Nur vertrauenswürdige Ports können die Quelle/Erzeuger von DHCP-

Nachrichten sein. Nicht vertrauenswürdige Ports können nur antworten. DHCP-Server sind mit einem vertrauenswürdigen Port verbunden. Versucht ein falscher DHCP-Server mit einem nicht vertrauenswürdigen

Port eine DHCP-Nachricht zu senden, wird der Port deaktiviert. Nicht vertrauenswürdige Ports sind alle diejenigen, die nicht explizit als

vertrauenswürdig konfiguriert wurden.

DHCP-Snooping

Client

DHCP-Server

DHCP-Angreifer

nicht ver-trauenswürdig

vertrauenswürdig

Port wirddeaktiviert

Beispiel

Schritt 1: ip dhcp snooping Im globalen Konfigurationsmodus

Schritt 2: ip dhcp snooping vlan number # Aktiviert DHCP-Snooping für ein spezifisches VLAN im globalen Konfigurationsmode

Schritt 3: interface fa0/1 ip dhcp snooping trust

Definiert Ports im Interfacemodus als vertrauenswürdig. Dazu zählen alle Uplinkports in Richtung DHCP-Server

Schritt 4: show ip dhcp snooping Zeigt an, für welches Interface DHCP-Snooping aktiviert ist

DHCP-Starvation

Angriffsart Der Angreifer fordert kontinuierlich IP-Adressen an und ändert

gleichzeitig permanent seine Source-MAC-Adresse, d.h. verlangt eine IP-Adresse für immer weitere Endnutzer.

Gefahr Im Erfolgsfall werden alle verfügbaren IP-Adressen vergeben, so dass

die ordnungsgemäßen Nutzer leer ausgehen Lösung

Port-Security an den Switch-Ports aktivieren

Problem

Die angebotenen Lösungen skizzieren allerdings auch ein Problem. Alle Vorschläge besitzen proprietären Charakter und lassen folglich eine Allgemeingültigkeit vermissen.

Vielen Dank!