Catatan: Gambar Docker akan dirilis dalam beberapa minggu mendatang.
Spidex adalah pemindai pengintaian berkelanjutan, yang mengutamakan pembuktian paparan jaringan. Ia melakukan pemindaian berorientasi port berskala besar dan mengumpulkan informasi dari setiap perangkat yang terhubung ke Internet.
Mesin ini bertanggung jawab untuk menganalisis secara besar-besaran alamat IP yang diterima sebagai argumen. Ia mengumpulkan informasi publik tentang setiap target, seperti: pelabuhan terbuka, lokasi geografis, teknologi web, dan spanduk.
Juga menyimpan laporan untuk setiap siklus pemindaian, yang berisi: Waktu eksekusi, perangkat ditemukan, dan tanggal mulai/berakhir.
Penerapan thread dan antrian meningkatkan kinerja selama pemindaian. Dengan cara ini, permintaan dikirim secara paralel dan waktu eksekusi untuk setiap siklus berkurang secara signifikan. Saat ini memiliki batas 450/500 thread.
options:
-h, --help show this help message and exit
-r RANGE, --range RANGE
Start IPv4 address
-t THREADS, --threads THREADS
Number of threads [Default: 50]
-f, FILE, --file File path with IPv4 ranges
-ti TIMEOUT, --timeout TIMEOUT
Socket timeout [Default: 0.5]
-p, --top-ports Scan only 20 most used ports
-a, --all-ports Scan 1000 most used ports
-c CUSTOM [CUSTOM ...], --custom-ports CUSTOM [CUSTOM ...]
Scan custom ports directly from terminal
-l, --logs Add a log file, useful in debugging
Pindai hanya satu rentang alamat IPv4 dengan port yang paling banyak digunakan secara default:
python3 engine.py -r 192.168.0.0,192.168.0.255 -t 150 --top-ports
Pindai dari file teks dengan beberapa rentang alamat IPv4 dan batas waktu soket dalam hitungan detik:
python3 engine.py -m ranges.csv -t 200 -ti 5 --all-ports
Pindai dengan CIDR, port khusus, dan opsi log:
python3 engine.py -r 192.168.0.0/255 -t 350 -C 80 21 22 --logs
Ini terdiri dari aplikasi Flask, yang memungkinkan untuk menyimpan dan melakukan operasi apa pun pada hasil yang dikirim oleh mesin pencari. Ia menggunakan MongoDB sebagai database, sangat ideal karena datanya tidak terstruktur.
Metode | Rute | Keterangan |
---|---|---|
POS | api/kirim/device | Kirimkan hasil tunggal |
MENDAPATKAN | api/perangkat | Dapatkan semua hasil |
MENDAPATKAN | api/perangkat/ip | Dapatkan hasil tunggal berdasarkan alamat IP |
MENGHAPUS | api/hapus/perangkat/ip | Hapus satu |
POS | api/kirim/laporkan | Kirim pindaian laporan |
MENDAPATKAN | api/laporan | Dapatkan semua laporan |
Penerapan kedua komponen dilakukan dengan Docker, untuk memudahkan instalasi dan menghindari kontaminasi lingkungan dengan dependensi. Anda dapat mengunduh gambar dari DockerHub.
Untuk penerapan dasar, atur variabel lingkungan untuk setiap gambar, di file Docker Compose
MONGO_INITDB_ROOT_USERNAME: USERNAME
MONGO_INITDB_ROOT_PASSWORD: PASSWORD
DB_SERVER_NAME: MONGODB_SERVER
DB_USERNAME: MONGODB_USER
DB_PASSWORD: MONGODB_PASSWORD
SERVER_ADDRESS: API_SERVER
Integrasi Elasticsearch dan Kibana memungkinkan antarmuka grafis untuk memvisualisasikan dan memanipulasi data dengan cara yang efisien.
Saat ini proyek tidak memiliki cara untuk memasukkan data secara otomatis. Namun Anda dapat menggunakan alat seperti: Mongo-to-elastic-dump, dan menghasilkan beberapa grafik menarik di mesin lokal Anda setelah siklus pemindaian selesai.
Jika Anda memiliki ide atau fitur masa depan, silakan berpartisipasi untuk terus menjadikan proyek ini hebat.
Proyek ini dibuat untuk tujuan pengujian pendidikan dan etika saja. Penggunaan perangkat lunak ini untuk menyerang target tanpa persetujuan bersama sebelumnya adalah ilegal. Pengguna akhir bertanggung jawab untuk mematuhi semua undang-undang lokal, negara bagian, dan federal yang berlaku. Pengembang tidak bertanggung jawab dan tidak bertanggung jawab atas penyalahgunaan atau kerusakan apa pun yang disebabkan oleh program ini.
Apache 2.0