Masscan: Pemindai Sumber Terbuka Port IP Massal

  • Whatsapp
Masscan: Pemindai Sumber Terbuka Port IP Massal
Masscan: Pemindai Sumber Terbuka Port IP Massal

Tentang Masscan
Masscan adalah pemindai port skala Internet. Itu dapat memindai seluruh Internet dalam waktu kurang dari 6 menit, mentransmisikan 10 juta paket per detik, dari satu mesin.

Input/outputnya mirip dengan nmap, pemindai port paling terkenal. Jika ragu, cobalah salah satu fitur tersebut.

Secara internal, Masscan menggunakan transmisi asinkron, mirip dengan pemindai port seperti scanrand, unicornscatidak, dan ZenMap. Ini lebih fleksibel, memungkinkan port sewenang-wenang dan rentang alamat.

   CATATAN:Masscan menggunakan tumpukan TCP/IP kustomnya sendiri. Apa pun selain pemindaian port sederhana dapat menyebabkan konflik dengan tumpukan TCP/IP lokal. Ini berarti Anda perlu –src-ip opsi untuk menjalankan dari alamat IP yang berbeda, atau gunakan –src-port untuk mengonfigurasi port sumber mana yang digunakan masscan, lalu juga mengonfigurasi firewall internal (seperti pf atau iptables) untuk mem-firewall port tersebut dari sistem operasi lainnya.

Massan gratis, tetapi pertimbangkan untuk menyumbangkan uang untuk pengembangannya: Alamat dompet Bitcoin: 1MASSCANAHUiyTtR3bJ2sLGuMw5kDBaj4T

Instalasi Masscan 
Menggunakan Masscan
Penggunaannya mirip dengan nmap. Untuk memindai segmen jaringan untuk beberapa port:
masscan -p80,8000-8100 10.0.0.0/8

Perintah itu akan:
* Pindai subnet 10.xxx, semua 16 juta alamat
* Memindai port 80 dan kisaran 8000 hingga 8100, atau total 102 alamat.
* Hasil cetak ke yang dapat diarahkan ke file

Untuk melihat daftar lengkap opsi, gunakan use –gema fitur. Ini membuang konfigurasi saat ini dan keluar. Output ini dapat digunakan sebagai input kembali ke dalam program:
masscan -p80,8000-8100 10.0.0.0/8 –echo > xxx.conf
masscan -c xxx.conf –rate 1000

Mendapatkan output di Masscan
Secara default, Masscan menghasilkan file teks yang cukup besar, tetapi mudah untuk mengubahnya menjadi format lain. Ada lima format output yang didukung:
* xml: Cukup gunakan parameter -lembu . Atau, gunakan parameter –format keluaran xml dan –output-nama file .
* biner: Ini adalah format bawaan Masscan. Ini menghasilkan file yang jauh lebih kecil, sehingga ketika saya memindai Internet, disk saya tidak terisi. Mereka perlu diuraikan, meskipun. Opsi baris perintah –readscan akan membaca file pemindaian biner. Menggunakan –readscan dengan -lembu opsi akan menghasilkan versi XML dari file hasil.
* bisa diterima: Ini adalah implementasi dari output Nmap -oG yang dapat dengan mudah diuraikan oleh alat baris perintah. Cukup gunakan parameter -oG . Atau, gunakan parameter –output-format grepable dan –output-nama file .
* json: Ini menyimpan hasil dalam format JSON. Cukup gunakan parameter -oJ . Atau, gunakan parameter –output-format json dan –output-nama file .
* daftar: Ini adalah daftar sederhana dengan satu host dan pasangan port per baris. Cukup gunakan parameter -oL . Atau, gunakan parameter –daftar format-output dan –output-nama file . Formatnya adalah:


buka tcp 80 XXX.XXX.XXX.XXX 1390380064

Pengujian kinerja di Masscan
Untuk menguji kinerja, jalankan sesuatu seperti berikut:
masscan 0.0.0.0/4 -p80 –rate 100000000 –router-mac 66-55-44-33-22-11

yang palsu –router-mac menyimpan paket-paket pada segmen jaringan lokal sehingga mereka tidak akan keluar ke Internet.

    Anda juga dapat menguji dalam mode “offline”, yaitu seberapa cepat program berjalan tanpa overhead transmisi:
masscan 0.0.0.0/4 -p80 –rate 100000000 –offline

Bacaan Lainnya

Benchmark kedua ini menunjukkan secara kasar seberapa cepat program akan berjalan jika menggunakan PF_RING, yang memiliki overhead hampir nol.

Pemeriksaan spanduk di Masscan
Masscan dapat melakukan lebih dari sekadar mendeteksi apakah port terbuka. Itu juga dapat menyelesaikan koneksi TCP dan interaksi dengan aplikasi di port itu untuk mengambil informasi “spanduk” sederhana.

Masalahnya adalah Masscan berisi tumpukan TCP/IP sendiri yang terpisah dari sistem tempat Anda menjalankannya. Ketika sistem lokal menerima SYN-ACK dari target yang diperiksa, ia merespons dengan paket RST yang mematikan koneksi sebelum masscan dapat mengambil spanduk.

