I want to re-write metasploit? Really?
Tags: metasploit, ipam, network, management
Published: 2018-08-30 21:54:37

---
title: I want to re-write metasploit? Really?
published: true
description: Metasploit, the re-inventing
tags: metasploit, ipam, network, management
cover_image: https://thepracticaldev.s3.amazonaws.com/i/kkbayeeyqounn5221bjz.jpg
---

I've had a flurry of app ideas and notions I want to put to code recently. I've been hitting the bits hard sharpening my Python skills. I'm developing some scrapy based web scrapers for a few apis I want to make public, I'm learning [Dart](https://www.dartlang.org/)/[Flutter](https://flutter.io/) because I want to write a mobile app to consume the afore mentioned APIs I'm developing. Javascript is a constant learning process, and NodeJS seems to be a requirement or preference in nearly every modern project; however, I can't look at Javascript/NodeJS the same after learning about Typescript -- ARGH!

None of that's the point though of this post though. I've had a business need on several occasions to perform network (ip/service) discovery and dump that information so it can be mangled and jangled in many different ways. I've not found a single [FOSS](https://en.wikipedia.org/wiki/Free_and_open-source_software) [IPAM](https://en.wikipedia.org/wiki/IP_address_management) solution that let's me do discovery, delta tracking over time, and the ability to annotate discovered hosts and services.

Digital Ocean released a software called [Netbox](https://github.com/digitalocean/netbox) that is wonderful, only.. There's no discovery, and basic service management. Netbox does have a wonderful [API](https://netbox.readthedocs.io/en/latest/api/overview/) that I could potentially use for discovery, only the inability to manage and handle network deltas and services really limit the use case of this otherwise brilliant software. 

You know what does network asset management well? [Metasploit](https://www.metasploit.com/). Metasploit is a penetration testing tool, you know what else it does really freaking well? Asset Management. I have several databases I keep, I scan work things, home things, other things... Metasploit does a great job of handling my scans and updating discovery. Metasploit, while a community edition does exist, is meant to be a tester's tool. What I need is a management tool.

So.. I'm considering using other projects to cobble together a solution to handle discovery, deltas, and presentation. Projects like [nmap](https://nmap.org/) and [masscan](https://github.com/robertdavidgraham/masscan) handle discovery *very* well, and export data in nearly any format I need. I could easily setup a 0MQ/MQTT system that handles regular scans, triggers in-depth scans, and generally manages discovery. I figure a graph database (neo4j?) to handle relationships, paired with a document database (I love Elasticsearch) for metadata, use Django or Meteor as a framework, and I might just have an interesting project on my hands.

Now I'm in the dilema of "should I do this?" - I have other projects I can be working on, and I'd like to find a project that actually pays. This project could be interesting, and hopefully helpful to other admins.

I guess we'll see.

Update:
Here are some more resources for IPAM:
https://alternativeto.net/software/netbox/?license=opensource
https://en.wikipedia.org/wiki/IP_address_management
https://github.com/kahun/awesome-sysadmin#service-discovery
https://www.g2crowd.com/categories/service-discovery
https://arcentry.com/api-docs/

<sub>Photo by [Markus Spiske](https://unsplash.com/photos/FXFz-sW0uwo)</sub>