CLI tool for pwn challenges, streamlining debugging and exploitation
Top 75.9% on sourcepulse
pwncli is a Python-based command-line tool designed to streamline the debugging and exploitation of binary vulnerabilities, primarily for CTF (Capture The Flag) competitions. It aims to reduce repetitive tasks during binary exploitation, allowing users to focus on crafting exploit payloads. The tool supports three modes: command-line interaction, script encapsulation, and library import, catering to both interactive debugging and automated exploit development.
How It Works
pwncli employs a main command-subcommand structure, similar to Git, with commands like debug
, remote
, config
, misc
, patchelf
, and qemu
. It leverages click
for command-line interface generation and pwntools
for core exploitation functionalities. The tool's extensibility is a key feature, allowing users to add custom commands by creating new Python files in a specific directory. It also offers features like prefix matching for commands and integrates with debugging environments like tmux and WSL.
Quick Start & Requirements
pip3 install --editable .
after cloning the repository, or pip3 install pwncli
.click
, pwntools
, ropper
. For specific features like patchelf
, patchelf
and glibc-all-in-one
are needed. WSL is recommended for enhanced debugging on Windows.pip3 install --editable .
is recommended for easy updates. Ensure the installation path is added to your system's PATH environment variable.Highlighted Details
Maintenance & Community
The project is maintained by RoderickChan. Users can reach out via email (roderickchan@foxmail.com) or submit issues and pull requests on GitHub. Links to personal blogs are provided for updates and discussions.
Licensing & Compatibility
The repository does not explicitly state a license in the provided README. Compatibility for commercial use or closed-source linking would require clarification on the licensing terms.
Limitations & Caveats
Windows support is limited, with the debug
command being unavailable and remote
only partially functional. The README strongly recommends using Ubuntu or WSL for the best experience, particularly for the debug
command's WSL-specific features.
3 months ago
Inactive