Платформа для проведения соревнований по компьютерной безопасности в формате Task-Based CTF. Проект по программированию.
Примечание: процесс тестировался на ОС Linux и Windows. На macOS не тестировался (и пока не планируется), но всё тоже должно работать
Шаги "Установка Python" — "Включение русского языка" нужно выполнять только при первом запуске.
Для работы необходим Python 3. Желательно использовать версию 3.7 или выше. Если Python нужной версии у вас уже установлен, можете пропустить этот шаг.
Алгоритм установки:
-
Debian/Ubuntu-based Linux:
sudo apt-get install python3
-
Arch Linux:
sudo pacman -S python
-
macOS (необходим Homebrew):
brew install python
-
Windows: Скачать и установить Python 3 отсюда, при установке отметить галочку "Add Python 3.7 to PATH" или подобную.
Необходимо выполнить команду: pip install -r requirements.txt
, находясь в папке с проектом (в ней должен
находиться файл requirements.txt
)
Предполагается, что перед выполнением этого шага вы находитесь в папке с проектом.
Примечание: если команда python3 не найдена, то замените python3 на python
Необходимо выполнить команду:
python3 scripts/bootstrap_db.py
При этом будет выведен пароль администратора (root). Запомните его, он понадобится для входа в систему.
При необходимости пароль любого пользователя можно сменить. Для этого воспользуйтесь командой:
python3 scripts/update_password.py <ПОЛЬЗОВАТЕЛЬ>
Затем введите новый пароль пользователя (вводимые символы не будут отображаться).
Если вы хотите включить русский язык, то вам нужно отредактировать файл configuration.py
, заменив
['en_US', 'ru_RU']
на ['ru_RU', 'en_US']
в строке 33.
Предполагается, что перед выполнением этого шага вы находитесь в папке с проектом.
Необходимо выполнить команду python3 main.py
.
После этого сервис станет доступным по ссылке: http://localhost:8899.
Для входа в систему воспользуйтесь следующими учётными данными:
- Имя пользователя:
root
- Пароль: пароль, полученный на шаге "Подготовка базы данных"
- Ace - Веб-редактор кода
- W3.CSS - Таблицы стилей
- Loguru - Ведение логов
- Pygments (ссылка без HTTPS) - Подсветка кода
- Markdown (пакет Python) - Форматирование текста заданий
- Flatpickr - Выбор даты и времени
И другие (например,
sqlite3
)