Skip to main content

CLI tool for CTF management

Project description

pwnv

pwnv is a CLI tool for organizing Capture-the-Flag (CTF) challenges, solving them locally or remotely, and keeping your CTF workflow structured, synchronized, and efficient.


✨ Features

Feature Description
🗂 Workspace Organized folder structure for CTFs and challenges
📦 Virtual Envs Initializes isolated Python environments using uv
🔄 Remote Sync Pull challenges directly from CTFd instances using ctfbridge
🚀 Flag Submission Submit flags to remote platforms directly via CLI
🔎 Challenge Tagging Add searchable tags to solved challenges (e.g., fsop, xss, buffer overflow) for easy retrieval

🚀 Quickstart

# 1. Initialize environment
$ pwnv init --ctfs-folder ~/CTF
$ source ~/CTF/.pwnvenv/bin/activate

# 2. Create a CTF
$ pwnv ctf add picoctf-2025

# 3. Add a challenge
$ pwnv challenge add warmup

# 4. Solve the challenge and submit
$ cd warmup
$ pwnv solve

🌐 Fetch from remote CTF

When adding a CTF, you'll have the option to connect to a remote server. If you choose to do so, pwnv will pull all challenges into your local workspace — including attachments — and store .env and .session files for future authenticated access. All of this is powered by ctfbridge.


🧰 Commands

pwnv init                 Initialize a new workspace (creates folders, installs deps)
pwnv reset                Delete config files and/or workspace for a fresh new start
pwnv ctf add              Add a CTF (local or remote)
pwnv ctf remove           Remove a CTF and all associated challenges
pwnv ctf start/stop       Mark a CTF as active or inactive
pwnv challenge add        Add a challenge to a CTF
pwnv challenge remove     Remove a challenge from a CTF
pwnv challenge filter     List solved challenges by tags
pwnv challenge info       View metadata for a challenge
pwnv solve                Mark a challenge as solved (optional: submit flag to server)

Use --help on any subcommand for more info.


🏗️ Installation

Via pip

pip install pwnv

From source (recommended for dev)

git clone https://github.com/CarixoHD/pwnv
cd pwnv
pip install -e .

📄 License

MIT © Shayan Alinejad

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

pwnv-0.3.4.tar.gz (81.1 kB view details)

Uploaded Source

Built Distribution

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

pwnv-0.3.4-py3-none-any.whl (19.6 kB view details)

Uploaded Python 3

File details

Details for the file pwnv-0.3.4.tar.gz.

File metadata

  • Download URL: pwnv-0.3.4.tar.gz
  • Upload date:
  • Size: 81.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.12

File hashes

Hashes for pwnv-0.3.4.tar.gz
Algorithm Hash digest
SHA256 54f6b03f75d5ae16596e061a581534794866e4b6c10a4d75e5cb891f3e6ad623
MD5 9f7c93461df07bb28309b297430ac7a7
BLAKE2b-256 6f83a0f4bb3608fd987270813df74334aceb272c85afc2081363db6f145c07f9

See more details on using hashes here.

File details

Details for the file pwnv-0.3.4-py3-none-any.whl.

File metadata

  • Download URL: pwnv-0.3.4-py3-none-any.whl
  • Upload date:
  • Size: 19.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.12

File hashes

Hashes for pwnv-0.3.4-py3-none-any.whl
Algorithm Hash digest
SHA256 aa89c44afcefedf3131fc96824a8df350b039ad32f3e5557e66c7ea1be6e3053
MD5 b622d21be6f57128c10b855c2fe665a4
BLAKE2b-256 91c3f24f9b98799ae881e9833cd1838d0fb2bd167d05428f488b4ca85a5c0067

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