Skip to main content

CTFd Fetch

Often it would be nice to download all the challenges (descriptions/files/etc) from a CTF so that you have them for future reference, or to have offline, or to share with a team.

That's all this script does.

Since many CTFs have standardized around CTFd as a platform, we use that as a starting point.

Caveats

  • Use this tool considerately. It makes every attempt to respond sanely, and only download things not already downloaded, but make sure you are not abusing the good will of a CTF Host/Organizer.
  • This tool primarily uses the JSON response from a CTFd endpoint (/challs). Any changes to CTFd have the potential to break this tool.

Quick Start

Install.

pip3 install ctfdfetch

Download all the challenges from a CTF into the current folder.

ctfdfetch --server https://ctf.example.com --user hacker

For more options such as out directory, nested categories, verbosity, etc).

ctfdfetch -h

Development

Development occurs on master. The release branch has the version currently pushed to pypi.

# get code
git clone https://gitlab.com/royragsdale/ctfdfetch.git
cd ctfdfetch

# setup virtualenv
python3 -m venv venv3
. venv3/bin/activate

# install in dev mode
pip install -e .

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ctfdfetch-0.2.0.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

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

ctfdfetch-0.2.0-py3-none-any.whl (7.3 kB view details)

Uploaded Python 3

File details

Details for the file ctfdfetch-0.2.0.tar.gz.

File metadata

  • Download URL: ctfdfetch-0.2.0.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for ctfdfetch-0.2.0.tar.gz
Algorithm Hash digest
SHA256 2043bb5a0072e52557a5a76dc4a464026e0b6d6206ada664de9fe8e2046b4efb
MD5 074ff1840bf3b7509be9203068a4ae38
BLAKE2b-256 db53b39aa788735e612dfe756b614f81ec57a391d7c69ba64b5e21c26a7e764c

See more details on using hashes here.

File details

Details for the file ctfdfetch-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for ctfdfetch-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fa2954f891ab7d3a7d45c3e7c6758e1e1994f6fbad0ad37055092fdce55af4f5
MD5 101f24da685a4a1393e149b1e44c88dd
BLAKE2b-256 d1bb7c320095e05a2621b393191ef12e6353fe6c867d403f9a3e4896523d5c5d

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page