Security Forum Usenet Archiv Mailing List Archive  
IDS Firewall Honeypot Honeynet Web Security Linux Security Microsoft Security Virus - Wurm Backdoors - Trojaner Links
I-EYE Security Exploits Security Dokumentationen Security Online Scanner Security Scanner Security Tools Trojaner Portliste Impressum

Offenen Port identifizieren.






Es kann Ihnen irgendwann mal passieren, dass Sie bei dem regelmäßigen Portscann Ihres Servers feststellen, dass ein neuer unbekannter Port offen ist. Es gibt viele gründe wieso ein Port plötzlich geöffnet ist und einer von diesen Gründen ist der, dass jemand auf Ihrem Server eingebrochen ist und ein Backdoor (Hintertürchen) installiert hat. Auf jeden fall müssen Sie jetzt so schnell wie möglich feststellen welches Programm diesen verdächtigen Port offen hält.
Zuerst sehen wir uns das Ergebnis eines Portscanners an. Ich benutze gerne den NMAP Portscanner besonders gern unter Linux. Ein Portscann sollte immer mit dem Port 65535 enden um auch Nichts auszulassen.

linux:/ # nmap -p1-65535 1.1.1.1

Starting nmap V. 3.00 ( www.insecure.org/nmap/ )
Interesting ports on server.de (1.1.1.1):
(The 65522 ports scanned but not shown below are in state: closed)
Port    State    Service
22/tcp   open    ssh
80/tcp   open    http
110/tcp  open    pop-3
65535/tcp open    unknown

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

Dieses Ergebnis ist mehr als verdächtig, schon allein weil der unbekannte Port in den oberen Bereich der Portsnummern liegt.

Es ist natürlich möglich die Portbelegung direkt auf dem Ziel Computer abzufragen. Diese Methode hat allerdings den Nachteil dass der Hacker das Hintertürchen durch die Manipulation von Kommandos versteckt hat.

Das Kommando netstat –ln zeigt uns alle Ports an die auf eine eingehende Verbindung warten.

linux:/ # netstat -ln
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address      Foreign Address     State
tcp    0   0 0.0.0.0:110       0.0.0.0:*        LISTEN
tcp    0   0 0.0.0.0:80       0.0.0.0:*        LISTEN
tcp    0   0 :::22          :::*          LISTEN
tcp    0   0 :::65535        :::*          LISTEN

Auch in dieser Ausgabe kann man sehen dass irgendein Dienst auf eine Verbindung wartet. Im Moment ist uns nur bekannt das ein verdächtiger Port geöffnet wurde, also müssen wir die Portnummer einer bestimmten Anwendung zuordnen. Dies geschieht mit einer zusätzlichen Option.
-p, --programs      display PID/Program name for sockets
Die Option –p beim netstat zeigt uns die Anwendung die hinter dem Port steckt.
linux:/ # netstat -lnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address      Foreign Address     State    PID/Program name
tcp    0   0 0.0.0.0:110       0.0.0.0:*        LISTEN   891/inetd
tcp    0   0 0.0.0.0:80       0.0.0.0:*        LISTEN   967/httpd
tcp    0   0 :::22          :::*          LISTEN   563/sshd
tcp    0   0 :::65535        :::*          LISTEN   995/ctrld

Es ist ein Prozess Namens ctrld mit der Prozess ID 995. Jetzt sammeln wir weitere Informationen zur dem Programm mit der PID 995. Das Kommando ps auxew | grep 995 zeigt uns sämtliche Informationen über diese Anwendung.

Was uns jetzt noch bleibt ist den Prozess anzuhalten, zulöschen und festzustellen wie dieses Programm dahin gekommen ist.

Mit dem Kommando kill können wir den Prozess anhalten kill 995.

Wenn man sich die Arbeit macht, um herauszufinden wie diese Anwendung in den Server gelangt ist muss man die Logdateien analysieren. Die Voraussetzung ist natürlich, dass man bestimmte Ereignisse protokolliert hat. Wenn man ein IDS System wie Snort einsetzt so sollte man diese Logdateien als erstes überprüfen. Meiner Erfahrung nach sollte man immer als erstes seine Mitadministratoren befragen, denn in den meisten Fällen wurde das betreffende Programm von Ihnen installiert. Sollte das Hintertürchen schon seit längerem auf dem Computer aktive sein so ist es meiner Erfahrung nach leider nicht mehr möglich denjenigen zu finden der es installiert hat, weil in den meisten Fällen wird er die Logdateien gesäubert haben.