Services from saarCTF 2024.
Enter a service directory and use docker compose, e.g.:
cd 8-bit-oracle
docker compose up --build -dIn the root directory, run:
python3 -m venv venv
. venv/bin/activate
pip install -r requirements.txtEvery service comes with a checkers directory, which contains a python-script named after the service.
Running this script should place three flags in the service and try to retrieve them subsequently.
Caveat: Make sure the gamelib is in the PYTHONPATH, e.g.:
cd 8-bit-oracle/checkers/
PYTHONPATH=.. python3 8-bit-oracle.py [<ip>]Checkers require a Redis instance to store information between ticks.
If you don't have redis installed locally, use the environment variables REDIS_HOST and REDIS_DB to configure one.
The script get_flag_ids.py prints you the flag ids used to store the demo flags.
Each service comes with demo exploits to show the vulnerability.
To run an exploit: python3 exploit_file.py <ip> [<flag-id>]
- 8-Bit-Oracle | Exploits
- BTX | Exploits
- Certified Transparency | Exploits
- Deutsches Flugzeug | Exploits
- Rent-a-Printer | Exploits
- Reversaar | Exploits
- Your local cups might block one of the service ports (tcp 631). Run
systemctl stop cupsif necessary. - The cups-browsed service does not start in the docker container, thus, one exploit does not work. Try it against the full VM.