FreeVulnSearch : Script to Query Vulnerabilities via the cve-search.org API

This NMAP NSE script is part of the Free OCSAF project FreeVulnSearch.

In conjunction with the version scan “-sV” in NMAP, the corresponding vulnerabilities are automatically assigned using CVE (Common Vulnerabilities and Exposures) and the severity of the vulnerability is assigned using CVSS (Common Vulnerability Scoring System).

For more clarity, the CVSS are still assigned to the corresponding v3.0 CVSS ratings:

  • Critical (CVSS 9.0 – 10.0)
  • High (CVSS 7.0 – 8.9)
  • Medium (CVSS 4.0 – 6.9)
  • Low (CVSS 0.1 – 3.9)
  • None (CVSS 0.0)

The CVEs are queried by default using the CPEs determined by NMAP via the ingenious and public API of the cve-search.org project, which is provided by circl.lu.

The queries are made using the determined CPE via the circl.lu API. For further information on the confidentiality of the circl.lu API, please visit the website directly.

The best way is to install cve-search locally and use your own API with

Also Read – Top Best Useful Commands for Kali Linux?

nmap -sV –script freevulnsearch –script-args apipath=

Installation:

You can either specify the script path directly in the NMAP command, for example

nmap -sV –script ~/freevulnsearch

or copy the script into the appropriate directory of your NMAP installation.

In KALI LINUX™ for example: /usr/share/nmap/scripts/
sudo nmap –script-ubdatedb

Important note: First read the confidentiality information. It is recommended to run freevulnsearch.nse separately without additional NSE scripts. If you do not want to make an assignment to the category safe, vuln and external, then do not execute the nmap –script-updatedb command mentioned above.

Usage:

The usage is simple, just use NMAP -sV and this script.

nmap -sV –script freevulnsearch

According to my tests, for stability reasons, only http without TLS should be used when querying the API for many simultaneous requests.

For this reason, you can optionally disable TLS using an input argument. Important, after that the API query to circl.lu is unencrypted.

nmap -sV –script freevulnsearch –script-args notls=yes

If you scan with the categories safe or vuln then exclude the script or the category external or do not add the script to the NMAP default directory. It is recommended to run freevulnsearch.nse separately without additional NSE scripts.

CPE exception handling for format:

If a NMAP CPE is not clear, several functions in the freevulnsearch.nse script check whether the formatting of the CPE is inaccurate. For example:

  • (MySQL) 5.0.51a-3ubuntu5 -to- 5.0.51a
  • (Exim smtpd) 4.90_1 -to- 4.90
  • (OpenSSH) 6.6.1p1 -to- 6.6:p1
  • (OpenSSH) 7.5p1 -to- 7.5:p1
R K

Recent Posts

Install phpMyAdmin on Ubuntu 18.04 with Apache: Setup Guide

phpMyAdmin is a free, open-source PHP application that provides a browser-based interface for managing MySQL and…

9 hours ago

Install Zabbix on Ubuntu 18.04: Server Setup with MySQL Backend

Zabbix is a mature open-source infrastructure monitoring platform that collects metrics from network devices, servers, virtual…

9 hours ago

Install Gradle on Ubuntu 18.04: Set Up OpenJDK and Environment

Gradle is a powerful open-source build automation tool used primarily for Java, Kotlin, Groovy, and Android…

10 hours ago

Install TeamViewer on Ubuntu 18.04: Download the .deb and Set Up

TeamViewer is a proprietary cross-platform remote access application for remote control, desktop sharing, file transfer, and online meetings. It is one of the most widely used remote support tools in the world, available for Windows, macOS, Linux, iOS, and Android. TeamViewer is not included in the Ubuntu repositories because it is proprietary software. This guide covers how to install TeamViewer on Ubuntu 18.04 using the official .deb package. The same steps apply to Ubuntu 16.04, Debian, Linux Mint, and Elementary OS. <strong>Prerequisite:</strong>&nbsp;You&nbsp;need&nbsp;sudo&nbsp;access. Install TeamViewer on Ubuntu: Download the .deb Package Download the official TeamViewer .deb package. The _amd64.deb suffix indicates this package is for 64-bit x86-64 systems. For ARM-based machines, download the appropriate package from the TeamViewer Linux downloads page: bashwget https://download.teamviewer.com/download/linux/teamviewer_amd64.deb Install the package using apt. The ./ prefix tells apt this is a local file path, not a package name from the repositories:…

10 hours ago

Install Nagios Core on Ubuntu 18.04: Build from Source Guide

Nagios is one of the most widely used open-source infrastructure monitoring systems in the world. It…

10 hours ago

Install Laravel on Ubuntu 18.04 with Composer: Setup Guide

Laravel is an open-source PHP web application framework built around an expressive, developer-friendly syntax. It is…

1 day ago