Skip to content

Commit

Permalink
3.10.0 (#450)
Browse files Browse the repository at this point in the history
Pagination on scoreboard / teams #449
Category Description #382
CyberChef 9.28.0
Moved notifications to menu icon
Public user profile when scoreboard public
Record User Flag Captures for Public User page stats
User account expire option
Addressed unit test error #347
Timer option to allow scoreboard visibility #452 , #174
  • Loading branch information
eljeffeg authored Sep 23, 2021
1 parent 1cec27e commit 9fa5e18
Show file tree
Hide file tree
Showing 121 changed files with 6,233 additions and 5,169 deletions.
5 changes: 0 additions & 5 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,6 @@ jobs:
# a pull request then we can checkout the head.
fetch-depth: 2

# If this run was triggered by a pull request event, then checkout
# the head of the pull request instead of the merge commit.
- run: git checkout HEAD^2
if: ${{ github.event_name == 'pull_request' }}

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v1
Expand Down
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,6 @@ Root the Box is a real-time capture the flag (CTF) scoring engine for computer w

![example](static/images/example.png?raw=true)

Like traditional CTF games, each team or player can target challenges of varying difficulty and sophistication, attempting to collect flags. But Root the Box brings additional options to the game. It has built-in support for "botnets", allowing players to upload a small bot program to target machines that grant periodic rewards for each bot in the botnet. You have the option to use a banking system, where (in-game) money can be used instead of points to unlock new levels, buy hints to flags, download a target's source code, or even "SWAT" other players. Password hashes for player bank accounts can also be publicly displayed, allowing competitors to crack them and steal each other's money.

## Screenshots & Demo
Additional platform [screenshots](https://github.com/moloch--/RootTheBox/wiki/Screenshots) and game examples.

Expand All @@ -25,15 +23,17 @@ Additional platform [screenshots](https://github.com/moloch--/RootTheBox/wiki/Sc
- Flag Types: Static, Regex, Datetime, Multiple Choice, File - w/options for case sensitivity
- Options for Penalties, Hints, Attempts, Level Bonuses, Dynamic Scoring, Categories and more
- Built-in team based file/text sharing and Admin game material distirbution
- Chat support with [Rocket Chat](https://rocket.chat/) integration
- Integrated [CyberChef](https://gchq.github.io/CyberChef/) in tools menu
- Chat support, with optional [Rocket Chat](https://rocket.chat/) integration
- [CTF Time](https://ctftime.org/) compatible JSON scoreboard feed
- Supports [OWASP Juice Shop CTF](https://github.com/bkimminich/juice-shop-ctf) export
- Freeze scoreboard at a specific time allowing for end game countdown
- Optional Story Mode - Supports intro dialog, capture Flag or Section dialog w/graphics
- Optional [in-game Botnets](https://github.com/moloch--/RootTheBox/wiki/Features) or wall of sheep displaying cracked passwords
- Unlocks and upgrades as users capture flags
- Optional [Advanced Features](https://github.com/moloch--/RootTheBox/wiki/Features), such as in-game botnets, "SWAT" players, banking (in-game) money, and wall of sheep displaying cracked passwords
- Allows for unlocks and upgrades as users capture flags
- Export and share Boxes/Flags
- Multiple Language Support
- Deploy in the [Cloud](https://github.com/moloch--/RootTheBox/wiki/Cloud-Deployment), with [Docker](https://github.com/moloch--/RootTheBox/wiki/Docker-Deployment), or [Direct](https://github.com/moloch--/RootTheBox/wiki/Installation).
- Site Themes and other cool stuff

## Setup
Expand Down
42 changes: 42 additions & 0 deletions alembic/versions/098ab7c733ea_add_user_to_flag.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
"""add user_to_flag
Revision ID: 098ab7c733ea
Revises: 4aa1bab989f8
Create Date: 2021-08-08 23:03:49.444306
"""
from alembic import op
import sqlalchemy as sa


# revision identifiers, used by Alembic.
revision = "098ab7c733ea"
down_revision = "4aa1bab989f8"
branch_labels = None
depends_on = None


def upgrade():
op.create_table(
"user_to_flag",
sa.Column(
"user_id",
sa.Integer,
sa.ForeignKey("user.id", ondelete="CASCADE"),
nullable=False,
),
sa.Column(
"flag_id",
sa.Integer,
sa.ForeignKey("flag.id", ondelete="CASCADE"),
nullable=False,
),
)
op.add_column("category", sa.Column("_description", sa.VARCHAR(1024)))
op.add_column("user", sa.Column("_expire", sa.DateTime))


def downgrade():
op.drop_table("user_to_flag")
op.drop_column("category", "_description")
op.drop_column("user", "_expire")
Loading

0 comments on commit 9fa5e18

Please sign in to comment.