Giter VIP home page Giter VIP logo

msploitego's Introduction

msploitego - The Pentesting suite for Maltego

Alt-text

maltegosnapshot01

maltegosnapshot02a

maltegosnapshot03a

THIS IS A BETA RELEASE, please be nice and report any issues

Whats New

  • New Features
    • Now supporting multiple workspaces for Metasploit via Postgres queries
    • A bash script that runs tons of auxiliary modules against targets. Really 'fattens' up the Metasploit DB
    • transforms:
      • Enum Metasploit Workspaces
      • Nikto Parser [from file]
      • Enum4linux paser from file
      • DNS scan
  • Bug Fixs
    • nmap based transforms returning false negative
    • bad paths

msploitego leverages the data gathered in a Metasploit database by enumerating and creating specific entities for services. Services like samba, smtp, snmp, http have transforms to enumerate even further. Entities can either be loaded from a Metasploit XML file or taken directly from the Postgres msf database

I am open to hearing suggestions for new transforms and enhancements!!!

Requirements

  • Python 2.7
  • Has only been tested on Kali Linux
  • software installations
    • Metasploit Framework
    • nmap
    • enum4linux
    • snmp-check
    • nikto
    • exploitdb
    • wpscan

Installation

  • In Maltego import config from msploitego/src/msploitego/resources/maltego/msploitego.mtz
  • checkout and update the transform path inside Maltego
    • easiest way would be to create a symbolic link to the transforms directory in /root/)
    • ln -s /path/to/your/msploitego/src/msploitego/transforms /root/

General Use

Using exported Metasploit xml file

  • run a db_nmap scan in metatasploit, or import a previous scan
    • msf> db_nmap -vvvv -T5 -A -sS -ST -Pn

    • msf> db_import /path/to/your/nmapfile.xml

    • export the database to an xml file

    • msf> db_export -f xml /path/to/your/output.xml

    • In Maltego drag a MetasploitDBXML entity onto the graph.

    • Update the entity with the path to your metasploit database file.

    • run the MetasploitDB transform to enumerate hosts.

    • from there several transforms are available to enumerate services, vulnerabilities stored in the metasploit DB

  • This method is not recommended due to performance constraints. If the XML file is large then running transforms will consume a lot of memory

Using Postgres(recommended!)

  • drag and drop a Postgresql DB entity onto the canvas, enter DB details.
  • run the Postgresql transforms directly against a running DB
  • if you dont know the password for your postgresql instance look in /usr/share/metasploit-framework/config/database.yml

Recommendations

  • Start by beefing up your Metasploit DB
    • look at msploitstarter.sh in the scripts directory. It's run nmap and then tons of auxiliary modules to fatten up your Metasploit DB.
    • run a detailed nmap scan. i.e. db_nmap -vvvv -sS -sV -sU -A -T5 1.1.1.1/24
    • Import results from Nessus or OpenVAS into Metasploit and use the Enum Vulnerabilities transform.
    • Run the auxiliary/crawler/msfcrawler on all http/https ports. This will gather useful data.
  • Run nikto scan with xml output then enter the full path filename in the 'Nikto File' field. Run the Nikto parser to enumerate.

TODO's

  • Connect directly to the postgres database - BETA
  • Much, much, much more tranforms for actions on generated entities.

Known Issues

  • some Metasploit enitities like loot files sometimes contain a bad character which the MaltegoTransform class cannot process. This causes an exception and nothing returned. I've beaten my head against the wall trying to 'cleanse'/decode the data but to no avail.

msploitego's People

Contributors

shizzz477 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

msploitego's Issues

Python 3

Hello Shizzz477,

Hope you are well,
I first wanted to tell you that I am impressed by the work you did on this project, this is amazing, I wanted to test it however, I am unfortunately not able to do it since there's no way to let scripts working since Python 2 is EOL.

I was wondering if you had any idea how to fix this ?

Thank you in advance Shizzz

Error running local transform: java.io.IOException

Following the Maltego tutorial I'm currently having issues and getting this:

Error running local transform: java.io.IOException: Cannot run program "/usr/bin/python" (in directory "/root/transforms"): error=2, No such file or directory (from entity "msf")

What Should I Do? Error running local transform~!

When I transformed xml object, An error message came up.

Error running local transform: java.io.IOException:Cannot run program "/usr/bin/python" (in derectory "/root/proj/oscp-maltego/msploitego/src/msploitego/transforms"): error=2, No such file or directory....

Please Help Me.

What Should I Do?

Exploit DB data throwing unicode error

when capturing the output of searchsploit, the MaltegoTransform doesn't like the content throwing and invalid XML element unicode error.
There are no encoded unciode data, so needs to be investigated further

Python environment Setup

Hello,

I have an issue with my Python environment:
When setting up a PostgreSQL entity for the Metasploit DB, python ends up with Invalid Syntax errors, because my default /usr/bin/python is not Python 2.7

I don't want to change the path with a hard-coding technique, so that I won't face problems with other applications.

Therefore I created a virtual environment the following way:
In the msploitego base directory: I run 'virtualenv2 .'
I activate the virtual environment : 'source ./bin/activate'
Then I run 'pip install -r requirements.txt' => First issue: Packages are either deprecated or not found.

However, after relaunching Maltego, I still have the same invalid syntax errors, which means it doesn't change the path to the good python version.
Thanks for your help !

PS: Your project seems interesting with regards to integration of various software into Maltego. I'll try to look at it and maybe build a few stuff. What are the most important things to be done first ?

Possible to point to a different Postgresql instance?

Outstanding looking tool!

I use Metasploit Pro locally and on remote dropboxes via VPN.

Is it possible to connect to DB on a different port and remote IP?

My local MSP database.yml:

adapter: "postgresql"
database: "msf3"
username: "msf3"
password: "XXXXXXXXXX"
port: 7337
host: "localhost"
pool: 256
timeout: 5

Deprecated?

just wondering is this great project deprected? is there any work going on? didnt find any newer fork but just wondering.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.