Skip to content


Switch branches/tags

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time


Welcome to Pwn2Win CTF 2017.


  1. All team members must have a GitHub account and configure a SSH key in their account settings.

  2. All team members must have the git client correctly set up. If you have never used git before, run:

    git config --global "John Doe"
    git config --global
  3. All team members must clone the repository and install the dependencies:

    git clone
    cd 2017
    sudo apt-get install libsodium18
    curl | sudo -H python
    sudo -H python -m pip install -r pip-requirements.txt


    If you are using Ubuntu 14.04, add ppa:elt/libsodium to your system to be able to install libsodium18.

    If you are using Mac OS, install libsodium with brew install libsodium.

  4. If dependencies are installed correctly, you should now see the help menu when calling:

    ./ctf -h
  5. The leader of the team must execute the following command and follow the instructions to register the team:

    ./ctf init
  6. After that, the leader must share the team-secrets.json with the members of the team. The other members of the team must place the team-secrets.json file shared by the leader in their 2017 directory.

  7. The other members of the team must login to GitHub without registering a new team, by running:

    ./ctf login

    If you are using OTP, you will need to login using a [token] with public_repo scope ( running:

    ./ctf login --token [TOKEN]


Challenges will be available at

If you prefer to browse them locally, you may also run a local webserver by typing ./ctf serve, or list challenges through the command line interface:

./ctf challs

Flag submission

To submit a flag:

./ctf submit --chall chall-id 'CTF-BR{flag123}'

You may omit --chall chall-id from the command, however it will be slower to run this way. In this case, we will look for the flag in every challenge released until now.


You can see the scoreboard in the game link (, locally (if you ran the local webserver) or through the command line interface:

./ctf score --names --pull


You may reach us through #tecland at