Назад к обновлениям
New releaseAug 19, 2026

CTFd v3.8.7

CTF-задачи по мере необходимости

Поделиться

CTFd MySQL CI Linting MajorLeagueCyber Discourse Documentation Status

Что такое CTFd?

CTFd — это фреймворк для Capture The Flag, ориентированный на простоту использования и настраиваемость. В нём есть всё необходимое для проведения CTF, и его легко настраивать с помощью плагинов и тем.

CTFd — это CTF «из коробки».

Возможности

  • Создавайте собственные задания, категории, подсказки и флаги через интерфейс администратора
    • Задания с динамической оценкой
    • Поддержка открываемых заданий
    • Архитектура плагинов заданий для создания собственных заданий
    • Флаги на основе статических выражений и регулярных выражений
      • Собственные плагины флагов
    • Открываемые подсказки
    • Загрузка файлов на сервер или в совместимое с Amazon S3 хранилище
    • Ограничение попыток выполнения заданий и скрытие заданий
    • Автоматическая защита от перебора
  • Соревнования для отдельных участников и команд
    • Участники могут играть по отдельности или объединяться в команды
  • Таблица результатов с автоматическим разрешением равенства очков
    • Скрытие результатов от публики
    • Заморозка результатов в определённое время
  • Графики результатов, сравнивающие топ-10 команд, и графики прогресса команд
  • Система управления контентом на основе Markdown
  • Поддержка электронной почты через SMTP и Mailgun
    • Подтверждение адреса электронной почты
    • Восстановление пароля
  • Автоматическое начало и завершение соревнования
  • Управление командами, их скрытие и блокировка
  • Настройка всего через интерфейсы плагинов и тем
  • Импорт и экспорт данных CTF для архивирования
  • И многое другое...

Установка

Самый простой способ начать — использовать хостируемый экземпляр CTFd.

Для самостоятельного размещения обратитесь к документации CTFd — вариантам развёртывания и руководству «Начало работы».

Ниже представлена сводка нескольких вариантов самостоятельного размещения CTFd:

Docker

Вы можете использовать Docker Compose с помощью следующей команды из исходного репозитория:

docker compose up

Чтобы использовать готовые образы Docker:

docker run -p 8000:8000 -it ctfd/ctfd

Разработка

  1. Установите uv и выполните uv sync, чтобы создать виртуальное окружение с установленными зависимостями.
    • Также можно установить в уже существующее окружение с помощью pip install -r requirements.txt, который создаётся из uv.lock.
  2. Измените CTFd/config.ini по своему усмотрению.
  3. Выполните uv run serve.py или uv run flask run в терминале, чтобы перейти в режим отладки.

Живое демо

https://demo.ctfd.io/

Поддержка

Для получения базовой поддержки вы можете присоединиться к сообществу MajorLeagueCyber: MajorLeagueCyber Discourse

Если вы предпочитаете коммерческую поддержку или у вас есть особый проект, свяжитесь с нами.

Управляемый хостинг

Хотите использовать CTFd, но не хотите заниматься управлением инфраструктурой? Ознакомьтесь с сайтом CTFd для получения управляемых развёртываний CTFd.

MajorLeagueCyber

CTFd тесно интегрирован с MajorLeagueCyber. MajorLeagueCyber (MLC) — это трекер статистики CTF, который предоставляет планирование событий, отслеживание команд и единый вход для событий.

Зарегистрировав своё CTF-событие в MajorLeagueCyber, пользователи смогут автоматически входить в систему, отслеживать свои индивидуальные и командные результаты, отправлять райтапы и получать уведомления о важных событиях.

Для интеграции с MajorLeagueCyber достаточно зарегистрировать аккаунт, создать событие и указать client ID и client secret в соответствующем разделе CTFd/config.py или в админ-панели:

OAUTH_CLIENT_ID = None
OAUTH_CLIENT_SECRET = None

Авторы

Категории