项目作者: kelvindecosta

项目描述 :
:triangular_flag_on_post: A collection of CTF levels
高级语言: Python
项目地址: git://github.com/kelvindecosta/ctf-levels.git
创建时间: 2019-09-30T19:51:49Z
项目社区:https://github.com/kelvindecosta/ctf-levels

开源协议:

下载


CTF Levels

A collection of CTF levels.

Navigation

Usage

These levels are designed for Facebook’s CTF Hosting Server.

  1. python main.py -h
  1. usage: main.py [-h] games [games ...]
  2. Generate files for CTF in FBCTF Format
  3. positional arguments:
  4. games game folders
  5. optional arguments:
  6. -h, --help show this help message and exit

Definitions

Create a new game,

  1. mkdir games
  2. mkdir games/game_name
  3. mkdir games/game_name/levels
  4. cd games/game_name/levels/

Create a new level,

  1. mkdir level_name
  2. touch README.md

Level

A level is a task in the Capture the Flag game.

Define README.md based on the following format

Frontmatter

  1. ---
  2. title: Level Title
  3. country: Country
  4. flag : Flag Text (convention : CTF{something})
  5. points: points awarded for capture
  6. bonus: points awarded as max(bonus - decrement * (number of times flag was captured), 0)
  7. decrement: see bonus
  8. penalty: points taken away if hint was requested
  9. tag: something describing the
  10. ---

Description

  1. <br/>Describe the level, giving the participants some clues towards the approach they must follow so as to capture the flag.
  2. This is raw text. No markdown allowed.<br/>

Instructions (optional)

Provide instructions on how to generate the level attachments if necessary.

Hint

  1. <br/>Provide the participants with a hint. This message is shown once they 'purchase' a hint.
  2. This is raw text. No markdown allowed.<br/>

Attachments (wherever necessary)

  1. - [relative_path_to_file](relative_path_to_file)
  2. - [relative_path_to_directory](relative_path_to_directory)

In the case where the attachment must be a git repo and you wish to track its changes, add it as a submodule of the main repo.

Solution (optional)

Explain the solution.

Examples

Checkout games/ for some levels.