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.3.tar.gz (80.8 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.3-py3-none-any.whl (19.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pwnv-0.3.3.tar.gz
  • Upload date:
  • Size: 80.8 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.3.tar.gz
Algorithm Hash digest
SHA256 9cf0e0382d9f8d2161c7d4575634d584bf1f621fa027f1fa96c4a489c23d292b
MD5 b6107ad258c1f755ada80055080ad427
BLAKE2b-256 732bc00e80d804c7d3384f5eea9a69ccdb4cdab66e1332b1bd082b1ee0bd5d8c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pwnv-0.3.3-py3-none-any.whl
  • Upload date:
  • Size: 19.2 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 eb1f1e04070eb9db0896f95277964d77bb0f8e668414d3016168865af8c626db
MD5 0ac956a6709e366beaedebb4434c45a5
BLAKE2b-256 ed0b59b579379f1baa3d727a5f5f2d9f3bf49b755268042a3349c69a5b237583

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