This repository is used to create a simplified version of the saarctf cloud-hosted setup. When the game starts, you will get ssh access to a vm and that's it. This repo sets up this VM together with a game gateway, so you have something to test your scripts. The vulnbox contains a dummy service and the gateway will run exploit/checker traffic against it.
- Cloudflare account with a registered domain
- Hetzner account with the quota to create two small VMs.
- Local install of OpenTofu.
- Install the requirements:
tofu init
-
Create project in Hetzner Cloud.
-
Add a new API Token (Read&Write) under Security > API tokens. Note it as the
HCLOUD_TOKENin the .env file. -
Get the Cloudflare API Token and Zone ID by going to the Overview page of your registered domain and go to the bottom of the right most column.
-
Create a
.envfile with the following content:
export HCLOUD_TOKEN=
export CLOUDFLARE_API_TOKEN=
export CLOUDFLARE_ZONE_ID=- Source the config and create the VMs:
source .env
tofu apply- Provision the system using:
ansible-galaxy install -r requirements.yml
ansible-playbook setup.ymlSee what the checker /opt/dummy_checker/checker.py is doing:
journalctl -f -u dummy_checker.service