Nmap's CPE to nvd CVE

The Vision is a tool for finding obsolete services

Trinity using nmap in Matrix movie 1999 - https://en.wikipedia.org/wiki/The_Matrix

Etymology

Hello everyone welcome to my gitbook, today we gonna back to seven years ago when a friend have been written an incredible tool called Hellraiser, this tool is made in Ruby language, by engine uses resources to load Nmap's XML file and parses to extract CPE for each service of Host, the second step uses a string of CPE to search in mainstream databases of vulnerability, yes Hellblazer brings vulnerability on the fly, different of a lot of vulnerability scanners that use an obsolete local cache of services versions with correlation with CVE and need an update every random periodicity.

Yes, exists a lot of complexity behind complete vulnerabilities scanners. For example, OpenVAS uses OVAL, lib microHTTPd in greenbone but this explanation is not a better hour to hold because it is very complex to explain, you know this jump out of the context of the post.

The Vision

So, I do not remember real motivation; a significant purpose is for simplicity. I have changed the idea of Hellblazer. However, I have replaced Ruby with python, creating a full communication using the NIST database and the option to create a CSV file. Yes, I have written a new source code.

So back again, a good idea about this context is to create a tool to check vulnerability in each service from any host, so the first point is to load XML and proper load a parser. So many courses exist to do it, for example, SAX, DOM, automatons and another way. So of curiosity, I have written in SAX and DOM way, both just for fun. The last step is to create a proper communication to the NIST vulnerability database called NVD to search for new security issues around each service banner from the host. Alright, ladies and gentlemen, meet the Vision tool(DOM parser version).

Example:

DOM parser version

SAX parser version(just for fun)

Thank you for reading this.

Cheers!

Last updated