Please take a moment to review this document in order to make the contribution process easy and effective for everyone involved.
- Each CTF gets its own folder in the root of this repository. For example, ‘Foo Bar CTF 2015’ would get a folder named
foo-bar-ctf-2015
. - Every CTF challenge gets its own subfolder within that folder with an appendix indicating its value. For example, all files related to the ‘Foo Bar CTF 2015’ challenge named ‘Sucky sandbox’, which is worth
150
points, would be located infoo-bar-ctf-2015/sucky-sandbox-150
. - Every CTF challenge folder needs a Markdown-formatted
README.md
file, e.g.foo-bar-ctf-2015/sucky-sandbox-150/README.md
. This file contains any details about the challenge, the main write-up itself, and links to other write-ups and resources. The folder should also contain the source files needed to reproduce the challenge. - Once you’re done adding the entry or making your changes, submit a pull request using the GitHub web interface.
- Finally, make sure you follow our committing rules
- Feel free to make any changes you see fit. Add a link to a write-up on your blog, add missing source files, clarify explanations in the write-up, or — if you’ve found a better way to solve a challenge — simplify the existing solution.
- Once you’re done, submit a pull request using the GitHub web interface.
These rules exist to keep the repo maintainable and complete. Please consider following them.
- Update the root
big-ctf/README.md
file, when adding a write-up tobig-ctf/task/
. We have three different sections:Completed write-ups
- Tasks, for which there is at least one local repo write-up (see theWrite-up
section of each task)External write-ups only
- Tasks, for which there is at least one external write-up (see theOther write-ups and resources
section of each task, but no local write-upMissing write-ups
- Tasks, for which there are no write-ups available (yet).
- If there already exists a write-up in the
Write-up
section and you want to add another local write-up:- Add another
Alternative write-up
section above theOther write-ups and resources
section
- Add another
- Do not add files that have a filesize bigger than 15MB to keep the repo relatively small. Upload the file instead to a service or reference it from somewhere else.
- Consider following these committing rules. For this repo, we like to use these emojis:
- 📝 when adding a write-up to the
Write-up
section of a task - 💾 when adding resources for a task, e.g. files or scripts
- 🔗 when adding a write-up link to the
Other write-ups and resources
section of a task - 💊 when fixing broken links or corrupt Markup stuff
- 📚 when updating the structure of this repo or adding a ctf skeleton structure
- 🔥 when deleting files
- 📝 when adding a write-up to the
- If you want to add a new CTF directory/structure (skeleton) with as little trouble as possible, then consider using the
genctf.py
tool from our tools repo