Nmap adalah pemindai port yang hebat, tetapi terkadang Anda menginginkan sesuatu yang lebih otoritatif. Anda dapat bertanya pada kernel proses apa yang memiliki port terbuka dengan menggunakan netstat
utilitas:
me @ myhost: ~ $ sudo netstat -tlnp
Koneksi internet aktif (hanya server)
Proto Recv-Q Kirim-Q Alamat Lokal Alamat Asing Negara PID / Nama program
tcp 0 0 127.0.0.1:53 0.0.0.0:* DENGARKAN 1004 / dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* DENGARKAN 380 / sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* DENGARKAN 822 / cangkird
tcp6 0 0 ::: 22 ::: * DENGARKAN 380 / sshd
tcp6 0 0 :: 1: 631 ::: * DENGARKAN 822 / cangkird
Opsi yang saya berikan adalah:
-t
Hanya TCP
-l
Hanya mendengarkan porta
-n
Jangan mencari layanan dan nama host, cukup tampilkan nomor
-p
Tampilkan informasi proses (memerlukan root privilege)
Dalam kasus ini, kita dapat melihat bahwa sshd
mendengarkan pada antarmuka ( 0.0.0.0
) port 22, dan cupsd
mendengarkan pada loopback ( 127.0.0.1
) port 631. Output Anda mungkin menunjukkan yang telnetd
memiliki alamat lokal 192.168.1.1:23
, artinya tidak akan menjawab koneksi pada adaptor loopback (mis. Anda tidak bisa telnet 127.0.0.1
).
Ada alat lain yang akan menampilkan informasi serupa (misalnya lsof
atau /proc
), tetapi netstat adalah yang paling banyak tersedia. Ia bahkan bekerja pada Windows ( netstat -anb
). BSD netstat sedikit berbeda: Anda harus menggunakan sockstat (1) untuk mendapatkan informasi proses.
Setelah Anda memiliki ID proses dan nama program, Anda bisa mencari proses dan membunuhnya jika Anda ingin menutup port. Untuk kontrol yang lebih halus, Anda dapat menggunakan firewall (iptables di Linux) untuk membatasi akses hanya ke alamat tertentu. Anda mungkin perlu menonaktifkan startup layanan. Jika PID adalah "-" di Linux, itu mungkin sebuah proses kernel (ini umum dengan NFS misalnya), jadi semoga berhasil mengetahui apa itu.
Catatan: Saya mengatakan "berwibawa" karena Anda tidak terhalang oleh kondisi jaringan dan firewall. Jika Anda mempercayai komputer Anda, itu bagus. Namun, jika Anda mencurigai bahwa Anda telah diretas, Anda mungkin tidak dapat mempercayai alat di komputer Anda. Mengganti utilitas standar (dan kadang-kadang bahkan panggilan sistem) dengan yang menyembunyikan proses atau port tertentu (alias rootkit) adalah praktik standar di antara para penyerang. Taruhan terbaik Anda saat ini adalah membuat salinan forensik dari disk Anda dan memulihkan dari cadangan; kemudian gunakan salinan untuk menentukan cara mereka masuk dan menutupnya.
localhost
sedang mengakseslo
antarmuka (loopback). Alamat IP mengakses antarmuka nyata Anda, mungkineth0
atauwlan0
atau semacamnya.