Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support initializers for custom infrastructures (advanced) #469

Open
pandatix opened this issue Feb 6, 2025 · 0 comments
Open

Support initializers for custom infrastructures (advanced) #469

pandatix opened this issue Feb 6, 2025 · 0 comments
Labels
chall-manager Related to chall-manager enhancement New feature or request go Pull requests that update Go code sdk Related to chall-manager SDK

Comments

@pandatix
Copy link
Member

pandatix commented Feb 6, 2025

When working on the 24h IUT 2025, we stumbled upon a bootstrap problem: if I want infra-requirements for a challenge (e.g. a PVE bridge for a networking/MitM challenge, a Kubernetes Service Account with specific privileges for an RBAC challenge, a firewall rule or even an AWS account...), I would have to prepare the setup (might be a doc, a bash script or even a Pulumi stack) then deploy it on the production infrastructure, hardcode the outputs to the scenarios (e.g. API keys, IP addresses), then create the challenge with it and deploy instances.

It would work, but removes the "reproducibility" we would like to defend with Chall-Manager: it requires unstructured work out of CM's scope, which does not enable CTF enthusiasts to completely replay an event by simply copying the configuration.

With this issue, I document our idea of introducing an advanced mechanism of initializer (optional) i.e. another Pulumi code that prepare the environment for the challenges, and pass its outputs to the current scenario when a challenge instance is deployed, through the SDK's config (inputs).

@pandatix pandatix added chall-manager Related to chall-manager enhancement New feature or request go Pull requests that update Go code sdk Related to chall-manager SDK labels Feb 6, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chall-manager Related to chall-manager enhancement New feature or request go Pull requests that update Go code sdk Related to chall-manager SDK
Projects
None yet
Development

No branches or pull requests

1 participant