Skip to main content

simple5ploit

Project description

simple5ploit

simple5ploit is an exploitation/information gathering framework designed for Python3 scripts. If you have any Python scripts that you would others to use, please see the instructions in the README on how to contribute to simple5ploit. simple5ploit currently doesn't have many scripts but over time I thought the cybersecurity community will help build it's script repository.

Setup

pip3 install simple5ploit

OR

git clone https://github.com/binexisHATT/simple5ploit
cd simple5ploit
python3 -m simple5ploit

Simple5ploit's Interface

simple5ploit: Main Interface

simple5ploit: CLI Help Menu

usage: python3 -m simple5ploit [-h] [-q] [-l] [-m MODULE] [-s PORT]

optional arguments:
  -h, --help            show this help message and exit
  -q, --quite           don't print simple5ploit banner
  -l, --list-modules    list all available modules
  -m MODULE, --module MODULE
                        specify module to load
  -s PORT, --server PORT
                        HTTP server using `http.server` module

simple5ploit: Autotab Completion Capabilites

simple5ploit: Listing Available Modules And Loading Directly Into Them

Contributing to Simple5ploit

  1. Fork simple5ploit's repo
  2. Watch this video on how to fork and make pull requests if you don't know how to do so already
  3. Make a pull request with your exploit or gather module and I'll add your exploit or gather module to simple5ploit

Creating an Exploit Module

NOTE: all exploit modules created should exist in the path: simple5ploit/simple5ploit/modules/exploits and must end with a .py extension!!!

# importing the parent exploit class
from .internal.base import Exploit

# defining an exploit module class
class SomeExploit(Exploit):
  def __init__(self):
    # exploit module custom prompt
    self.prompt = "[CustomExploitPrompt] :> "

    # exploits pip dependencies
    self.pip_dependencies = [
      "requests",
      "impacket"
    ]
    
    # exploit module information dict
    self.info = {
      "Author": "Alexis Rodriguez",
      "Description": "An example exploit class"
    }
    
    # exploit module arguments dict
    self.args = {
      "some_argument":
        {
          "description": "an argument for this example exploit class",
          "required": True }
    }
    
    # initializing class variables for exploit arguments with values set to `N/a`
    # ::they could also be set to empty string
    for arg in self.args.keys():
      self.__dict__[arg] = "N/a"
      
  def check(self):
    """
    If implemented, this function checks if the target
    is vulnerable to the exploit. If it's not implemented,
    a ```NotImplementedError``` will be raised and handled accordingly by
    simple5ploit's cli
    """
    pass
        
  def run(self):
    """
    This function is where the exploit code should be placed.
    If it's not implemented, a ```NotImplementedError``` will be raised
    and handled accordingly by simple5ploit's cli.
    """
    pass
    

Creating a Gather Module

NOTE: all gather modules created should exist in the path: simple5ploit/simple5ploit/modules/gather and must end with a .py extension!!!

# importing the parent gather module class
from .internal.base import Gather

# defining a gather module class
class SomeGatherModule(Gather):
  def __init__(self):
    # gather module custom prompt
    self.prompt = "[CustomPrompt] % "

    # exploits pip dependencies
    self.pip_dependencies = [
      "psutil",
      "pefile"
    ]
    
    # gather module information dict
    self.info = {
      "Author": "Alexis Rodriguez",
      "Description": "An example informating gather module class"
    }
    
    # gather module arguments dict
    self.args = {
      "some_argument":
        {
          "description": "an argument for this example gather module class",
          "required": True }
    }
    
    # initializing class variables for script arguments with values set to `N/a`
    # ::they could also be set to empty string
    for arg in self.args.keys():
      self.__dict__[arg] = "N/a"
      
  def run(self):
    """
    This function is where the code for this gather module should be placed.
    If it's not implemented, a ```NotImplementedError``` will be raised.
    """
    pass

Simple5ploit Server

Quickly launch a Python3 HTTP server with:

simple5ploit -s [port]

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

simple5ploit-1.0.2.tar.gz (78.6 kB view hashes)

Uploaded Source

Built Distribution

simple5ploit-1.0.2-py2.py3-none-any.whl (21.5 kB view hashes)

Uploaded Python 2 Python 3

Supported by

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