Open Source im professionellen Einsatz

Newsletter abonnieren
Seite durchsuchen

HEFTARCHIV | NEWS | E-BIBLIOTHEK | VIDEO | BLOGS | WHITEPAPER | EVENTS | ACADEMY | ABO | SHOP

user friendly

  Home  »  Heft & Abo  »  Heftarchiv  »  2007  »  04  »  Hausverbot  

RSS-Feed der aktuellen News von Linux-Magazin Online Folgen Sie Linux-Magazin Online auf Twitter
Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark

© Yanik Chauvin, Fotolia

Das IPtables-Modul Recent blockiert hartnäckige

Hausverbot

von Michael Schwartzkopff
Erschienen im Linux-Magazin 2007/04

Fühlt sich ein Intrusion-Prevention-System attackiert, dann erteilt es dem Störer striktes Lokalverbot und lässt ihn an keinen Dienst mehr ran. Alle anderen Benutzer bleiben von der Blockade verschont. Mit dem Recent-Modul von Netfilter ist dieses Verhalten bestens steuerbar.

Firewalls sind weit mehr als reine Filterlisten-Verwalter. Stateful Inspection gehört längst zur Pflicht. In der Kür passen sie dynamisch ihre Regelsätze an, um enttarnte Angreifer von allen Zugängen fernzuhalten. Das gelingt zum Beispiel mit einer Kombination aus dem Intrusion-Detection-System Snort [3] und dem Recent-Modul [1] für Netfilter [2]. Snort bemerkt Angriffe und Recent verwaltet dynamisch eine Liste mit deren IP-Adressen. Der Clou: Die Liste darf in Firewallregeln vorkommen.

Oft ist Snort gar nicht nötig. Wenn bereits eine Firewallregel Angriffe detektiert, kann sie auch selber Einträge in der Recent-Liste ergänzen. Die Option »--set« des Recent-Moduls trägt die Source-Adresse des aktuell untersuchten Pakets in die Liste ein. Mit »--rcheck« prüft Netfilter, ob die Absenderadresse des untersuchten Pakets bereits in der Liste steht. Zusätzlich kann der Admin mit »--seconds« angeben, wie lange zurück der letzte Eintrag in der Liste liegen darf. Eine Prüfung mit der Option »--update« funktioniert so wie »--rcheck«, setzt aber den Zeitstempel neu.

Das Beispiel in Listing 1 zeigt das Recent-Modul im Einsatz. Zeile 1 sorgt dafür, dass Pakete einer bestehenden Verbindung weiterhin durchkommen (Stateful Inspection). Zeile 2 prüft, ob das Recent-Modul den Absender schon kennt, und blockiert ihn in diesem Fall. Danach folgen in einem vollständigen Skript alle Regeln für die erlaubte Kommunikation.

Listing 1:
Firewallregeln

01 iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
02 iptables -A FORWARD -m recent --update -j DROP
03 [andere Regeln]
04 iptables -A FORWARD -i Extern-Interface -p tcp --dport 135 -m recent --set -j DROP
05 iptables -A FORWARD -j DROP

Blockadehaltung

Das Kommando in Zeile 4 füllt die Recent-Liste mit den IP-Adressen aller Angreifer, die sich von außen (externes Interface) an Port 135/TCP versuchen. Den Port verwenden Würmer, um dank einer DCOM-RPC-Schwachstelle in Windows-Systeme einzudringen. Die letzte Zeile bestimmt als Default-Policy »DROP«.

Sollte sich derselbe Rechner innerhalb des Standard-Timeout von 60 Sekunden noch einmal melden, blockt ihn die Firewall, egal auf welchen Port und Zielrechner er diesmal zugreift (Zeile 2). Zugleich setzt das Recent-Modul den Zeitstempel neu (wegen der Option »--update«) und die 60 Sekunden beginnen von vorn. Das Ablaufdiagramm in Abbildung 1 zeigt die Schritte der Pakete durch das Firewallskript.


Abbildung 1: Bei neuen Paketen prüft das Recent-Modul, ob es den Absender kennt. Wenn ja, verwirft es das Paket sofort. Wenn nein, folgen die restlichen Regeln. Erkennt das Skript am Ende eine verbotene Kommunikation, sperrt es künftig den Täter.

Tiefer im Modul

Das Modul kann auch mehrere dynamische Listen verwalten, zum Beispiel eine für den Mailserver und eine für die restlichen Systeme. Den Namen der jeweiligen Liste gibt das Firewallskript über die Option »--name Bezeichnung« an. Ohne diesen Parameter verwendet das Modul die Liste »DEFAULT«.

Userspace-Tools erreichen IP-Listen über das Proc-Verzeichnis »/proc/net/ipt_recent/Liste«. Das Recent-Modul hinterlegt hier die Adresse und die Zeitstempel der erkannten Pakete. Neue Einträge darf auch ein Userspace-Skript besorgen:

echo Adresse > /proc/net/ipt_recent/DEFAULT

Das ist nützlich, um die Kommunikationen mit einer bestimmten IP-Adresse schnell zu unterbinden. Ebenso gelingt es, Nummern aus der Liste zu löschen:

echo -Adresse > /proc/net/ipt_recent/DEFAULT

Üblicherweise verwaltet Recent nur 100 Einträge pro Liste. Kommen neue hinzu, verdrängen sie ältere Felder, auch wenn die Zeitspanne noch gar nicht abgelaufen ist. Das gerät bei schnellen Internetanbindungen zum Problem, lässt sich aber leicht umgehen: »modprobe ipt_recent ip_list_tot=1000« erhöht beim Initialisieren des Moduls sein Fassungsvermögen auf 1000 Adressen.

Sie können diesen Artikel als PDF für 99 Cent kaufen. Klicken Sie dazu einfach auf eine der beiden Bezahloptionen Paypal oder ClickandBuy.


Diesen Artikel druckenDiesen Artikel weiterempfehlen Diesen Artikel kommentieren Newsletter abonnieren
Share/Bookmark
Ähnliche Artikel
Rettungstunnel Hotel-Internet mit simplen Tunneltricks geknackt
Regelmeister Neue Features der Firewall-Oberfläche FW-Builder
Wehrhafte Mediziner Große VPNs einfach verwalten mit OpenVPN und Skripten
Unbestechlicher Türsteher Aus dem Alltag eines Sysadmin: Fail2ban
Übersichtliche Verkehrsregelung Bandbreitenkontrolle und -Simulation mit TCng
Blocker-Szene Vorgestellt: Die neue Version 3 des Firewall Builder
Whitepaper
Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele (Folge 2)

Der zweite Teil des Open Source Datenintegration in der Praxis: Fallstudien und Anwendungsbeispiele White Papers beleuchtet anhand weiterer ausgewählter Case Studies die Implementierung von Open Source Datenintegration in der Praxis und benennt die daraus resultierenden Vorteile.

Download PDF (Registrierung erforderlich)
Usage Landscape Enterprise Open Source Data Integration

Die Nachfrage nach Datenintegrationslösungen für Unternehmen ist zunehmend gestiegen und vor allem das Interesse an Open Source Technologien wird immer größer. Doch wie und von wem werden Open Source Datenintegrationslösungen genutzt und welches Nutzungsverhalten lässt sich daraus ableiten? Das vorliegende White Paper präsentiert die Erfahrungswerte von über 1000 Open Source Nutzern und liefert fundierte Antworten auf diese Fragen.

Download PDF (Registrierung erforderlich)
Kommentare (0)