jas- / node-libnmap

API to access nmap from node.js
MIT License
256 stars 42 forks source link

libnmap

API to access nmap from node.js

npm Build Status Dependencies Downloads Known Vulnerabilities

install

To install npm install libnmap

methods

options

tests

To test npm test

examples

A default usage example. For more advanced and possible options please see here or simply look in the included examples/ folder.

scan

The example show shows the types of host ranges supported. In this example the default IANA range of reserved ports is scanned per host in each range (1024).

const nmap = require('libnmap');
const opts = {
  range: [
    'scanme.nmap.org',
    '10.0.2.0/25',
    '192.168.10.80-120',
    'fe80::42:acff:fe11:fd4e/64'
  ]
};

nmap.scan(opts, function(err, report) {
  if (err) throw new Error(err);

  for (let item in report) {
    console.log(JSON.stringify(report[item]));
  }
});

discover

The discover method requires nodejs < v0.11.2 and can be used to aquire information about neighbors per network interface.

const nmap = require('libnmap');

nmap.discover(function(err, report) {
  if (err) throw new Error(err);

  for (let item in report) {
    console.log(JSON.stringify(report[item]));
  }
});

sample reports

To see some output examples please take a look at the json (default) & xml reports.

contributing

Contributions are welcome & appreciated. Refer to the contributing document to help facilitate pull requests.

license

This software is licensed under the MIT License.

Copyright Jason Gerfen, 2013-2019.