C3T statistics and training platform.
Purpose: Provide a controlled and stable environment to practice competitive cyber skills and enable tracking of member progress in each CTF category to allow for individual development and informed role assignments.
Helios is a combined system spanning multiple packages. By itself, Helios tracks writeups in a local mongoDB installation, allows grading, profile updates, etc.
This repository (currently) also includes the Artemis package, a custom dockerized code learning web app for the team. More documentation to follow, system is at /artemis
when loaded.
Another part of the Helios system can be found at https://github.com/bitsforeveryone/helios-bot
Helios Bot is a simple NodeJS REST api for operations on C3T's Discord server using the Emissary bot. Running this part of the system on the same machine allows Helios to modify usernames, set roles, and create channels.
Installation:
git clone git@github.com:bitsforeveryone/helios-bot.git && git clone git@github.com:bitsforeveryone/helios.git
pip install -r helios/requirements.txt
npm install discord.js
npm install bodyParser
npm install express
27017
and no password authentication (for now)
https://docs.mongodb.com/manual/installation/secrets
folder to this directory to store credentials, create an rsa key pair
cp -R helios/install/secrets . && cd "$_"
openssl req -x509 -newkey rsa:4096 -keyout key.pem -out cert.pem -sha256 -days 365 -subj "/C=US/ST=New York/L=West Point/O=C3T/OU=Org/CN=helios.bfe.one" -nodes && cd ..
misc.json
with Discord API data (some help here https://www.writebots.com/discord-bot-token/)
nano secrets/misc.json
cp helios/install/{helios.service,heliosbot.service} /etc/systemd/system
If using systemd, start services with systemctl helios start && systemctl heliosbot start
. Otherwise, it is possible to use launch.sh
in each directory to launch servicces in terminal.