Please take a moment to review this document in order to make the contribution process easy and effective for everyone involved.
Adding a new write-up entry
- Each CTF gets its own folder in the root of this repository. For example, ‘Foo Bar CTF 2014’ would get a folder named
- 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
- Every CTF challenge folder needs a Markdown-formatted
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
Changing an existing entry
- 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.mdfile, when adding a writeup to
big-ctf/task/. We have three different sections:
Completed write-ups- Tasks, for which there is at least one local repo writeup (see the
Write-upsection of each task)
External write-ups only- Tasks, for which there is at least one external writeup (see the
Other write-ups and resourcessection of each task, but no local writeup
Missing write-ups- Tasks, for which there are no writeups available (yet).
If there already exists a writeup in the
Write-upsection and you want to add another local writeup:
- Add another
Alternative write-upsection above the
Other write-ups and resourcessection
- 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-upsection 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 resourcessection 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