Nmap sebagai Vulnerability Scanner

Aaaah udah lama ga nge-blog 😀

Akhir-akhir ini perkembangan script di Nmap sangat pesat, salah satunya adalah –script=vulscan yang dibuat oleh Marc Ruef <marc.ruef () computec ch>.

Script ini menggunakan database vulnerability dari OSVDB: The Open Source Vulnerability Database, mengenai OSVDB bisa dilihat disini

Dengan menggunakan script ini membuat nmap menjadi seperti nessus, openvas, nexpose dll. tetapi menurut Marc masih terdapat kekurangan dan kesalahan dalam hasil scan-nya. Walaupun begitu mari kita tetap mencobanya 🙂

Pertama download script-nya dulu disini, file download-nya berupa tar.gz, diextract dulu:

tar -xvf nmap_nse_vulscan-0.6-20110427.tar.gz

Taruh (copy) folder /vulscan hasil extract diatas di folder lokasi script Nmap, karena saya menggunakan BT5 maka berada di /usr/local/share/nmap/scripts/ dan /opt/framework3/share/nmap/scripts/ (yup, skrg nmap telah menjadi bagian dari Metasploit Framework).

Didalam folder /vulscan dapat dilihat bahwa terdapat file object_correlations.txt, object_links.txt,  object_products.txt, vulnerabilities.txt dan vulscan.nse.

(Klik gambar untuk memperbesar).

Tampaknya semua database yang ada di OSVDB ditaruh dalam file vulnerabilities.txt, dan file object_*.txt adalah file yang digunakan vulscan.nse untuk mencocokkan data hasil fingerprint dengan vulnerabilities yang ada.

Sudah?? mari kita mencoba sebuah scan:

nmap -PN -sS -sV --script=vulscan -p80 scanme.nmap.org -oN test.txt

Kalau diurutkan line diatas menunjukkan nmap sedang melakukan:
Treat all host alive (-PN), syn scan (-sS), services dan version scan (-sV), menggunakan script vulscan (–script=vulscan), pada port 80 dari website scanme.nmap.org (-p80 scanme.nmap.org) dan hasil scan disimpan di file test.txt (-oN test.txt).

Hasilnya:


Karena memang website scanme.nmap.org dibuat untuk target, maka hasil vulnerability yang dihasilkan juga cukup byk 🙂

Dalam contoh diatas dapat dilihat angka dari ID OSVDB dan vulnerability yang ditunjukkan adalah hasil dari fingerprinting port/service yang dicocokkan dengan database OSVDB pada direktori /vulscan tadi.

Tampaknya setelah dilihat-lihat data yang muncul di hasil scanning diatas banyak sekali….
Ternyata kelemahan yang telah disebutkan Marc adalah hasil scanning nmap dengan database OSVDB yang kurang sinkron karena perbedaan konversi nama produk dan vulnerabilities-nya.

The current implementation uses, if executed with no further options, a full-text search of the title field in the vulnerabilities table to determine affected products. The reason for this simple approach called title lookup is, that nmap and osvdb do not share the same naming conventions for products and osvdb does not provide full support of the linking between products and vulnerabilities. This mode may cause some false-positives (e.g. Apache httpd).

Untuk mengurangi kesalahan/kelemahan tersebut, sebaiknya ditambahi –script-args vulscancorrelation=1 menjadi:

nmap -PN -sS -sV --script=vulscan --script-args vulscancorrelation=1 scanme.nmap.org -oN test.txt

Well, bagaimana menurut anda?? cukup keren kan?

Belum juga :p, karena tampaknya Marc sedang merencanakan untuk menambahkan database dari "SecurityFocus, CVE dan Secunia” sehingga makin lengkap (ini baru keren :thumbup).

Silahkan ditelusuri lebih lanjut, masih banyak jalan berkelok dan gang buntu didepan 😀

Jangan lupa database OSVDB-nya diupdate terlebih dahulu sebelum digunakan, download disini (pilih format XML).

Semoga bermanfaat,
M

Sumber:
http://seclists.org/nmap-dev/2010/q2/726

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

  Subscribe  
Notify of