Skip to content


Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Latest commit


Git stats


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

Platform Test Edition

Welcome to the Pwn2Win CTF Platform Test Edition.


  1. Please make sure you are using an Unicode locale, e.g.

    export LC_ALL=en_US.UTF-8
  2. All team members must have a GitHub account and configure a SSH key in their account settings.

    Note: If you prefer team members to stay anonymous, you can create a single GitHub account for the entire team and share its credentials.

  3. 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
  4. All team members must clone the repository and install the dependencies:

    git clone
    cd PTE
    sudo apt-get install libsodium18
    sudo -H pip install -r pip-requirements.txt

    Note: If you are using Ubuntu 14.04, add ppa:elt/libsodium to your system to be able to install libsodium18. If you are using Debian, you need to get the package from sid.

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

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

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

    ./ctf login
  8. 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 PTE directory.


Challenges are available on

If you prefer to browse them locally, you may also run a local webserver by typing make, 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.


Currently, the scoreboard is only available through the command line interface:

./ctf score --names --pull

However we plan to make it available through the web interface in a future release.