Nmap ist ein großartiger Portscanner, aber manchmal möchten Sie etwas Authentischeres. Sie können den Kernel fragen, welche Prozesse welche Ports geöffnet haben, indem Sie das netstat
Dienstprogramm verwenden:
me @ myhost: ~ $ sudo netstat -tlnp
Aktive Internetverbindungen (nur Server)
Proto Recv-Q Send-Q Lokale Adresse Fremdadresse Status PID / Programmname
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 1004 / dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 380 / sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 822 / cupsd
tcp6 0 0 ::: 22 ::: * LISTEN 380 / sshd
tcp6 0 0 :: 1: 631 ::: * LISTEN 822 / cupsd
Die Optionen, die ich gegeben habe, sind:
-t
Nur TCP
-l
Nur Listening-Ports
-n
Suchen Sie nicht nach Dienst- und Hostnamen, sondern zeigen Sie nur die Nummern an
-p
Prozessinformationen anzeigen (Root-Berechtigung erforderlich)
In diesem Fall können wir sehen, dass sshd
auf jedem Interface ( 0.0.0.0
) -Port 22 und cupsd
auf Loopback ( 127.0.0.1
) -Port 631 empfangsbereit ist. Ihre Ausgabe zeigt möglicherweise, dass telnetd
eine lokale Adresse von vorhanden ist 192.168.1.1:23
, was bedeutet, dass sie nicht auf Verbindungen auf dem Loopback-Adapter antwortet (zB kannst du nicht telnet 127.0.0.1
).
Es gibt andere Tools, die ähnliche Informationen anzeigen (z. B. lsof
oder /proc
), aber netstat ist am weitesten verbreitet. Es funktioniert sogar unter Windows ( netstat -anb
). BSD netstat ist etwas anders: Sie müssen stattdessen sockstat (1) verwenden , um die Prozessinformationen abzurufen .
Sobald Sie die Prozess-ID und den Programmnamen haben, können Sie den Prozess suchen und beenden, wenn Sie den Port schließen möchten. Für eine genauere Kontrolle können Sie eine Firewall (iptables unter Linux) verwenden, um den Zugriff nur auf bestimmte Adressen zu beschränken. Möglicherweise müssen Sie einen Dienststart deaktivieren. Wenn die PID unter Linux "-" ist, handelt es sich wahrscheinlich um einen Kernel-Prozess (dies ist beispielsweise bei NFS üblich).
Hinweis: Ich sagte "autorisierend", weil Sie nicht durch Netzwerkbedingungen und Firewalls behindert werden. Wenn Sie Ihrem Computer vertrauen, ist das großartig. Wenn Sie jedoch den Verdacht haben, dass Sie gehackt wurden, können Sie den Tools auf Ihrem Computer möglicherweise nicht vertrauen. Das Ersetzen von Standarddienstprogrammen (und manchmal sogar von Systemaufrufen) durch Dienstprogramme, die bestimmte Prozesse oder Ports (auch als Rootkits bezeichnet) verbergen, ist unter Angreifern Standard. Am besten ist es an dieser Stelle, eine forensische Kopie Ihrer Festplatte anzufertigen und diese von einem Backup wiederherzustellen. Verwenden Sie dann die Kopie, um festzustellen, wie sie eingegangen sind, und schließen Sie sie ab.
localhost
auf dielo
(Loopback-) Schnittstelle zugegriffen. die IP - Adresse accesing Ihre reale Schnittstelle, wahrscheinlicheth0
oderwlan0
, etc. zu jagen.