В Омске вчера провели соревнование формата attack-defense — OmCTF.Lab-2018 в экспериментальном формате (в режиме «чёрного ящика»). Событие традиционно проходило в рамках III Международного ИТ-Форума. Представляем ёмкий и познавательный отчет со стороны организаторов — клуба исследователей OmCTF.
Прежде всего, нужно рассказать про план соревнования. Тут стоит отметить, что подготовка к OmCTF.Lab-2018 шла с сентября 2017 года в рамках проведения CTF-занятий OmCTF. Каждой команде на этих занятиях необходимо было разработать сервис с заложенными самописными уязвимостями согласно настоящему ТЗ. После разработки сервис передается другой команде в виде готовой виртуальной машины для развертывания.

— В начале соревнований каждая команда представляла свой разработанный сервис (описание основной идеи и легенды сервиса, какие функции реализованы, согласно представленному заранее ТЗ, какие новые технологии узнали, с какими трудностями столкнулись).
— Затем проводился анализ полученного сервиса, разработанного на предмет наличия уязвимостей с целью их устранения.
— Следом шло исследование на предмет наличия уязвимостей в других сервисах в режиме «черного ящика».
— И, наконец, представление результатов анализа различных типов уязвимостей в большом многообразии разработанных сервисах.
При оценке использовались следующие критерии:
- степень соответствия сервиса заложенным основным и дополнительным требованиям в ТЗ
- статус функционирования полученного сервиса (запуск в работу и обеспечение его функционирования)
- количество и сложность выявленных уязвимостей в полученном и в других запущенных сервисах в CTF-инфраструктуре, а также наличие разработанной программы по автоматизации возможности захвата и сдачи флага в систему жюри.
Обязательными к реализации были следующие возможности игрового сервиса:
- наличие характеристик для прокачки игрового персонажа (как минимум уровень);
- наличие инвентаря у персонажа;
- наличие ботов с некоторым игровым ИИ;
- API для управления ботами (с расчетом на управление сторонним ИИ)
- сервис должен иметь не менее 3 уязвимостей
- на каждую разработанную уязвимость требуется сделать эксплоит для проверки ее эксплуатабельности
- сервис должен предоставлять API для чекерной системы.

Среди дополнительных требований — наличие внутриигрового чата и рынков игрового инвентаря, использование systemd для запуска и работы с сервисом, утилита управления сервисом. Контейнеризация сервиса при помощи lxc или docker и соблюдение best-practices тоже учитывались. А также — регулярный бэкап конфигурации и данных сервиса с возможностью легкого и понятного восстановления, создание архитектуры для выдерживания большой нагрузки или минимизации времени ответа, понятное и информативное логирование, ну и, пожалуй, устойчивость к потере данных.

Результаты OmCTF.Lab-2018
1 — rwx (СибАДИ)
2 — Omaviat (Омский авиационный колледж)
3 — 0x1DEA (ОмГУПС)
4 — HawkSquad (ОмГТУ)
5 — Melkie (ОмГУ)
6 — R136a1 (ОмГТУ)
Была также учреждена отдельная номинация «За лучший игровой сервис», которая досталась команде rwx (СибАДИ).

Больше фото смотрите в альбоме
Организаторы — ФГБОУ ВО «Омский государственный технический университет», Ассоциация руководителей служб информационной безопасности при поддержке Главного управления информационных технологий и связи Омской области. Партнерами стали АО «Сбербанк-Технологии» и ООО «Русский хостинг» (Русхост).