Skip to content

Latest commit

 

History

History
48 lines (31 loc) · 1.36 KB

README.md

File metadata and controls

48 lines (31 loc) · 1.36 KB

Node Scanner

Deploy a Node Express server that accepts RESTful API calls to dynamically scan an IP address or a range of IP addresses with the popular NMap scanning tool or Masscan, converting the standard XML output to JSON.

Future plans are to include:

  • More open source scanning tools
  • Define an OpenAPI standard
  • Token authentication

Building

docker build -t ryanjoyce/nanner .

Starting

docker run -p 3000:3000 ryanjoyce/nanner

Scanning

Perform a simple POST request against http://<node-server-ip>:3000/api/<tool> where node-server-ip is the IP address of this newly created container and tool is the tool to be used for the scan. Refer below to the specific tool and the expected layout of the request.

NMap Scan

To scan with NMap, in the body of the POST request include a JSON blob of:

{
	"target": "<ip/cidr ip>",
	"args": "<args to pass to NMap>"
}

The server should then perform a scan using NMap, output to XML, and use a python script to convert the XML to JSON and return.

Note: Due to how XML works, there may be inconsistencies with data layout with the conversion from XML to JSON.

Masscan

To scan with Masscan, in the body of the POST request include a JSON blob of:

{
	"target": "<ip/cidr ip>",
	"args": "<args to pass to Masscan>"
}

The server will then perform the scan and output the results as JSON.