
Collection de binaires des épreuves du CTF DEF CON 30, de scripts de build et de scripts de résolution pour s'entraîner à l'exploitation binaire et au reverse engineering.
Dépôt pour stocker les challenges, les notes d'infrastructure, la configuration de streaming et d'autres morceaux d'information sous contrôle de version pour l'événement LiveCTF final du DEF CON CTF.
| # | Nom du challenge | Concurrents | Vainqueur |
|---|---|---|---|
| Huitièmes de finale : 1 | syscall-me-maybe | Shellphish vs PTB_WTL | Shellphish |
| Huitièmes de finale : 2 | open-to-interpretation | StarBugs vs ./V /home/r/.bin/tw | StarBugs |
| Huitièmes de finale : 3 | nopcoding | OSUSEC vs Maple Mallard Magistrates | Maple Mallard Magistrates |
| Huitièmes de finale : 4 | nerd-sniped | the new organizers vs [email protected] | the new organizers |
| Huitièmes de finale : 5 | fairy-nuff | DiceGuesser vs Sauercloud | Sauercloud |
| Huitièmes de finale : 6 | seek-and-destroy | 侍 vs perfect r✪✪✪t | perfect r✪✪✪t |
| Huitièmes de finale : 7 | nvulns | r3kapig vs Water Paddler | r3kapig |
| Huitièmes de finale : 8 | quick-cast | Katzebin vs Straw Hat | Straw Hat |
| Quarts de finale : 1 | story-time | StarBugs vs the new organizers | StarBugs |
| Quarts de finale : 2 | stacks | Shellphish vs Maple Mallard Magistrates | Maple Mallard Magistrates |
| Quarts de finale : 3 | pacman | r3kapig vs Sauercloud | [Allé en mort subite] |
| Quarts de finale : 3.5 | over-easy | r3kapig vs Sauercloud | r3kapig |
| Quarts de finale : 4 | no-roplem | Straw Hat vs perfect r✪✪✪t | perfect r✪✪✪t |
| Demi-finales : 1 | aes-of-spades | Maple Mallard Magistrates vs StarBugs | StarBugs |
| Demi-finales : 2 | loopy-brain | r3kapig vs perfect r✪✪✪t | [Allé en mort subite] |
| Demi-finales : 2.5 | fast-updater | r3kapig vs perfect r✪✪✪t | perfect r✪✪✪t |
| Finale | f-in-the-stack | StarBugs vs perfect r✪✪✪t | StarBugs |
Si vous souhaitez jouer sur les binaires exacts des challenges utilisés à chaque manche, vous pouvez soit les compiler vous-même comme décrit ci-dessous, soit consulter le sous-dossier handouts/ de la release.
├── <challenge>
│ ├── challenge
│ │ ├── build.sh # Commands for building challenge binary/binaries and handout
│ │ ├── config.toml # Config file for flag submitter
│ │ ├── Dockerfile # Dockerfile for building challenge image
│ │ ├── run.sh # Command(s) to start the challenge
│ │ └── src # This is where the source for the challenge will go
│ │ └── challenge.c
│ └── solution
│ ├── requirements.txt # Solution script requirements
│ └── solve.py # Challenge solve script
./livectf.py build <challenge>La gestion des challenges (création/construction/démarrage/arrêt) se fait via livectf.py, un wrapper léger autour de docker. Consultez ./livectf.py --help pour l'utilisation.
./livectf.py create <challenge> copie le challenge modèle dans un nouveau répertoire de challenge.<challenge>/challenge/src.<challenge>/solution/solve.py.(Pour les challenges qui incluent plus d'un fichier source + un binaire) :
REQUIRED_PACKAGES dans <challenge>/challenge/Dockerfile pour inclure d'éventuelles dépendances de compilation/exécution supplémentaires.<challenge>/challenge/build.sh.HANDOUT_FILES dans <challenge>/challenge/build.sh.<challenge>/solution/requirements.txt.<challenge>/solution/solve.py.