Montag, 13. Oktober 2008

entwickler.com Magazine Konferenzen Entwickler Akademie Entwickler-Forum Jobbörse Bücher
Software & Support Verlag

Offene Ports mit nmap lokalisieren

In Zeiten wie diesen sollten Sie den eigenen Rechner, beziehungsweise das eigene Netzwerk, mit Argusaugen überwachen. Deshalb ist es eine gute Idee, hin und wieder einen Portscan durchzuführen, um herauszufinden, wo Angreifer ansetzen könnten.
Als Faustregel gilt, dass nur Ports offen sein sollten, die tatsächlich benötigt werden; d.h. Dienste wie Telnet, FTP und Http (falls Sie keine Website betreiben) sollten für Anfragen von „draussen“ nicht erreichbar sein.

Unter Linux steht für Portscans nmap bereit; das Programm ist bereits an Bord. Seit einiger Zeit gibt es sogar eine GUI-Variante namens xnmap. Achtung: Sie benötigen für die meisten Scans root-Rechte. Checken Sie zuerst, ob nmap installiert ist:


[ich@localhost] which nmap
/usr/bin/nmap

Nähere Angaben zu nmap erhalten Sie mit man nmap. Die einfachste Form eines nmap-Aufrufs sieht so aus:

[ich@localhost] nmap localhost
...
Port State Service
22/tcp open ssh

Nmap run completed -- 1 IP address (1 host up) scanned in 0 seconds

Die Ausgabe besagt, dass Port 22 (der Dienst SSH) auf localhost offen ist. Natürlich können Sie nmap mit Hilfe diverser Schalter weitaus mehr Informationen entlocken; loggen Sie sich deshalb als root ein und probieren Sie das Folgende:

[root@localhost]# nmap -v -sS -O localhost

The SYN Stealth Scan took 2 seconds to scan 1601 ports.
For OSScan assuming that port 13 is open and port 1 is closed and neither are firewalled
Insufficient responses for TCP sequencing (1), OS detection may be less accurate
Interesting ports on localhost.localdomain (127.0.0.1):
...
Port State Service
13/tcp open daytime
22/tcp open ssh
25/tcp open smtp
80/tcp open http
443/tcp open https
631/tcp open ipp
3306/tcp open mysql
Remote OS guesses: Linux Kernel 2.4.0 - 2.5.20, Gentoo 1.2 linux (Kernel 2.4.19-gentoo-rc5), Linux 2.5.25 or Gentoo 1.2 Linux 2.4.19 rc1-rc7)

Ein Wort zu den verwendeten Optionen: der Schalter -v (v=verbose) verhilft nmap zu einer „geschwätzigen“ Ausgabe. Mit dem Schalter -s (für SYN-Stealth-Scan) wird nmap veranlasst, einen „verdeckten“ Scan zu starten – täuschen Sie sich jedoch nicht, moderne IDS-Systeme (IDS=Intrusion Detection System) sind durchaus in der Lage, solche Aktivitäten zu erkennen. Der Schalter -O bewirkt hingegen, dass Sie überdies einen OS-Fingerprint erhalten (der oft richtig ist).
Abschließend ein Tipp: manchmal erscheint auch Port 6000 (der Port für den X-Server) in der nmap-Ausgabe. Das hat historische Gründe und ist heutzutage aber nicht mehr erforderlich. Sie können beim Start des X-Servers verhindern, das dieser auf Port 6000 „lauscht“. Auf der Konsole geht das so:

startx -- -nolisten tcp

Viel Spass.

Thomas Kaufmann







Software & Support Verlag GmbH