В декабре OTUS при поддержке VolgaCTF и СTF.Moscow приглашает всех, кому близко направление ИБ, на онлайн-соревнования по поиску уязвимостей. Узнать подробнее и зарегистрироваться можно здесь. А пока рассказываем подробнее про формат и участие, а также вспоминаем, как прошло мероприятие в 2019 году.



Формат


Аббревиатура CTF расшифровывается как Capture the flag, захват флага. Существует 2 формата таких соревнований:

  1. Attack-defense, где команды получают свой сервер или сеть и должны обеспечивать их функционирование. Задача набрать как можно больше очков за защиту или украденную информацию («флаги») у команд-противников.
  2. Task-based, где каждый участник получает набор заданий и за отведенное время должен прислать решения. Ответ, он же флаг, может быть набором символов или фразой.

Наши CTF-соревнования организованы в формате task-based.

Как это было в прошлом году?


В 2019 году участие приняло 217 человек. Участникам предстояло решить 9 заданий по три в каждом направлении: реверс-инжиниринг, пентест и безопасность Linux. На выполнение отводилось 5 часов.

У задач разный уровень сложности и, соответственно, стоимость в баллах. В прошлый раз только 40% из присланных ответов были засчитаны. Приводим примеры решения прошлогодних задач:

1. Реверс-инжиниринг


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

пример задания

Название: Bin
Баллы: 200

Описание:
В этот раз нам попался бинарный файл. Задача все та же, достать секретный пароль.
Вложение: task

Решение:
Дан бинарный файл. Загружаем в дизассемблер и видим шесть функций проверки, написанных на С++.

Они выполнены идентично и вызываются друг в друге, проверяя флаг по кусочкам из 5 элементов.

Поэтапно восстанавливаем с помощью информации из дизассемблера. Получаем флаг частями:

0) проверка длины
1) flag{
2) feefa
3) _172a
4) k14sc
5) _eee}

Объединяем и получаем флаг:

flag{feefa_172ak14sc_eee}

2. Пентест


Участники ищут уязвимости веб-сайтов методами тестирования на проникновение.

пример задания

Название: Databases
Баллы: 100

Описание: Сайт активно использует базы данных. Попробуй провести SQL-инъекции.
Ссылка на сайт: 193.41.142.9:8001/shop/login

Решение:
Идем в основной раздел магазина /shop/products/, потыкав в поле поиска, обнаруживаем sql-инъекцию.

Вводим 1" OR «1» = «1» —, листаем вниз и видим отсутствовавший ранее товар, флаг находится в его описании.

Flag: flag{5ql_1nject10n_15_t00_51mpl3_f0r_y0u}


3. Безопасность Linux + безопасность разработки


Задачи направлены на проверку корректности конфигурации серверов и поиск ошибок в разработке ПО.

пример задания

Название: Algo
Баллы: 50

Описание: У нас новая задача. Провести проверку safe development. Заказчик предоставил архив с открытой частью разрабатываемого сайта. Для проверки своего алгоритма хеширования он предоставил хеш: 666c61677b32646733326473323334327d. Проверь алгоритм на возможность обратного преобразования.

В архиве содержится исходный код части сайта.
Ссылка на сайт: 193.41.142.9:8002/
Вложение: task.7z

Решение:
В исходных кодах есть алгоритм хеширования паролей. На самом деле, это не алгоритм хеширования, а просто преобразование данных из строкового формата в шестнадцатеричный.

Используем Python:

import binascii binascii.unhexlify(«666c61677b32646733326473323334327d»)

Получаем флаг: flag{2dg32ds2342}


Посмотреть все задачи CTF-2019 вы можете здесь.

Что будет в этом году?


Мы добавили 4-ю дисциплину «Безопасность веб-приложений». За 6 часов участникам предстоит решить 12 заданий — по 3 в каждом направлении.

Сроки и призы


Соревнование пройдет 5 декабря с 10 до 16. В каждой из категорий: реверс-инжиниринг, пентест, безопасность Linux и безопасность веб-приложений — определяются свои победители.

Регистрация открыта до 4 декабря до 19:45

Главные призы — бесплатное обучение в OTUS на курсах по ИБ — достанутся тем, кто первым решит правильно все 3 задачи в одной из категорий. Тех, кто займет вторые и третьи места, ждут эксклюзивные скидки на обучение. И конечно, все участники получат новые знания, удовольствие от решения задач и бонусную скидку 10%.

8 и 10 декабря организаторы и преподаватели проведут специальные вебинары, где подведут итоги, разберут решения задач, а также расскажут подробнее о наших курсах.

Кто может стать участником CTF-соревнования?


Мероприятие открыто для каждого, кто в той или иной степени интересуется информационной безопасностью.

Хотите узнать больше? Тогда ждем вас на вводном вебинаре 3 декабря в 20:00, где мы расскажем обо всех условиях проведения и ответим на ваши вопросы. Записывайтесь, чтобы не пропустить трансляцию.