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 2014’ would get a folder named
foo-bar-ctf-2014
. - Every CTF challenge gets its own subfolder within that folder. For example, all files related to the ‘Foo Bar CTF 2014’ challenge named ‘Sucky sandbox’ would be located in
foo-bar-ctf-2014/sucky-sandbox
. - Every CTF challenge folder needs a Markdown-formatted
README.md
file, e.g.foo-bar-ctf-2014/sucky-sandbox/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 writeup tobig-ctf/task/
. We have three different sections:Completed write-ups
- Tasks, for which there is at least one local repo writeup (see theWrite-up
section of each task)External write-ups only
- Tasks, for which there is at least one external writeup (see theOther write-ups and resources
section of each task, but no local writeupMissing write-ups
- Tasks, for which there are no writeups available (yet).
-
If there already exists a writeup in the
Write-up
section and you want to add another local writeup:- 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 writeup to the
Write-up
section of a task - 💾 when adding resources for a task, e.g. files or scripts
- 🔗 when adding a writeup 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 writeup to the
-
If you want to add a new CTF directory/structure (skeleton), then consider using this tool