AgatCTF-2019

Об игре

Внимательно прочитайте этот текст, если вы никогда не играли в Attack–Defense CTF или не уверены в том, как всё будет происходить.

Когда вы придёте на площадку, вас, как и другие команды, будет ожидать компьютер с запущенной виртуальной машиной. Эта виртуальная машина — главный игровой сервер команды. Мы называем его образ. Образы, выданные всем командам, абсолютно идентичны. Не трогайте этот компьютер до 10:00.

Заранее про образ не известно практически ничего: мы даже не скажем, какая там установлена операционная система. Единственное, что известно про игровой образ наверняка, — это то, что на нём запущено какое–то количество сетевых сервисов. Примерами таких сервисов могут быть сервер электронной почты, форум, социальная сеть, и так далее.

Все компьютеры, находящиеся на площадке — и ваши личные, и игровые образы — соединены в локальную сеть. Таким образом, вы можете отправлять запросы к игровому образу любой команды. Для этого мы выдадим им похожие IP–адреса: образ первой команды будет доступен по адресу 10.10.1.2, второй — 10.10.2.2, третьей — 10.10.3.2 и так далее. IP–адреса, заканчивающиеся на .254, зарезервированы для маршрутизаторов, обслуживающих команды.

Проверяющая система

Мы закроем сеть между командами на первый час игры, с 10:00 до 11:00. За это время вы сможете спокойно изучить образ, найти сервисы и примерно разобраться, как они работают. В 11:00 сеть откроется. Кроме того, что вы сможете атаковать друг друга, свою работу начнёт проверяющая система.


Проверяющая система — это специальный сервер организаторов, который будет два раза в минуту проверять работоспобность сервисов на игровых образах всех команд. Если сервис будет работать некорректно, ваши баллы будут уменьшаться. Такое может произойти, если, например, вы пытались пропатчить свой сервис, но вместо этого что-то сломали, или другая команда удалила из вашего сервиса важные данные, и теперь он работает неправильно.

Кроме проверки работоспособности у проверяющей системы есть ещё одна важная задача: она пользуется функциональностью всех сервисов всех команд и оставляет там приватную информацию — флаги. Флаг в нашей игре будет выглядеть примерно так: 72DZHJQ509TPKPGRB1J9T7T9W6VVL5R=. Все флаги состоят из 32 символов, последний из которых — символ «=». Первые 31 символ — это цифры или заглавные латинские буквы. Никаких других символов во флагах быть не может. Если вы где-то нашли похожую строчку, то скорее всего это флаг.

Захват флагов

Вам разрешено захватывать флаги других команд практически любым компьютерным способом (нельзя использовать физическу силу, социальную инженерию и т.д.). Нельзя проводить деструктивные атаки (например, выполнять команду rm -rf /) или генерировать неоправданно большое количество сетевого трафика. В обоих этих случаях вы можете быть дисквалифицированы с соревнования.


Если вы захватили флаг, вам нужно как можно скорее предъявить его организаторам. Есть два способа сделать это:

    1) По TCP: подключившись к 10.10.10.10 на порт 31337 из вашей части игровой сети. Это можно сделать, например, командой nc 10.10.10.10 31337.


Если украденный флаг достаточно новый (был установлен в игровой образ не более 15 минут назад), то вы получите за него баллы. Количество баллов зависит от того, где в турнирной таблице находит команда, у которой вы захватили флаг. Чем ниже, тем меньше баллов вы получите за флаг. Если флаг украли у вас, то ваши баллы уменьшаются соответствующим образом, но никогда не опускаются ниже нуля очков.

Подсчёт баллов

Баллы считаются независимо по каждому сервису, который есть в игровом образе. Баллы вашей команды за сервис умножаются на коэффициент SLA от 0 до 1, показывающий, какой процент времени с начала игры этот сервис на вашем образе работал корректно. Если всё хорошо, то баллы за сервис умножаются на 1, то есть не меняются. И с другой стороны, если сервис был выключен всю игру, то баллы за него обнуляются.


Итоговый балл команды вычисляется как сумма таких произведений баллов на соответствующие коэффициенты SLA. Чем больше у вас итоговый балл, тем выше вы в таблице результатов.


Подробные правила начисления баллов смотрите на странице «Правила».

Подсказки на задания

Мы будем следить за ходом игры и при необходимости публиковать подсказки командам. Подсказки оглашаются всем командам одновременно.


По любым вопросам пишите нам на agatctf@agat.by

© 2019 ОАО "АГАТ-системы управления"- управляющая компания холдинга «Геоинформационные системы управления». Все права защищены.