Skip to main content

pwninit

Tests Status

A Python toolkit for CTF binary exploitation. Streamline setup, development, and execution of exploits with automated binary analysis, library management, and template generation.

📖 Full documentation: pwninit.0xb0tm4n.org

Installation

pip install pwninit.py

Basic Usage Example

Setup the chall:

$ pwninit

Edit exploit.py:

from pwninit import *

Config(
    binary="./chall",
    libc="./libc.so.6"
)


def setup(args: Args, config: Config):
    open("flag.txt", "w").write('flag{hello}')


def exploit(ctx: PwnContext, io: IOContext):
    exe = ctx.elf
    libc = ctx.libc

    ctx.offset = 128
    sl(ret2win('shell', ret=False))
    itrv()

Run the exploit:

$ run

Metadata

Release files for pwninit.py 0.1.6

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

Source distribution (sdist)

Source distribution for pwninit.py 0.1.6
File Size Uploaded
pwninit_py-0.1.6.tar.gz 6.5 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for pwninit.py 0.1.6
File Interpreter ABI Platform
pwninit_py-0.1.6-py3-none-any.whl Python 3 none any Details

Total release size: 6.5 MB

Release files / pwninit_py-0.1.6.tar.gz

Download URL pwninit_py-0.1.6.tar.gz
Size 6.5 MB
Tags Source
SHA-256 checksum
How to use checksums
ee232139ec96fa6f35348af55ac45e6e2c60178dcad4ec499e464e96aab57efb
BLAKE2b-256 checksum
How to use checksums
2576f7447022799b08e9acae94b617cd6144a56321b47804901f50a6d16d8c0a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 14, 2026.

Transparency log

Release files / pwninit_py-0.1.6-py3-none-any.whl

Download URL pwninit_py-0.1.6-py3-none-any.whl
Size 55.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
085ca132b712a5c15ceffce81999fd686a3c19d20b22ed51dbcd0a4d9eebb8f3
BLAKE2b-256 checksum
How to use checksums
ae485b27e045267008059e02454dccc1d9f16c0ff4ebaa55ec2ea048e05458f9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 14, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.6 This release

2 release files

0.1.5

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.0

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