Flawed Fortress is a front end platform for hosting Capture the Flag Event (CTF), it is programmed with PHP, JQuery, JavaScript and phpMyAdmin. Currently, It is designed to import SecGen CTF challenges using `marker.xml` file (which is generated in the project folder when creating a CTF Challenge)
- Create Teams
- Generate Tokens (Allow players to register with their preferred logins)
- Generate Random Username & Password (Allow players to instantly login)
- Check Token Registration Status
- Send Live Announcement
- Restrict Users to Login
- Import SecGen CTF Challenges
- Update Homepage and Event Countdown Timer
- Database Management (Create or Drop all necessary tables)
- System Status (Check if there is any misconfiguration before the CTF event)
- Export Team Tokens as PDF file
- Export Username & Password as PDF file
- Team Scoreboard
- Team Activity
- Team Chat
- View Other Team Progress
- Challenges are represented as country map
- Live Timer
- Live Notification Update (For Scoreboard, Team, Chat, Flag, Announcement, Timer and Hints)
Create database in `phpMyAdmin` with secure db_username and db_password
git clone https://github.com/rgajendran/ctf_marker.git
<?php
$connection = mysqli_connect('HOSTNAME','DB_USERNAME','DB_PASSWORD','DATABASE_NAME');
?>
Open the project folder, navigate to template/connection.php file and update with your server/database login credentials.
Transfer the entire project folder to your server domain eg.www/
Navigate to Admin Account http://DOMAIN_NAME/admin.php
You don't need any username or password to access admin.php
page for the first time.
Flawed Fortress front end has the capability to auto generate all required tables automatically in a click of a button.
Open > admin.php page
Select > Options
Select > DATABASE MANAGEMENT
Click > Create (SecGen Hint & Flag Table)
Click > Create (Chat, Logger & Report Table)
Click > Create (Scoreboard, Updater & Options Table)
Click > Create (Users & Teams Table)
Click > Create (SecGen Map Table)
Once you create all the tables, Select SYSTEM STATUS tab in the admin account to check if there are any table errors.
After creating Users & Team Table
, the page will automatically redirect you to index.php (To secure the admin account). Direct access using http://DOMAIN_NAME/admin.php
will be restricted. You would need default login details to get admin access. You can change the password after logging in.
Username : admin
Password : admin
-
- Login to admin account and create teams.
-
- Choose registration method (Generate
Tokens
orUsername and Password
).
- Choose registration method (Generate
-
- Export login credential as PDF and distribute with team players.
-
- Import SecGen challenges (Import same challenges for all the registered teams or Import seperate challenges for every single team)
-
- Set Game End Timer
-
- Allow Users Login
-
- Start your Game
- Fork the repository on GitHub
- Clone the project to your own machine
git clone https://github.com/rgajendran/ctf_marker.git
- Commit changes to your own branch
- Push your work to your fork
- Submit your Pull request for review