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 details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

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

Uploaded Python 2Python 3

File details

Details for the file simple5ploit-1.0.2.tar.gz.

File metadata

  • Download URL: simple5ploit-1.0.2.tar.gz
  • Upload date:
  • Size: 78.6 kB
  • Tags: Source
  • Uploaded using 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

File hashes

Hashes for simple5ploit-1.0.2.tar.gz
Algorithm Hash digest
SHA256 6cb8e101b9fc04d6ce6a87aa99cb09e6ef009d7019a490fd8b0b75b8862c4bb7
MD5 79b386be7e300cd0ed5687926abe1c08
BLAKE2b-256 02c41ad6a3465aecefed08e7df315cea491e2d74e3866ad1396e1efb81b5e61e

See more details on using hashes here.

File details

Details for the file simple5ploit-1.0.2-py2.py3-none-any.whl.

File metadata

  • Download URL: simple5ploit-1.0.2-py2.py3-none-any.whl
  • Upload date:
  • Size: 21.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using 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

File hashes

Hashes for simple5ploit-1.0.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 6d592cb11aa4487a8eded05f0858f5c6173b6fc589cf5a3a3266668fa9d597eb
MD5 bf61be3e18615e14c22de81432c5dfce
BLAKE2b-256 03dbc35698eebcfa1df03b457672777da214b604d0189c25d09b682f6d40989c

See more details on using hashes here.

Supported by

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