Saya mengalami masalah saat pengujian penetrasi dengan Netdiscover pada pengaturan virtual menggunakan VMPlayer, versi gratis. Mesin serangan ada di antarmuka jaringan VMWare NAT, dan mesin target hanya pada host VMWare. Saya menemukan bahwa Netdiscover tidak berfungsi karena antarmuka VMWare NAT belum mengisi tabel ARP-nya dengan IP / MAC dari mesin target (Netdiscover menggunakan ARP). Semua protokol yang diuji dari NAT ke host-only (http, ping) berfungsi tanpa masalah. Masalah asli ada di https://security.stackexchange.com/q/105263/91684 .
Saya melihat dokumentasi VMWare dan tidak menemukan yang jelas tentang bagaimana ARP diisi.
Apakah ini perilaku VMWare yang normal, atau apakah saya melakukan sesuatu yang salah?
virtual-machine
vmware-player
arp
Batu Benar
sumber
sumber
netdiscover -r range
rentang yang mencakup mesin target?Jawaban:
Netdiscover berfungsi ...
Permintaan arp tidak melewati gateway. Untuk satu hal, pada mesin Linux kami mengaktifkan
IPv4
penerusan, tetapi paket IPv4 adalah objek OSI-Layer 3, sedangkan permintaan ARP adalah objek OSI-Layer 2, sehingga di mana pun di kernel Linux tidak ada instruksi untuk meneruskan permintaan ARP ke antarmuka lain.Ini persis seperti kasus Anda: sekali permintaan ARP mencapai antarmuka host, itu akan dibuang karena IP yang diperlukan MAC tidak cocok dengan antarmuka. Permintaan juga tidak akan diteruskan ke antarmuka lain karena alasan di atas. Oleh karena itu host Anda (dengan benar) menjatuhkan permintaan ARP, yang tidak akan dijawab. Ini menjelaskan kegagalan Netdiscover dalam pengaturan Anda.
Kegagalan di atas bukan karena kenyataan bahwa di VMWare tidak ada gateway yang tepat antara jaringan yang berbeda. Bahkan dengan mengabaikan ketidakmungkinan server Linux untuk meneruskan apa pun kecuali objek IPv4 ( yaitu , dengan anggapan Anda memiliki gateway / router non-Linux), perilaku paling umum untuk gateway adalah untuk menanggapi permintaan ARP dari host jarak jauh dengan alamat MAC mereka sendiri , lihat untuk contoh di sini di bawah operasi ARP untuk host jarak jauh . Dengan kata lain, tidak ada rantai upstream permintaan ARP sampai alamat MAC dari host jarak jauh dicocokkan dengan IP yang disediakan. Perilaku minimum yang dijelaskan di atas (mengembalikan alamat MAC gateway lokal) juga tidak umum.
Semua ini dapat dengan mudah diuji: pada mesin Debian
dan sesuatu yang mirip dengan ini di semua OS lainnya. Anda akan melihat Anda tidak mendapat balasan. Anda juga dapat menggunakan
traceroute
untuk menemukan alamat IP dari beberapa gateway hulu Anda sendiri; perintahjuga tidak akan dijawab.
Untuk menguji
Netdiscover
pada pengaturan Anda, Anda harus menempatkan semua VM, penyerang dan penyerang Anda, pada subnet yang sama . Maka ARP akan bekerja.sumber