Open Source im professionellen Einsatz
Linux-Magazin 02/2012

Aus dem Alltag eines Sysadmin: Portsentry

Ten Years After

Charly ist seit genau zehn Jahren Autor dieser Kolumne. Für seine Jubiläumsausgabe legt er sich einen empfindlichen Detektor zurecht, der die kosmische Hintergrundstrahlung des Internets misst: Portscans.

562

Wer Ports auf fremden Rechnern abtastet, gilt nach vorherrschender Meinung nicht als Angreifer. Allerdings geht einer ernst gemeinten Attacke fast immer ein Portscan voraus. Mütter der Porzellankiste reagieren auf Portscans deshalb vorsorglich ("proaktiv" auf Consultingdeutsch), indem sie von der IP-Adresse, die den Portscan ausgeführt hat, für eine Zeit lang keine weiteren Verbindungen annehmen. Das dazu passende Werkzeug heißt Portsentry http://1 und gehört zum Umfang der meisten Distributionen. Der Daemon erkennt und loggt Portscans und führt daraufhin Kommandos aus.

In der Datei »/etc/default/portsentry« stelle ich den Erkennungsmodus ein:

TCP_MODE="tcp"
UDP_MODE="udp"

Wenn ich nicht will, dass Portsentry UDP-Ports überwacht, lösche ich die zweite Zeile. Ersetze ich »tcp« und »udp« durch »stcp« und »sudp« , reagiert das Tool sensibler und erkennt auch Stealth-Scans. Gebe ich »atcp« und »audp« an, bindet es alle unbenutzten Ports unterhalb von 1024 und meldet sie dem Angreifer als offen, woraufhin der Verdutzte genau so schlau ist wie vor seinem Scan.

Weiteren Raum fürs Setup öffnet »/etc/portsentry/portsentry.conf« . Hier darf ich Triggerports definieren, die als Portscan-Detektoren dienen. Die vorgegebene Auswahl ist recht gut, ich würde sie nur ändern, wenn ich auf einem dieser Ports einen Daemon betriebe.

Wichtiger ist es, die Sensibilität mit der Variablen »SCAN_TRIGGER« festzulegen. Beim Default »0« reagiert Portsentry sofort, wenn ein Triggerport anspricht. Werte wie »1« oder »2« reduzieren die Empfindlichkeit und damit die falsch-positiven Alarme. Dem gleichen Ziel dient »ADVANCED_EXCLUDE_TCP=« : Ports, die oft von fremden Hosts angesprochen werden wie Ident (Port 113) und Netbios (Port 139), klammert der »atcp« -Modus explizit aus, ebenso wie -»ADVANCED_EXCLUDE_UDP-« die UDP-Ports 67, 137, 138 und 520 (DHCP, Netbios, RIP).

Per Default reagiert Portsentry nicht auf Scans, sondern schreibt nur einen Log-Eintrag. Dieses Verhalten steuern:

BLOCK_UDP="0"
BLOCK_TCP="0"

Eine »1« an dieser Stelle bewirkt, dass IP-Adressen, von denen Portscans ausgehen, sich nicht mehr verbinden können, weil Portsentry das Kommando

/sbin/route add -host $TARGET$ reject

ausführt, das alle Anfragen mit Connection Refused abbügelt (Abbildung 1). Die IP-Adresse, von der der Portscan ausging, landet außerdem in der Datei »/var/lib/portsentry/portsentry.blocked« und bleibt dort bis zum Neustart des Daemon.

Abbildung 1: Portsentry initialisiert sich und detektiert Portscans entsprechend seiner Konfiguration.

Waffe gesichert

Um zu verhindern, dass eigene Systeme in Portsentrys Fänge geraten, gibt es die Datei »/etc/portsentry/portsentry.ignore.static« . Hier kann ich einzelne Hosts oder ganze Netze definieren, die von allen Gegenmaßnahmen verschont bleiben. Apropos: Wenn ich »BLOCK_TCP« und »BLOCK_UDP« auf »2« stelle, führt Portsentry jeden Befehl aus, den ich in »KILL _RUN_CMD« hinterlege – das Alarmieren per SMS oder Ähnliches, es bedient aber auch die Großkaliberwaffe Metasploit für brutale Gegenschläge. Bedenke: Es wirkt ungehobelt, jedem die Doppelläufige in die Nasenlöcher zu schieben, der zaghaft an die Tür klopft.

Online PLUS

Anlässlich von Charlys 10-jährigem Magazin-Jubiläum bietet die Redaktion eine Sammlung seiner sämtlichen Kolumnen als PDF für 19,95 Euro an – statt der knapp 120 Euro beim Erwerb der Einzelartikel.

Diesen Artikel als PDF kaufen

Express-Kauf als PDF

Umfang: 1 Heftseiten

Preis € 0,99
(inkl. 19% MwSt.)

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Tooltipps

    Im Kurztest: Mobiki, Jedit, Youtube-dl, Inadyn, My Password, Psad

  • Klapp, klapp!

    Wenn auf Hosts irgendwelche Ports auf- und zuklappen wie ein entriegelter Fensterladen, ist des Admin Aufmerksamkeit gefragt. Cancerbero vernimmt das Klappern der Ports und übersetzt es in HTML.

  • SIM-IDS mit Prelude

    Das hybride Security-Information-Management-System (SIM) Prelude empfängt sowohl Host- als auch Netzwerk-basierte IDS-Meldungen und zeigt diese in einem übersichtlichen Webinterface an. Selbst komplexe, korrelierte Alarme von unterschiedlichen Endgeräten mit eigenen Plugins sind da kein Problem.

  • Einführung

    Auch diesen Monat bekommen die DELUG-Käufer eine rappelvolle Silberscheibe: Von der DVD bootet die neue Linux Mint-Version 12 "Lisa", dazu gibt es je eine virtuelle Appliance mit Android 4.0 und mit Suse 12.1 (inklusive GTK-HTML5-Backend Broadway) und ein O'Reilly-E-Book über GNU Make.

  • Erst mal anklopfen

    Egal ob Angreifer, Penetrationstester, Admin oder Netzwerktechniker: Keiner kommt ohne einen guten Scanner aus, der im Netz nach Hosts fahndet und deren Dienste abklopft. Das Lieblingswerkzeug der meisten ist Nmap. Zu Recht, da das Tool viele trickreiche Scantechniken kombiniert.

comments powered by Disqus

Stellenmarkt

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.