Apakah ada cara untuk melihat apa yang sebenarnya memfilter komunikasi port TCP?


10
nmap -p 7000-7020 10.1.1.1

Akan menampilkan semua port yang disaring

Starting Nmap 6.40 ( http://nmap.org ) at 2015-03-04 12:18 EET
Nmap scan report for 10.1.1.1
Host is up (0.00091s latency).
PORT     STATE    SERVICE
7000/tcp filtered afs3-fileserver
7001/tcp filtered afs3-callback
7002/tcp filtered afs3-prserver
7003/tcp filtered afs3-vlserver
7004/tcp filtered afs3-kaserver
7005/tcp filtered afs3-volser
7006/tcp filtered afs3-errors
7007/tcp filtered afs3-bos
7008/tcp filtered afs3-update
7009/tcp filtered afs3-rmtsys
7010/tcp filtered ups-onlinet
7011/tcp filtered unknown
7012/tcp filtered unknown
7013/tcp filtered unknown
7014/tcp filtered unknown
7015/tcp filtered unknown
7016/tcp filtered unknown
7017/tcp filtered unknown
7018/tcp filtered unknown
7019/tcp filtered unknown
7020/tcp filtered unknown

Nmap done: 1 IP address (1 host up) scanned in 2.78 seconds

Apakah ada cara agar saya bisa melihat apa sebenarnya yang memfilter port tersebut?

Jawaban:


11

Ini adalah apa yang dikatakan nmap docs tentang filterednegara

memfilter Nmap tidak dapat menentukan apakah port terbuka karena packet filtering mencegah probe-nya mencapai port. Penyaringan bisa dari perangkat firewall khusus, aturan router, atau perangkat lunak firewall berbasis host ...

Satu-satunya cara untuk mengetahui apa yang melakukan penyaringan adalah mengetahui 'mesin' apa yang ada di antara Anda dan target jarak jauh.

Ini dapat dicapai dengan menggunakan utilitas penelusuran rute, yang berupaya menentukan host antara Anda dan target menggunakan paket TCP khusus. Dalam kasus Anda, perintahnya mungkin terlihat seperti:

traceroute 10.1.1.1

Setelah Anda tahu mesin antara Anda dan target, Anda menyelidiki konfigurasi masing-masing untuk mengetahui apakah itu penyaringan dan jika demikian caranya.


Tidak ada firewall perangkat lunak aktif di kedua mesin itu, nmap -p 7000-7020 localhostmenunjukkan port dibuka, dan firewall khusus dilaporkan dibuka.
Eduard Florinescu

4
Bukti yang Anda miliki menunjukkan bahwa ada sesuatu yang disaring, kami tidak bisa tahu apa itu karena kami tidak tahu konfigurasi Anda. Firewall berbasis host sering memungkinkan semua lalu lintas di antarmuka loopback (localhost) jadi itu mungkin tes yang menyesatkan.
user9517

Apakah ada kemungkinan Anda menggunakan linux dengan iptables "-j DROP"? Apa yang disebut dokumentasi nmap sebagai difilter sebenarnya adalah paket yang dijatuhkan pada protokol apa pun.
risyasin

Apakah perangkat lunak ini terikat dengan IP eksternal? Jika semuanya terikat ke 127.0.0.1 sebagai gantinya, itu bisa menyebabkan ini. Periksa netstat
devicenull

12

Nmap menyediakan beberapa cara untuk mendapatkan informasi lebih lanjut tentang apa yang menyebabkan penyaringan:

  • The --reasonpilihan akan menunjukkan jenis respon yang menyebabkan "disaring" negara pelabuhan. Ini bisa "tidak ada respons" atau "dilarang admin" atau yang lainnya.
  • TTL paket respons dilaporkan dalam output XML sebagai reason_ttlatribut stateelemen untuk port. Jika TTL untuk port yang difilter berbeda dari (biasanya lebih besar dari) TTL untuk port terbuka, maka perbedaan antara TTL adalah jarak jaringan antara target dan perangkat filtering. Ada pengecualian, seperti target yang menggunakan TTL awal yang berbeda untuk paket ICMP vs TCP, atau perangkat penyaringan yang memalsukan atau menimpa informasi TTL.
  • The --traceroutefungsi akan menampilkan informasi tentang hop di sepanjang rute Anda, apapun yang dapat menyaring lalu lintas Anda. Dalam beberapa kasus, nama DNS terbalik untuk salah satu hop bahkan akan menjadi sesuatu seperti "firewall1.example.com"
  • The firewalkScript NSE akan mengirimkan paket dengan TTLs awal yang akan waktu pada hop yang berbeda sepanjang rute dalam upaya untuk menemukan di mana paket sedang diblokir. Ini adalah kombinasi dari dua teknik sebelumnya, dan biasanya bekerja dengan cukup baik.

Versi pengembangan Nmap yang saat ini belum dirilis juga melaporkan TTL untuk paket respons dalam output teks normal dengan -v --reasonopsi. Untuk saat ini, Anda harus menggunakan output XML untuk mendapatkan informasi ini.

Diedit untuk menambahkan : Nmap 6.49BETA1 adalah rilis pertama yang menunjukkan TTL untuk paket respons dalam output teks dengan -v --reasonatau -vv, dan dirilis pada Juni 2015.


1
Opsi yang sangat berguna +1
Eduard Florinescu

Ya, --script=firewalkitulah yang saya coba temukan. Terima kasih.
ulidtko

5

Jawaban singkat - Tidak, tidak mungkin Anda bisa melihatnya.

Jawaban yang lebih panjang:

Dari: https://nmap.org/book/man-port-scanning-basics.html

"Nmap yang difilter tidak dapat menentukan apakah port terbuka karena packet filtering mencegah probe-nya mencapai port. Penyaringan bisa dari perangkat firewall khusus, aturan router, atau perangkat lunak firewall berbasis host. Port-port ini membuat frustrasi para penyerang karena mereka menyediakan sangat sedikit penyerang. Kadang-kadang mereka merespons dengan pesan kesalahan ICMP seperti tipe 3 kode 13 (tujuan tidak terjangkau: komunikasi secara administratif dilarang), tetapi filter yang hanya menjatuhkan probe tanpa merespons jauh lebih umum. Hal ini memaksa Nmap untuk mencoba beberapa kali hanya jika probe dilakukan dijatuhkan karena kemacetan jaringan daripada pemfilteran. Ini memperlambat pemindaian secara dramatis. "

Anda dapat mencoba menemukan topologi jaringan dengan alat-alat seperti traceroute. Biasanya port disaring pada host itu sendiri (yaitu tabel ip), router tepi jaringan target, router inti jaringan target atau atas saklar L3 rak.

Jika Anda berada di subnet yang sama dengan host target, hampir pasti firewall ada di mesin target.


2

Coba bandingkan hasil tcptrace dengan salah satu port yang difilter dengan tcptrace ke port terbuka (atau traceroute standar). Jika tcptraces sama, itu berarti ada sesuatu di mesin tujuan yang memfilter port.

Pembaruan: Maksud saya tcptraceroute, saya memilikinya alias.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.