Skip to main content

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]

Release files for simple5ploit 1.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for simple5ploit 1.0.2
File Size Uploaded
simple5ploit-1.0.2.tar.gz 78.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for simple5ploit 1.0.2
File Interpreter ABI Platform
simple5ploit-1.0.2-py2.py3-none-any.whl Python 2, Python 3 none any Details

Total release size: 100.1 kB

Release files / simple5ploit-1.0.2.tar.gz

Download URL simple5ploit-1.0.2.tar.gz
Size 78.6 kB
Tags Source
SHA-256 checksum
How to use checksums
6cb8e101b9fc04d6ce6a87aa99cb09e6ef009d7019a490fd8b0b75b8862c4bb7
BLAKE2b-256 checksum
How to use checksums
02c41ad6a3465aecefed08e7df315cea491e2d74e3866ad1396e1efb81b5e61e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.5

Release files / simple5ploit-1.0.2-py2.py3-none-any.whl

Download URL simple5ploit-1.0.2-py2.py3-none-any.whl
Size 21.5 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
6d592cb11aa4487a8eded05f0858f5c6173b6fc589cf5a3a3266668fa9d597eb
BLAKE2b-256 checksum
How to use checksums
03dbc35698eebcfa1df03b457672777da214b604d0189c25d09b682f6d40989c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.3.0 pkginfo/1.7.0 requests/2.25.1 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.8.5

Release history Release notifications | RSS feed

This release

1.0.2 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page