Sploitus

exploit-development-framework

githubexploit Β· 2026-08-08

Exploit Code

README89 lines
## https://sploitus.com/exploit?id=042E0A15-47C1-5A6C-9C8B-62BCDB7570BE
# Exploit Development Framework (EDF)

A modular, educational exploit development framework. Each vulnerability is a plugin,
with payload generation, shellcode encoding, target validation, and post-exploitation
modules. **All payloads and exploits are inert, educational demos** β€” nothing here
contacts a network or executes on a real target.

## Features

- **Plugin system** β€” `ExploitPlugin` base class, auto-discovering registry
- **Payload generation** β€” command, reverse shell, bind shell, meterpreter, staged
- **Shellcode encoders** β€” XOR, ADD, noop; chainable; bad-char validation
- **Crash analysis** β€” parse dumps, find offsets to saved return addresses
- **Recon** β€” offline host fingerprinting and network enumeration (authorization-gated)
- **CLI** β€” `edf` command with subcommands

## Install

```bash
pip install -e .
```

## Usage

```bash
# list plugins
edf plugins

# check a target against a plugin
edf check heartbleed-mock demo

# run an exploit (inert demo only)
edf exploit heartbleed-mock demo

# generate a payload template
edf generate reverse_shell --host 10.0.0.5 --port 4444

# cyclic pattern tools for crash analysis
edf pattern 512
edf pattern 512 --offset bcaa

# recon (offline)
edf fingerprint 10.0.0.1 --port 445 --service smb
edf scan 192.0.2.0/24
```

## Writing a plugin

```python
from edf.plugins import ExploitPlugin, ExploitResult

class MyExploit(ExploitPlugin):
    name = "my-exploit"
    description = "Educational demo of a vulnerability pattern"
    severity = "high"

    def check(self, target) -> bool:
        return getattr(target, "vulnerable", False)

    def exploit(self, target) -> ExploitResult:
        if not self.check(target):
            return ExploitResult(ok=False, message="not vulnerable", plugin=self.name)
        return ExploitResult(ok=True, message="exploited (demo)", plugin=self.name)
```

Drop the file into `edf/plugins/` and `edf plugins` picks it up automatically.

## Testing

```bash
python -m pytest
```

## Ethics

For authorized testing and security research only. Unauthorized access to computer
systems is illegal in most jurisdictions. This framework is intentionally inert;
deploying it against real systems would require implementing real network behavior.

## Architecture

- `edf/plugins/` β€” exploit plugins (auto-loaded)
- `edf/payloads.py` β€” payload generation
- `edf/shellcode.py` β€” encoders and bad-char handling
- `edf/crash.py` β€” crash dump analysis
- `edf/recon.py` β€” fingerprinting and scanning
- `edf/framework.py` β€” sessions and logging
- `edf/cli.py` β€” command-line interface