Small capture the flag problems
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
ctf
settings
tests
.gitignore
README.org
manage.py
requirements.txt

README.org

CTF

Is a Django based “framework” for doing CTFs. This project was done for one of our events.

Add new question

Add a new class in views.py and inherit from Question. Create a new template, look at some of the examples to get a feel for how to do it. Point your question to next url. Create a new URL with some hash code.

Views example:

class YourQuestion(Question):
    """Your question."""
    template_name = 'ctf/your_question_template.html'
    answer = 'THE ANSWER'
    success_url = reverse_lazy('ctf:next_problem_in_the_chain') # Next question

Urls example:

url(r'^djsakldsjal/$', views.YourQuestion.as_view(), name='yourquestion'),

Template example:

{% extends 'ctf/question-base.html' %}

{% block question %}
    Write your problem description here.
{% endblock question %}

Development environment

Its highly recommended to use virtualenv but its optional. pip may need to be installed depending on OS. Navigate to folder where the project is located.

pip install -r requirements.txt  # Install dependencies
python manage.py makemigrations  # Make a migration scheme
python manage.py migrate  # Create a DB with the scheme
python manage.py runserver  # Start development server