Sperrung von IPv6-Adressen

16

Ich bin derzeit daran gewöhnt, Tools wie fail2ban zu verwenden, um unerwünschten Datenverkehr von meinen Servern fernzuhalten, indem IPv4-Adressen gesperrt werden: Zu viele fehlerhafte Protokolleinträge pro IP verbieten die IP.

Wenn die Umstellung auf IPv6 jedoch weltweit abgeschlossen ist, funktioniert das Sperren einzelner Adressen wahrscheinlich nicht mehr, da ein "normaler" Botnet-Computer oder Angreifer über ziemlich viele IPv6-Adressen verfügt.

Wenn ich IPv6-Benutzer blockieren möchte, was ist der beste Weg, um dies zu erreichen? Verwenden Sie eine bestimmte IP-Maske oder etwas anderes?

Wie wäre es mit einer "Hochskalierungsheuristik", wenn Sie mehrere einzelne Treffer in IPv6 erhalten und dann den gesamten Block sperren?

Für mich ist es wichtiger, die Bedrohung abzumildern. Wenn einige arme echte Benutzer mit blockierten IPs zum selben Block gehören, ist es ein Problem zwischen diesen Leuten und ihrem ISP, diesen Netzblock freizugeben.

Mikko Ohtamaa
quelle

Antworten:

6

Das Banning per / 128 wird nicht skaliert, wenn für einen Angriff ein Subnetz der Größe / 64 verwendet wird. Sie werden am Ende 2 ^ 64 Einträge in der Tabelle haben, was möglicherweise zu einem Denial-of-Service führen kann.

Endbenutzer erhalten immer eine / 56 pro globaler Adresszuweisungsrichtlinie. Unternehmen erhalten immer eine / 48 pro globale Adresse

Siehe: https://tools.ietf.org/html/rfc6177 / 128 sollte niemals einem Server / Benutzer zugewiesen werden, die Mindestzuweisung an eine andere Entität (Server / VPS-Kunde) sollte a / 64 sein. Die Mindestzuweisung zu einer Site sollte a / 56 sein. Das Ausgeben von / 128s ist grundsätzlich fehlerhaft und sollte als Konfigurationsfehler angesehen werden.

Ich empfehle daher ein vorübergehendes Sperren per / 64, da ein typischer Endbenutzer nur Zugriff auf 2 ^ 8 / 64s hat und nicht zu viele Einträge in die Sperrtabelle aufgenommen werden sollten.

Wilco Baan Hofman
quelle
1
Das Blockieren einer gesamten /64IP- Adresse aufgrund einer problematischen IP-Adresse führt dazu, dass legitime Benutzer blockiert werden.
Kasperd
1
Ja, aber nur, wenn sie sich auf derselben Site befinden. Ja, ein Benutzer-VLAN kann in einem Gebäude blockiert werden. Oder alle VMs eines Kunden, wenn sich eine der VMs in einer Cloud schlecht verhält. Es ist in vielerlei Hinsicht problematisch, einen / 64 mehreren Benutzern für Server zuzuweisen. Die Denial-of-Service-Angriffsfläche von Blocking per / 64 ist jedoch viel geringer als mit / 128.
Wilco Baan Hofman
10

Jede Antwort auf Ihre Frage erfordert ein gewisses Maß an Vermutung. Es gibt nur wenige IPv6-Bereitstellungen, von denen wir einfach noch nicht wissen, wie genau das Bedrohungsszenario aussehen wird.

Die große Anzahl von IPv6-Adressen führt zu mehreren Änderungen des zu berücksichtigenden Bedrohungsszenarios.

Zunächst ist es mit IPv4 für einen Angreifer durchaus möglich, die Standard-Portnummer für alle 3700 Millionen routingfähigen IPv4-Adressen nach verwundbaren Diensten zu durchsuchen. Solche ungezielten Angriffe sind mit IPv6 nicht möglich. Die Angriffe, die Sie immer noch sehen, müssen gezielter sein. Ob dies bedeutet, dass wir viel an unserer Behandlung der Angriffe ändern müssen, bleibt abzuwarten.

Der Hauptzweck des Sperrens von IP-Adressen auf der Grundlage von Protokollnachrichten besteht darin, das Rauschen in den Protokollen zu verringern und die Systemlast in gewissem Maße zu verringern. Es sollte nicht als Schutz vor Exploits dienen. Ein Angreifer, der eine Schwäche kennt, würde sich vor dem Einsetzen des Verbots im Innern befinden. Um sich davor zu schützen, müssen Sie Schwachstellen ausbessern - so wie Sie es immer getan haben.

Das Sperren einzelner IPv6-Adressen kann ausreichen, um das Rauschen in Protokollen zu verringern. Das ist aber keine Selbstverständlichkeit. Es ist nicht unwahrscheinlich, dass ein Angreifer für jede Verbindung eine neue IP-Adresse aus dem verfügbaren Bereich verwendet. Wenn sich Angreifer so verhalten, ist das Sperren einzelner IPv6-Adressen nicht nur ineffektiv, sondern Sie können sogar versehentlich einen DoS-Angriff auf sich selbst auslösen, indem Sie Ihren gesamten Speicher für Firewall-Regeln verwenden.

Sie können die Länge des Präfixes, das jedem einzelnen Angreifer zur Verfügung steht, nicht kennen. Das Blockieren eines zu kurzen Präfixes führt zu einem DoS-Angriff, der auch legitime Benutzer erfasst. Das Blockieren eines zu langen Präfixes ist unwirksam. Insbesondere Brute-Force-Versuche mit Passwörtern werden wahrscheinlich eine große Anzahl von Client-IPv6-Adressen verwenden.

Um gegen Angreifer wirksam zu sein, die bei jeder Anforderung die IPv6-Adresse wechseln, und um die Speichernutzung gering zu halten, müssen Sie Bereiche blockieren. Da Sie die Präfixlängen nicht im Voraus kennen, müssen Sie die Präfixlängen dynamisch anpassen.

Es ist bereits jetzt möglich, Heuristiken zu entwickeln. Wie gut sie funktionieren, wissen wir noch nicht.

Eine Heuristik wäre, für jede Präfixlänge einen Schwellenwert für die Anzahl der IPs zu definieren, die zum Blockieren eines Präfixes dieser Länge erforderlich sind. Und das Blockieren sollte nur in einer bestimmten Länge erfolgen, wenn ein längeres Präfix nicht ausreicht. Mit anderen Worten, Sie benötigen in jeder der beiden Hälften genügend einzeln blockierte IPs, um eine Blockierung tatsächlich auszulösen.

Zum Beispiel könnte man entscheiden, dass es 100 blockierte IPs in jeder der beiden / 49s geben muss, aus denen die / 48 besteht, um eine / 48 zu blockieren. Je länger das Präfix ist, desto geringer muss die Anzahl der IPs sein, die zum Blockieren erforderlich sind. In jedem Fall müssen sie jedoch auf beide Hälften verteilt werden.

Kasperd
quelle
1
Fast 5 Jahre später, eine erneute Überprüfung von IPv6 und Fail2ban?
Paul
2

Sie sollten sich an das Sperren einzelner Adressen halten.

Es ist nicht definiert, wie viele Adressen Endbenutzern zugewiesen werden. Einige ISPs geben möglicherweise ein ganzes Subnetz und andere nur eine Adresse an.

Pierre-Yves Gillier
quelle
Gleiche Antwort für Ihre zweite Frage. Da Sie nicht wissen können, welches Netzwerk auf der anderen Seite definiert ist, können Sie möglicherweise viele Benutzer blockieren.
Pierre-Yves Gillier