Skip to main content

Python NMAP library enabling you to start async nmap tasks, parse and compare/diff scan results

Project description

Code status

Build Status

Use cases

libnmap is a python library enabling python developpers to manipulate nmap process and data.

libnmap is what you were looking for if you need to implement the following:

  • automate or schedule nmap scans on a regular basis

  • manipulate nmap scans results to do reporting

  • compare and diff nmap scans to generate graphs

  • batch process scan reports

The above uses cases will be easy to implement with the help of the libnmap modules.

libnmap modules

The lib currently offers the following modules:

  • process: enables you to launch nmap scans

  • parse: enables you to parse nmap reports or scan results (only XML so far) from a file, a string,…

  • report: enables you to manipulate a parsed scan result and de/serialize scan results in a json format

  • diff: enables you to see what changed between two scans

  • common: contains basic nmap objects like NmapHost and NmapService. It is to note that each object can be “diff()ed” with another similar object.

  • plugins: enables you to support datastores for your scan results directly in the “NmapReport” object. from report module:

  • mongodb: insert/get/getAll/delete

  • sqlalchemy: insert/get/getAll/delete

  • aws s3: insert/get/getAll/delete (not supported for python3 since boto is not supporting py3)

  • csv: todo (easy to implement)

  • elastic search: todo

Documentation

All the documentation is available on read the docs. This documentation contains small code samples that you directly reuse.

Dependencies

libnmap has by default no dependencies.

The only additional python modules you’ll have to install depends if you wish to use libnmap to store reports on an exotic data store via libnmap’s independents plugins.

Below the list of optional dependencies:

Python Support

The libnmap code is tested against the following python interpreters:

  • Python 2.6

  • Python 2.7

  • Python 3.3

  • Python 3.4

Install

You can install libnmap via pip:

pip install libnmap

or via git:

$ git clone https://github.com/savon-noir/python-libnmap.git
$ cd python-libnmap
$ python setup.py install

Examples

Some codes samples are available in the examples directory or in the documentation.

Among other example, you notice an sample code pushing nmap scan reports in an ElasticSearch instance and allowing you to create fancy dashboards in Kibana like the screenshot below:

Kibanane

Contributors

Mike @bmx0r Boutillier for S3 and SQL-Alechemy plugins and for the constructive critics. Thanks!

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python-libnmap-0.6.2.tar.gz (36.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

python-libnmap-0.6.2.linux-x86_64.exe (99.5 kB view details)

Uploaded Source

File details

Details for the file python-libnmap-0.6.2.tar.gz.

File metadata

File hashes

Hashes for python-libnmap-0.6.2.tar.gz
Algorithm Hash digest
SHA256 9b2a7132c519c2610a750f49a65d016ac6bcdbcdbb9c2a1ca1f0e343911af903
MD5 69db82db0b592b0ffff49bc62ec06f5c
BLAKE2b-256 d1046ff5d2956a37f63715642340988518ab8fdccb4ff9c48d896559384cd43f

See more details on using hashes here.

File details

Details for the file python-libnmap-0.6.2.linux-x86_64.exe.

File metadata

File hashes

Hashes for python-libnmap-0.6.2.linux-x86_64.exe
Algorithm Hash digest
SHA256 104d5bd6d92465d9ac9992937c6ef7af9bb0983e7285536a535b8164a0f683a3
MD5 220d217ec667ec25dc5e341ee5c261f6
BLAKE2b-256 6b38b71a7851416707b7a5a07219319588076cbaaeba2665af5487285442a40d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page