Vulscan adalah modul yang meningkatkan nmap menjadi pemindai kerentanan. Opsi nmap -sV memungkinkan deteksi versi per layanan yang digunakan untuk menentukan potensi kelemahan sesuai dengan produk yang diidentifikasi. Data dicari di VulDB versi offline.
Silakan instal file-file tersebut ke dalam folder instalasi Nmap Anda berikut ini:
Nmapscriptsvulscan*
Kloning repositori GitHub seperti ini:
git clone https://github.com/scipag/vulscan scipag_vulscan
ln -s `pwd`/scipag_vulscan /usr/share/nmap/scripts/vulscan
Anda harus menjalankan perintah minimal berikut untuk memulai pemindaian kerentanan sederhana:
nmap -sV --script=vulscan/vulscan.nse www.example.com
Ada database pra-instal berikut yang tersedia saat ini:
Anda dapat menjalankan vulscan dengan argumen berikut untuk menggunakan database tunggal:
--script-args vulscandb=your_own_database
Dimungkinkan juga untuk membuat dan mereferensikan database Anda sendiri. Ini memerlukan pembuatan file database, yang memiliki struktur berikut:
<id>;<title>
Jalankan saja vulscan seperti yang Anda lakukan dengan merujuk ke salah satu database yang telah dikirimkan sebelumnya. Jangan ragu untuk membagikan database Anda sendiri dan koneksi kerentanan dengan saya, untuk menambahkannya ke repositori resmi.
Basis data kerentanan diperbarui dan dikumpulkan secara berkala. Untuk mendukung kerentanan terbaru yang diungkapkan, selalu perbarui basis data kerentanan lokal Anda.
Untuk memperbarui database secara otomatis, cukup atur izin eksekusi ke file update.sh
dan jalankan:
chmod 744 update.sh
./update.sh
Jika Anda ingin memperbarui database Anda secara manual, kunjungi situs web berikut dan unduh file ini:
Salin file ke folder vulscan Anda:
/vulscan/
Jika deteksi versi mampu mengidentifikasi versi perangkat lunak dan database kerentanan memberikan rincian tersebut, data ini juga cocok.
Menonaktifkan fitur ini mungkin menimbulkan positif palsu tetapi mungkin juga menghilangkan negatif palsu dan sedikit meningkatkan kinerja. Jika Anda ingin menonaktifkan pencocokan versi tambahan, gunakan argumen berikut:
--script-args vulscanversiondetection=0
Deteksi versi vulscan hanya sebaik deteksi versi Nmap dan entri database kerentanannya. Beberapa database tidak memberikan informasi versi yang konklusif, sehingga dapat menyebabkan banyak kesalahan positif (seperti yang terlihat pada server Apache).
Skrip mencoba mengidentifikasi yang paling cocok saja. Jika tidak ada kecocokan positif yang ditemukan, kecocokan terbaik (dengan kemungkinan positif palsu) akan ditampilkan.
Jika Anda ingin menampilkan semua kecocokan, yang mungkin menimbulkan banyak kesalahan positif namun mungkin berguna untuk penyelidikan lebih lanjut, gunakan argumen berikut:
--script-args vulscanshowall=1
Mode interaktif membantu Anda mengganti hasil deteksi versi untuk setiap port. Gunakan argumen berikut untuk mengaktifkan mode interaktif:
--script-args vulscaninteractive=1
Semua hasil pencocokan dicetak satu per baris. Tata letak default untuk ini adalah:
[{id}] {title}n
Dimungkinkan untuk menggunakan struktur laporan lain yang telah ditentukan sebelumnya dengan argumen berikut:
--script-args vulscanoutput=details
--script-args vulscanoutput=listid
--script-args vulscanoutput=listlink
--script-args vulscanoutput=listtitle
Anda dapat menerapkan struktur laporan Anda sendiri dengan menggunakan argumen berikut (beberapa contoh):
--script-args vulscanoutput='{link}n{title}nn'
--script-args vulscanoutput='ID: {id} - Title: {title} ({matches})n'
--script-args vulscanoutput='{id} | {product} | {version}n'
Elemen berikut yang didukung untuk templat laporan dinamis:
Setiap database default dilengkapi dengan url dan link, yang digunakan selama pemindaian dan dapat diakses sebagai {link} dalam template laporan yang disesuaikan. Untuk menggunakan link database kustom, gunakan argumen berikut:
--script-args "vulscandblink=http://example.org/{id}"
Perlu diingat bahwa pemindaian kerentanan turunan semacam ini sangat bergantung pada keyakinan deteksi versi nmap, jumlah kerentanan yang terdokumentasi, dan keakuratan pencocokan pola. Keberadaan potensi kelemahan tidak diverifikasi dengan teknik pemindaian atau eksploitasi tambahan.