Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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 systemExploitPlugin 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)
  • CLIedf command with subcommands

Install

pip install -e .

Usage

# 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

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

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

About

Exploit Development Framework - Framework for exploit development and debugging

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages