ctfer-io-pulumi-ctfd

The CTFd provider for Pulumi, to manage its resources as code.


Keywords
pulumi, ctfd, category/cloud, ctf, infrastructure-as-code, provider
License
Apache-2.0
Install
pip install ctfer-io-pulumi-ctfd==1.0.0

Documentation

Pulumi CTFd Provider

Let's code your CTF(d)

reference License
CodeQL OpenSSF Scoreboard

Context

CTFd is an open-source CTFd platform famous for its simplicity and extensibility. It has been used for various Capture The Flag (CTF) events, originally for the CSAW, later by others such the BreizhCTF.

One of CTFer approach is seeing the CTFd resources as simply as objects with CRUD operations (e.g. challenges). From this simplification arise a possibility: managing them as Terraform resources, which we did with the Terraform Provider for CTFd. Nevertheless, due to the limitations of Terraform and the necessity to bring reproducibility to Capture The Flag events, as stated by multiple organizers, we had to go further and give it an additional predicate: managing them as code through programming language.

Pulumi is an Infrastructure-as-Code (IaC) and Free Open-Source Software (FOSS) tool that is a first-class opportunity for this.

To sum it up, you can manage a Capture The Flag event based upon CTFd in multiple programming languages.

SDK

To install the provider, refer to this documentation.

For more information on how to use the SDK in your favorite language, refer to this documentation.