Armory is a tool meant to take in a lot of external and discovery data from a lot of tools, add it to a database and correlate all of related information. It isn’t meant to replace any specific tool. It is meant to take the output from various tools, and use it to feed other tools.

Additionally, it is meant to be easily extendable. Don’t see a module for your favorite tool? Write one up! Want to export data in just the right format for your reporting? Create a new report!

Also Read Delta – SDN Security Evaluation & Penetration Testing Framework

Installing Armory

Clone the repo:

git clone

Install the dependencies:

pip install -r requirements

Now set up the configuration:

cd config
copy settings.ini.sample settings.ini

Next edit settings.ini and modify the base_path option. This should point to the root path you are using for your current project. You should change this with every project, so you will always be using a clean database. All files generated by modules will be created in here, as well as the sqlite3 database.

Usage of Armory

Usage is split into modules and reports.


Modules run tools, ingest output, and write it to the database. To see a list of available modules, type:

./ -lm

To see a list of module options, type:

./ -m <module> -M


Reports are similar to modules, except they are meant to pull data from the database, and display it in a usable format. To view all of the available reports:

./ -lr

To view available report options:

./ -r <report> -R