Nmap::Scanner is a set of perl classes that provide a programmatic interface to the nmap port scanning tool. Nmap does not at this point expose itself as a DLL or a shared object, so Nmap::Scanner parses the output from nmap as it runs. This is not ideal, but it works.
Nmap
provides several output formats; Nmap::Scanner
parses the output of the "normal" format
(-oN
).I use this format because in super-verbose mode
(-v -v -v
) nmap outputs a large amount of information
during the scan about what is happening. This allows me to hook callbacks
into the output stream and allows me to provide an event-driven programming
model option for Nmap::Scanner users.
As of the BetA 2.54 version, the XML output from nmap does not include the same "live" information that the normal output does in super-verbose mode, which means the callback functionality becomes crippled if I parse the XML. This is a shame because the XML output is supposed to be more stable and parsing it is easier. Hopefully as nmap development continues this will change. A bigger hope is that someone will produce a DLL or shared object version of nmap so that any scripting language that supports DLL/.so -> script glue can create a nice, efficient, OO interface to nmap. Once I learn C and the nmap source well enough I will take a stab at this.
Description |
URL |
---|---|
Latest version of Nmap::Scanner | http://webwizarddesign.com/nmap/latest.tar.gz |
Version 0.02 | http://webwizarddesign.com/nmap/Nmap-Scanner-0.02.tar.gz |
Version 0.01 | http://webwizarddesign.com/nmap/Nmap-Scanner-0.01.tar.gz |
Nmap::Scanner is also available via CPAN, the Comprehensive Perl Archive Network. New versions will appear here first, as I prefer to have people use and test a new version before it goes to the perl repository.