├── .editorconfig ├── .github └── workflows │ ├── lint.yml │ ├── release.yml │ └── test.yml ├── .gitignore ├── CHANGELOG.md ├── LICENSE ├── Makefile ├── README.md ├── ctfcli ├── __init__.py ├── __main__.py ├── cli │ ├── __init__.py │ ├── challenges.py │ ├── config.py │ ├── instance.py │ ├── media.py │ ├── pages.py │ ├── plugins.py │ └── templates.py ├── core │ ├── __init__.py │ ├── api.py │ ├── challenge.py │ ├── config.py │ ├── deployment │ │ ├── __init__.py │ │ ├── base.py │ │ ├── cloud.py │ │ ├── registry.py │ │ └── ssh.py │ ├── exceptions.py │ ├── image.py │ ├── instance │ │ ├── __init__.py │ │ └── config.py │ ├── media.py │ ├── page.py │ └── plugins.py ├── spec │ └── challenge-example.yml ├── templates │ ├── binary │ │ └── default │ │ │ ├── cookiecutter.json │ │ │ └── {{cookiecutter.name}} │ │ │ ├── .dockerignore │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── challenge.yml │ │ │ ├── src │ │ │ └── {{cookiecutter.name}}.c │ │ │ └── writeup │ │ │ └── WRITEUP.md │ ├── blank │ │ ├── default │ │ │ ├── cookiecutter.json │ │ │ └── {{cookiecutter.name}} │ │ │ │ ├── README.md │ │ │ │ ├── challenge.yml │ │ │ │ ├── src │ │ │ │ └── placeholder │ │ │ │ └── writeup │ │ │ │ └── WRITEUP.md │ │ └── empty │ │ │ ├── cookiecutter.json │ │ │ └── {{cookiecutter.dirname}} │ │ │ └── challenge.yml │ ├── crypto │ │ └── default │ │ │ ├── cookiecutter.json │ │ │ └── {{cookiecutter.name}} │ │ │ ├── .gitignore │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── challenge.yml │ │ │ ├── src │ │ │ ├── encrypt.py │ │ │ └── flag.txt │ │ │ └── writeup │ │ │ └── WRITEUP.md │ ├── programming │ │ └── default │ │ │ ├── cookiecutter.json │ │ │ └── {{cookiecutter.name}} │ │ │ ├── .dockerignore │ │ │ ├── .gitignore │ │ │ ├── Dockerfile │ │ │ ├── README.md │ │ │ ├── challenge.yml │ │ │ ├── docker-compose.yml │ │ │ ├── src │ │ │ ├── requirements.txt │ │ │ ├── serve.sh │ │ │ └── server.py │ │ │ └── writeup │ │ │ └── WRITEUP.md │ └── web │ │ └── default │ │ ├── cookiecutter.json │ │ └── {{cookiecutter.name}} │ │ ├── .dockerignore │ │ ├── Dockerfile │ │ ├── README.md │ │ ├── challenge.yml │ │ ├── docker-compose.yml │ │ ├── src │ │ ├── app.py │ │ ├── config.py │ │ ├── models.py │ │ ├── requirements.txt │ │ ├── serve.sh │ │ ├── static │ │ │ └── css │ │ │ │ └── main.css │ │ └── templates │ │ │ ├── base.html │ │ │ ├── index.html │ │ │ ├── login.html │ │ │ ├── profile.html │ │ │ └── register.html │ │ └── writeup │ │ └── WRITEUP.md └── utils │ ├── __init__.py │ ├── git.py │ ├── hashing.py │ └── tools.py ├── docs └── plugins.md ├── poetry.lock ├── preprocess.py ├── pyproject.toml └── tests ├── __init__.py ├── cli └── test_main.py ├── core ├── __init__.py ├── deployment │ ├── __init__.py │ ├── test_base_deployment_handler.py │ ├── test_cloud_deployment.py │ ├── test_registry_deployment.py │ └── test_ssh_deployment.py ├── test_api.py ├── test_challenge.py ├── test_config.py ├── test_exceptions.py ├── test_image.py ├── test_page.py └── test_plugins.py ├── fixtures └── challenges │ ├── .ctf │ └── config │ ├── pages │ ├── html-page.html │ ├── markdown-page.md │ └── nested │ │ └── html-page.htm │ ├── test-challenge-dockerfile │ ├── Dockerfile │ ├── challenge.yml │ └── src │ │ └── index.html │ ├── test-challenge-files │ ├── challenge.yml │ └── files │ │ ├── flag.txt │ │ ├── test.pdf │ │ └── test.png │ ├── test-challenge-full │ ├── challenge.yml │ └── files │ │ ├── test.pdf │ │ └── test.png │ ├── test-challenge-invalid-dockerfile │ ├── Dockerfile │ └── challenge.yml │ ├── test-challenge-invalid │ ├── challenge-empty.yml │ └── challenge-invalid.yml │ └── test-challenge-minimal │ └── challenge.yml └── utils ├── __init__.py ├── test_git.py └── test_tools.py /.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/.editorconfig -------------------------------------------------------------------------------- /.github/workflows/lint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/.github/workflows/lint.yml -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/.github/workflows/release.yml -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/.gitignore -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/README.md -------------------------------------------------------------------------------- /ctfcli/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/__init__.py -------------------------------------------------------------------------------- /ctfcli/__main__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/__main__.py -------------------------------------------------------------------------------- /ctfcli/cli/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ctfcli/cli/challenges.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/cli/challenges.py -------------------------------------------------------------------------------- /ctfcli/cli/config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/cli/config.py -------------------------------------------------------------------------------- /ctfcli/cli/instance.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/cli/instance.py -------------------------------------------------------------------------------- /ctfcli/cli/media.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/cli/media.py -------------------------------------------------------------------------------- /ctfcli/cli/pages.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/cli/pages.py -------------------------------------------------------------------------------- /ctfcli/cli/plugins.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/cli/plugins.py -------------------------------------------------------------------------------- /ctfcli/cli/templates.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/cli/templates.py -------------------------------------------------------------------------------- /ctfcli/core/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ctfcli/core/api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/core/api.py -------------------------------------------------------------------------------- /ctfcli/core/challenge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/core/challenge.py -------------------------------------------------------------------------------- /ctfcli/core/config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/core/config.py -------------------------------------------------------------------------------- /ctfcli/core/deployment/__init__.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/core/deployment/__init__.py -------------------------------------------------------------------------------- /ctfcli/core/deployment/base.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/core/deployment/base.py -------------------------------------------------------------------------------- /ctfcli/core/deployment/cloud.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/core/deployment/cloud.py -------------------------------------------------------------------------------- /ctfcli/core/deployment/registry.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/core/deployment/registry.py -------------------------------------------------------------------------------- /ctfcli/core/deployment/ssh.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/core/deployment/ssh.py -------------------------------------------------------------------------------- /ctfcli/core/exceptions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/core/exceptions.py -------------------------------------------------------------------------------- /ctfcli/core/image.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/core/image.py -------------------------------------------------------------------------------- /ctfcli/core/instance/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ctfcli/core/instance/config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/core/instance/config.py -------------------------------------------------------------------------------- /ctfcli/core/media.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/core/media.py -------------------------------------------------------------------------------- /ctfcli/core/page.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/core/page.py -------------------------------------------------------------------------------- /ctfcli/core/plugins.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/core/plugins.py -------------------------------------------------------------------------------- /ctfcli/spec/challenge-example.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/spec/challenge-example.yml -------------------------------------------------------------------------------- /ctfcli/templates/binary/default/cookiecutter.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Hello" 3 | } -------------------------------------------------------------------------------- /ctfcli/templates/binary/default/{{cookiecutter.name}}/.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/binary/default/{{cookiecutter.name}}/.dockerignore -------------------------------------------------------------------------------- /ctfcli/templates/binary/default/{{cookiecutter.name}}/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/binary/default/{{cookiecutter.name}}/Makefile -------------------------------------------------------------------------------- /ctfcli/templates/binary/default/{{cookiecutter.name}}/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/binary/default/{{cookiecutter.name}}/README.md -------------------------------------------------------------------------------- /ctfcli/templates/binary/default/{{cookiecutter.name}}/challenge.yml: -------------------------------------------------------------------------------- 1 | ../../../../spec/challenge-example.yml -------------------------------------------------------------------------------- /ctfcli/templates/binary/default/{{cookiecutter.name}}/src/{{cookiecutter.name}}.c: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/binary/default/{{cookiecutter.name}}/src/{{cookiecutter.name}}.c -------------------------------------------------------------------------------- /ctfcli/templates/binary/default/{{cookiecutter.name}}/writeup/WRITEUP.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ctfcli/templates/blank/default/cookiecutter.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "challenge" 3 | } -------------------------------------------------------------------------------- /ctfcli/templates/blank/default/{{cookiecutter.name}}/README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ctfcli/templates/blank/default/{{cookiecutter.name}}/challenge.yml: -------------------------------------------------------------------------------- 1 | ../../../../spec/challenge-example.yml -------------------------------------------------------------------------------- /ctfcli/templates/blank/default/{{cookiecutter.name}}/src/placeholder: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ctfcli/templates/blank/default/{{cookiecutter.name}}/writeup/WRITEUP.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ctfcli/templates/blank/empty/cookiecutter.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/blank/empty/cookiecutter.json -------------------------------------------------------------------------------- /ctfcli/templates/blank/empty/{{cookiecutter.dirname}}/challenge.yml: -------------------------------------------------------------------------------- 1 | name: "{{cookiecutter.name}}" -------------------------------------------------------------------------------- /ctfcli/templates/crypto/default/cookiecutter.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "crypto-challenge" 3 | } -------------------------------------------------------------------------------- /ctfcli/templates/crypto/default/{{cookiecutter.name}}/.gitignore: -------------------------------------------------------------------------------- 1 | __pycache__/ -------------------------------------------------------------------------------- /ctfcli/templates/crypto/default/{{cookiecutter.name}}/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/crypto/default/{{cookiecutter.name}}/Makefile -------------------------------------------------------------------------------- /ctfcli/templates/crypto/default/{{cookiecutter.name}}/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/crypto/default/{{cookiecutter.name}}/README.md -------------------------------------------------------------------------------- /ctfcli/templates/crypto/default/{{cookiecutter.name}}/challenge.yml: -------------------------------------------------------------------------------- 1 | ../../../../spec/challenge-example.yml -------------------------------------------------------------------------------- /ctfcli/templates/crypto/default/{{cookiecutter.name}}/src/encrypt.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/crypto/default/{{cookiecutter.name}}/src/encrypt.py -------------------------------------------------------------------------------- /ctfcli/templates/crypto/default/{{cookiecutter.name}}/src/flag.txt: -------------------------------------------------------------------------------- 1 | temp flag -------------------------------------------------------------------------------- /ctfcli/templates/crypto/default/{{cookiecutter.name}}/writeup/WRITEUP.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ctfcli/templates/programming/default/cookiecutter.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/programming/default/cookiecutter.json -------------------------------------------------------------------------------- /ctfcli/templates/programming/default/{{cookiecutter.name}}/.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/programming/default/{{cookiecutter.name}}/.dockerignore -------------------------------------------------------------------------------- /ctfcli/templates/programming/default/{{cookiecutter.name}}/.gitignore: -------------------------------------------------------------------------------- 1 | __pycache__/ -------------------------------------------------------------------------------- /ctfcli/templates/programming/default/{{cookiecutter.name}}/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/programming/default/{{cookiecutter.name}}/Dockerfile -------------------------------------------------------------------------------- /ctfcli/templates/programming/default/{{cookiecutter.name}}/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/programming/default/{{cookiecutter.name}}/README.md -------------------------------------------------------------------------------- /ctfcli/templates/programming/default/{{cookiecutter.name}}/challenge.yml: -------------------------------------------------------------------------------- 1 | ../../../../spec/challenge-example.yml -------------------------------------------------------------------------------- /ctfcli/templates/programming/default/{{cookiecutter.name}}/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/programming/default/{{cookiecutter.name}}/docker-compose.yml -------------------------------------------------------------------------------- /ctfcli/templates/programming/default/{{cookiecutter.name}}/src/requirements.txt: -------------------------------------------------------------------------------- 1 | six==1.16.0 2 | -------------------------------------------------------------------------------- /ctfcli/templates/programming/default/{{cookiecutter.name}}/src/serve.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/programming/default/{{cookiecutter.name}}/src/serve.sh -------------------------------------------------------------------------------- /ctfcli/templates/programming/default/{{cookiecutter.name}}/src/server.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/programming/default/{{cookiecutter.name}}/src/server.py -------------------------------------------------------------------------------- /ctfcli/templates/programming/default/{{cookiecutter.name}}/writeup/WRITEUP.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ctfcli/templates/web/default/cookiecutter.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "Hello" 3 | } -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/.dockerignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/web/default/{{cookiecutter.name}}/.dockerignore -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/web/default/{{cookiecutter.name}}/Dockerfile -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/web/default/{{cookiecutter.name}}/README.md -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/challenge.yml: -------------------------------------------------------------------------------- 1 | ../../../../spec/challenge-example.yml -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/web/default/{{cookiecutter.name}}/docker-compose.yml -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/src/app.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/web/default/{{cookiecutter.name}}/src/app.py -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/src/config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/web/default/{{cookiecutter.name}}/src/config.py -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/src/models.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/web/default/{{cookiecutter.name}}/src/models.py -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/src/requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/web/default/{{cookiecutter.name}}/src/requirements.txt -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/src/serve.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/web/default/{{cookiecutter.name}}/src/serve.sh -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/src/static/css/main.css: -------------------------------------------------------------------------------- 1 | main { 2 | margin-top: 60px; 3 | } 4 | -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/src/templates/base.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/web/default/{{cookiecutter.name}}/src/templates/base.html -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/src/templates/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/web/default/{{cookiecutter.name}}/src/templates/index.html -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/src/templates/login.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/web/default/{{cookiecutter.name}}/src/templates/login.html -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/src/templates/profile.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/web/default/{{cookiecutter.name}}/src/templates/profile.html -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/src/templates/register.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/templates/web/default/{{cookiecutter.name}}/src/templates/register.html -------------------------------------------------------------------------------- /ctfcli/templates/web/default/{{cookiecutter.name}}/writeup/WRITEUP.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ctfcli/utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /ctfcli/utils/git.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/utils/git.py -------------------------------------------------------------------------------- /ctfcli/utils/hashing.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/utils/hashing.py -------------------------------------------------------------------------------- /ctfcli/utils/tools.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/ctfcli/utils/tools.py -------------------------------------------------------------------------------- /docs/plugins.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/docs/plugins.md -------------------------------------------------------------------------------- /poetry.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/poetry.lock -------------------------------------------------------------------------------- /preprocess.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/preprocess.py -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/pyproject.toml -------------------------------------------------------------------------------- /tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/cli/test_main.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/cli/test_main.py -------------------------------------------------------------------------------- /tests/core/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/core/deployment/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/core/deployment/test_base_deployment_handler.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/core/deployment/test_base_deployment_handler.py -------------------------------------------------------------------------------- /tests/core/deployment/test_cloud_deployment.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/core/deployment/test_cloud_deployment.py -------------------------------------------------------------------------------- /tests/core/deployment/test_registry_deployment.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/core/deployment/test_registry_deployment.py -------------------------------------------------------------------------------- /tests/core/deployment/test_ssh_deployment.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/core/deployment/test_ssh_deployment.py -------------------------------------------------------------------------------- /tests/core/test_api.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/core/test_api.py -------------------------------------------------------------------------------- /tests/core/test_challenge.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/core/test_challenge.py -------------------------------------------------------------------------------- /tests/core/test_config.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/core/test_config.py -------------------------------------------------------------------------------- /tests/core/test_exceptions.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/core/test_exceptions.py -------------------------------------------------------------------------------- /tests/core/test_image.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/core/test_image.py -------------------------------------------------------------------------------- /tests/core/test_page.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/core/test_page.py -------------------------------------------------------------------------------- /tests/core/test_plugins.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/core/test_plugins.py -------------------------------------------------------------------------------- /tests/fixtures/challenges/.ctf/config: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/.ctf/config -------------------------------------------------------------------------------- /tests/fixtures/challenges/pages/html-page.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/pages/html-page.html -------------------------------------------------------------------------------- /tests/fixtures/challenges/pages/markdown-page.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/pages/markdown-page.md -------------------------------------------------------------------------------- /tests/fixtures/challenges/pages/nested/html-page.htm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/pages/nested/html-page.htm -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-dockerfile/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/test-challenge-dockerfile/Dockerfile -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-dockerfile/challenge.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/test-challenge-dockerfile/challenge.yml -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-dockerfile/src/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/test-challenge-dockerfile/src/index.html -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-files/challenge.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/test-challenge-files/challenge.yml -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-files/files/flag.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/test-challenge-files/files/flag.txt -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-files/files/test.pdf: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-files/files/test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/test-challenge-files/files/test.png -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-full/challenge.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/test-challenge-full/challenge.yml -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-full/files/test.pdf: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-full/files/test.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/test-challenge-full/files/test.png -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-invalid-dockerfile/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/test-challenge-invalid-dockerfile/Dockerfile -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-invalid-dockerfile/challenge.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/test-challenge-invalid-dockerfile/challenge.yml -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-invalid/challenge-empty.yml: -------------------------------------------------------------------------------- 1 | # empty challenge.yml -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-invalid/challenge-invalid.yml: -------------------------------------------------------------------------------- 1 | - this is 2 | - invalid 3 | - challenge.yml 4 | -------------------------------------------------------------------------------- /tests/fixtures/challenges/test-challenge-minimal/challenge.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/fixtures/challenges/test-challenge-minimal/challenge.yml -------------------------------------------------------------------------------- /tests/utils/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/utils/test_git.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/utils/test_git.py -------------------------------------------------------------------------------- /tests/utils/test_tools.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CTFd/ctfcli/HEAD/tests/utils/test_tools.py --------------------------------------------------------------------------------