Cara termudah untuk mencegahnya adalah dengan menetapkan Masscan alamat IP yang terpisah. Ini akan terlihat seperti berikut:
masscan 10.0.0.0/8 -p80 –banners –source-ip 192.168.1.200

Alamat yang Anda pilih harus berada di subnet lokal dan tidak digunakan oleh sistem lain.

Dalam beberapa kasus, seperti WiFi, ini tidak mungkin. Dalam kasus tersebut, Anda dapat mem-firewall port yang digunakan Masscan. Ini mencegah tumpukan TCP/IP lokal melihat paket, tetapi masscan masih melihatnya karena melewati tumpukan lokal. Untuk Linux, ini akan terlihat seperti:
iptables -A INPUT -p tcp –dport 61000 -j DROP
masscan 10.0.0.0/8 -p80 –banners –source-port 61000

Anda mungkin ingin memilih port yang tidak bertentangan dengan port yang mungkin dipilih Linux untuk port sumber. Anda dapat melihat rentang yang digunakan Linux, dan mengonfigurasi ulang rentang tersebut, dengan melihat di file:
/proc/sys/net/ipv4/ip_local_port_range

Pada Kali Linux versi terbaru (2018-Agustus), kisarannya adalah 32768 hingga 60999, jadi Anda harus memilih port di bawah 32768 atau 61000 ke atas.

Menyetel iptables aturan hanya berlangsung sampai reboot berikutnya. Anda perlu mencari cara menyimpan konfigurasi tergantung pada distro Anda, seperti menggunakan iptables-saveatau iptables-persisten.

Di Mac OS X dan BSD, ada langkah serupa. Untuk mengetahui rentang yang harus dihindari, gunakan perintah seperti berikut:
sysctl net.inet.ip.portrange.first net.inet.ip.portrange.last

Pada FreeBSD dan MacOS yang lebih lama, gunakan ipfw perintah:
sudo ipfw tambahkan 1 tolak tcp dari mana saja ke 40000 in
masscan 10.0.0.0/8 -p80 –banners –source-port 40000

Pada MacOS dan OpenBSD yang lebih baru, gunakan: pf(paket-filter) utilitas. Edit filenya /etc/pf.conf untuk menambahkan baris seperti berikut:
blokir di proto tcp dari mana saja ke port mana saja 40000

Kemudian untuk mengaktifkan firewall, jalankan perintah:pfctrl -E

Jika firewall sudah berjalan, maka reboot atau muat ulang aturan dengan perintah berikut:pfctl -f /etc/pf.conf

Windows tidak merespon dengan paket RST, jadi tidak satu pun dari teknik ini diperlukan. Namun, masscan masih dirancang untuk bekerja paling baik menggunakan alamat IP-nya sendiri, jadi Anda harus menjalankannya jika memungkinkan, bahkan jika itu tidak benar-benar diperlukan.

Hal yang sama diperlukan untuk pemeriksaan lainnya, seperti –berdarah-darah check, yang hanya merupakan bentuk pemeriksaan spanduk.

Tata Letak Kode di Masscan
Berkas main.c berisi utama() fungsi, seperti yang Anda harapkan. Ini juga berisi mengirimkan_utas() dan terima_utas() fungsi. Fungsi-fungsi ini sengaja diratakan dan diberi banyak komentar sehingga Anda dapat membaca desain program hanya dengan melangkah baris demi baris melalui masing-masing fungsi ini.

Tidak sinkron
Ini adalah desain asinkron. Dengan kata lain, itu adalah untuk nmap apa itu nginx server web adalah untuk Apache. Ini memiliki utas pengiriman dan penerimaan terpisah yang sebagian besar independen satu sama lain. Ini adalah jenis desain yang sama yang ditemukan di scanrand, unicornscan, dan ZMap.

Karena tidak sinkron, ia berjalan secepat yang dimungkinkan oleh pengiriman paket yang mendasarinya.

Portabilitas
Kode berjalan dengan baik di Linux, Windows, dan Mac OS X. Semua bit penting dalam standar C (C90). Oleh karena itu dikompilasi di Visual Studio dengan kompiler Microsoft, kompiler Clang/LLVM di Mac OS X, dan GCC di Linux.

Windows dan Mac tidak disetel untuk pengiriman paket, dan hanya mendapatkan sekitar 300.000 paket per detik, sedangkan Linux dapat melakukan 1.500.000 paket/detik. Itu mungkin lebih cepat dari yang Anda inginkan.

Kode aman di Masscan
Hadiah ditawarkan untuk kerentanan, lihat, VULNINFO.mdberkas untuk informasi lebih lanjut.

Proyek ini menggunakan fungsi yang aman seperti strcpy_s() alih-alih fungsi yang tidak aman seperti strcpy().

Proyek ini memiliki tes regresi unit otomatis (membuat regresi).

Kesesuaian: Banyak upaya telah dilakukan untuk membuat input/output terlihat seperti nmap, yang setiap orang yang melakukan pemindaian port (atau seharusnya) sudah familiar dengannya.

Tentang penulis Masscan
Alat ini dibuat oleh Robert Graham:
Alamat email: [email protected]
Akun Twitter: @ErrataRob

Pos terkait

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *