Nmap to świetny skaner portów, ale czasem potrzebujesz czegoś bardziej autorytatywnego. Możesz zapytać jądro, jakie procesy mają otwarte porty, używając netstat
narzędzia:
me @ myhost: ~ $ sudo netstat -tlnp
Aktywne połączenia internetowe (tylko serwery)
Proto Recv-Q Send-Q Adres lokalny Adres obcy Stan PID / nazwa programu
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:* SŁUCHAJ 380 / sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* POSŁUCHAJ 822 / cupsd
tcp6 0 0 ::: 22 ::: * LISTEN 380 / sshd
tcp6 0 0 :: 1: 631 ::: * LISTEN 822 / cupsd
Dostępne opcje to:
-t
Tylko TCP
-l
Tylko porty nasłuchiwania
-n
Nie szukaj nazw usług i hostów, po prostu wyświetlaj numery
-p
Pokaż informacje o procesie (wymaga uprawnień roota)
W tym przypadku widzimy, że sshd
nasłuchuje na dowolnym 0.0.0.0
porcie 22 interfejsu i cupsd
nasłuchuje na 127.0.0.1
porcie 631 pętli zwrotnej. Twój wynik może wskazywać, że telnetd
ma lokalny adres 192.168.1.1:23
, co oznacza, że nie będzie odpowiadał na połączenia na adapterze pętli zwrotnej (np. nie możesz telnet 127.0.0.1
).
Istnieją inne narzędzia, które pokażą podobne informacje (np. lsof
Lub /proc
), ale netstat jest najbardziej dostępny. Działa nawet w systemie Windows ( netstat -anb
). BSD netstat jest trochę inny: będziesz musiał użyć sockstat (1), aby uzyskać informacje o procesie.
Po uzyskaniu identyfikatora procesu i nazwy programu możesz przejść do znajdowania procesu i zabijania go, jeśli chcesz zamknąć port. Aby uzyskać bardziej szczegółową kontrolę, możesz użyć zapory ogniowej (iptables w systemie Linux), aby ograniczyć dostęp tylko do niektórych adresów. Może być konieczne wyłączenie uruchamiania usługi. Jeśli PID ma „-” w Linuksie, prawdopodobnie jest to proces jądra (jest to na przykład typowe dla NFS), więc powodzenia w znalezieniu tego, co to jest.
Uwaga: Powiedziałem „autorytatywny”, ponieważ nie przeszkadzają ci warunki sieciowe i zapory ogniowe. Jeśli ufasz swojemu komputerowi, to świetnie. Jeśli jednak podejrzewasz, że zostałeś włamany, możesz nie być w stanie zaufać narzędziom na swoim komputerze. Zastąpienie standardowych narzędzi (a czasem nawet wywołań systemowych) narzędziami, które ukrywają określone procesy lub porty (inaczej rootkity), jest standardową praktyką wśród atakujących. Najlepszym rozwiązaniem w tym momencie jest wykonanie kryminalistycznej kopii dysku i przywrócenie jej z kopii zapasowej; następnie użyj kopii, aby określić sposób, w jaki się dostali i zamknąć.
localhost
uzyskuje dostęp dolo
interfejsu (sprzężenia zwrotnego). Adres IP jest accesing swój prawdziwy interfejs, prawdopodobnieeth0
lubwlan0
lub somesuch.