Баннер мобильный (1) Пройти тест

Capture the Flag (CTF) в кибербезопасности: все, что нужно знать об этой игре

Рассказываем про спортивный хакинг

Разбор

7 июня 2024

Поделиться

Скопировано
Capture the Flag (CTF) в кибербезопасности: все, что нужно знать об этой игре

Содержание

    Как кибербезопасникам получить опыт? Играя! Рассказываем про формат CTF(Capture the flag) — популярных соревнований по кибербезопасности. Как проходит игра, каких задач ожидать, советы от участника — ищите в статье.

    Что такое Capture the Flag 

    Capture the Flag (CTF) — это командные соревнования в области информационной безопасности. Главная задача участников — найти и захватить «флаг» или «флаги» противника. Флаг может выглядеть как строка или кусок кода, их нахождение доказывает успешное выполнение определенной задачи. 

    Концепция CTF берет свое начало из реальной, хотя и не очень популярной в России дворовой игры «Захвати флаг». В ней команды или участники захватывают вполне реальный флаг соперника: платок, небольшой предмет или настоящий флажок. Побеждает тот, кто принесет вражеский флаг на свою территорию.

    Игра захват флага irl
    Источник

    Первая игра Capture the Flag по кибербезопасности прошла на конференции DEF CON в 1996 году. С тех пор соревнования CTF стали популярны во всем мире и превратились из развлечения в инструмент для обучения и оценки навыков в области кибербезопасности.

    Фото с CTF-соревнования на DEF CON
    На сайте DEF CON сохранились фотографии даже с самого первого CTF. Источник

    Сегодня такие соревнования проводят в России и по всему миру в разных форматах: очно, онлайн или в смешанном варианте. Есть даже общий рейтинг команд — все серьезно.

    Как проходят соревнования Capture the Flag

    Организационные детали

    Соревнования Capture the Flag (CTF) могут проходить в различных форматах, но обычно процесс состоит из нескольких этапов: регистрации, отборочного этапа (заданий, которые определяют направление и уровень участника), этапа решения задач (некоторые соревнования проводятся в два этапа, например онлайн и очный) и подсчета очков.

    Длительность соревнований Capture the Flag (CTF) может варьироваться в зависимости от формата и масштаба мероприятия.

    • Однодневные CTF. Обычно длятся от 6 до 12 часов. Эти соревнования могут проходить как в очном формате, так и онлайн. Это распространенный формат для локальных или региональных мероприятий.
    • Многочасовые CTF. Такие соревнования могут длиться от 24 до 48 часов. Часто они проводятся на выходных, чтобы участники могли посвятить больше времени решению задач. Это типично для международных или крупных онлайн-мероприятий.
    • Недельные CTF. Редко, но встречаются CTF, которые длятся целую неделю. Это полезно для участников, которые хотят более гибко распределять свое время на решение задач.
    • Многоэтапные CTF. Некоторые соревнования проходят в несколько этапов, каждый из которых длится несколько дней или недель. Например, отборочный этап может проходить онлайн в течение недели, а финал — в очном формате и длиться один или два дня.

    Defcon CTF, одно из самых престижных CTF-соревнований в мире, обычно длится около трех дней (72 часа). Google CTF включает отборочный этап на 48 часов и финал, который длится несколько дней. Hack The Box CTF часто проводится в формате выходного дня, длительностью от 24 до 48 часов.

    Типы CTF и направления

    С течением времени соревнования Capture the Flag меняются, организаторы стремятся придумать новые фишки, чтобы выделиться на фоне других. Но все-таки обычно соревнования по CTF проходят в двух форматах: Attack-Defense (он же Classic) или Jeopardy (он же Task-Based).

    В формате Attack-Defense участники получают одинаковые серверы с набором уязвимостей. На этих серверах хранится информация — флаги. Задача каждой команды — найти и устранить слабые места на своем сервере и воспользоваться найденными уязвимостями, чтобы получить флаги соперников. Победителем становится команда, которая заработала наибольшее количество флагов и имеет наименьшее количество уязвимостей на своих серверах.

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

    Первая команда или участник, достигшие определенного количества очков или первой позиции в общем рейтинге, одерживают победу.

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

    Атмосфера соревнования V Кубок CTF России

    Какие задания бывают на соревнованиях Capture the Flag

    Задания на соревнованиях Capture the Flag (CTF) можно условно разделить на несколько направлений:

    Криптографические задачи — расшифровка сообщений, взлом шифров, создание собственных криптосистем и анализ криптографических протоколов.

    Поиск уязвимостей — в программных продуктах, веб-сайтах или сетях. Эксплуатация уязвимостей, обнаружение SQL-инъекций, XSS- и других видов атак.

    Реверс-инжиниринг — задания, требующие анализа бинарного кода, декомпиляции программ, поиска скрытых функций и восстановления исходного кода из бинарных файлов.

    Форензика, она же цифровая криминалистика — задачи, связанные с анализом цифровых следов, восстановлением удаленных данных, идентификацией пользователей по их цифровым следам и анализом вредоносного ПО.

    Сети и безопасность — задания, проверяющие навыки настройки и управления сетевыми устройствами, настройки брандмауэров, обнаружения и устранения сетевых атак.

    Пентест (тестирование на проникновение) — задания, имитирующие реальные атаки на информационные системы, включая сканирование портов, подбор паролей, эксплуатацию уязвимостей и анализ сетевого трафика.

    OSINT (разведка на основе открытых источников) — задания, требующие сбора информации из открытых источников для решения задачи. Например, определение IP-адресов, доменов, адресов электронной почты и другой информации.

    Особая изюминка заданий на соревнованиях по CTF — их формулировки. Чаще всего задания «обернуты» в какую-то историю, например:

    К вам подбегает испуганный мужчина со смартфоном: «Я написал тред в одной соцсети, и он завирусился. Вот наутро перечитал, чуть не сгорел со стыда и все удалил. Но тред сохранился архивом на одном сайте. Можем его как-нибудь удалить? Его же потом могут найти и прочитать мои дети».

    В адресной строке виднеется: its-cringe-archive-997wqau.spbctf.ru/archive/dmzvwk9d75

    Найдите способ удалить архив с сайта.

    За забавной историей скрывается настоящее ИБ-расследование, по ходу которого команде нужно найти две уязвимости, воспользовавшись которыми, они смогут получить e-mail, хеш пользователя, а также пароль, соответствующий этому хешу. Эти данные позволят зайти на сайт и удалить кринжовый тред. Команда получит заветный флаг и баллы. Прочитать подробный разбор этого кейса можно здесь.

    К заданиям могут прилагаться дополнительные материалы: исходные файлы (например, apk), ссылки или интерактивные объекты, как в задаче «Cardan».

    «Ух, опять что-то в карданный вал вступило!» — перед вами стоит огромный полуробот-полуавтобус и держится за поясницу.‎ «Ну чего смотришь, выручай! Надо разобраться с модулем трансформации, чтобы меня не клинило после каждого превращения… а пароль от модуля трансформирован!» — робот, скрючившись, протягивает бумажку с паролем.‎

    На земле валяется шестиугольный диск, на котором пунктиром намечены места под отверстия.

    its-cardan-rih78ry.spbctf.ru/ 

    Интерактивный шифровальный диск из задачи Cardan. Источник

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

    Если интересно узнать, как это работает, — здесь есть полный разбор.

    В интернете много площадок, на которых опубликованы разборы заданий прошлых CTF-соревнований и примеры похожих задач. Многие CTF-игроки советуют изучать разборы и практиковаться как можно больше — пока количество не перейдет в качество. Много полезных ссылок можно найти на сайте «CTF в России»

    Тиркен Кевкей
    участник CTF Skillfactory, специалист по информационной безопасности

    Первый опыт участия в CTF показал, что всегда есть задания, к которым ты не готов. Больше половины задач щелкаются как орешки, не всегда с первого раза, иногда с «молотком», но щелкаются. А после начинаются задания, темы которых ты или не изучал вовсе, или еще не проходил. На этом моменте и начинается соревнование.

    Всегда нужно гуглить все, что смущает, порой даже целые куски кода. Очень много заданий похожи по логике, поэтому в интернете можно найти подобное решение и переписать/изменить под свою ситуацию. Этим CTF мне и нравится, что уходишь с багажом новых знаний. 

    Также нужно помнить, что на CTF — не реальные машины, в них всегда есть уязвимость/решение, просто не всегда в стандартных местах. Описание задания — самая главная подсказка, относиться к нему нужно как к загадке.

    Всегда смотреть WriteUp, даже если ты уже решил это задание, — как правило, решения могут отличаться, порой и вовсе кардинально. Также советую смотреть видео с предыдущих соревнований. Не факт, что найдешь решение, но вдохновиться можно. Я так делаю, если захожу в тупик по решению. К примеру, я вижу уязвимость, связанную с SQL, и не могу решить, уже зашел на сайт «Хакерские трюки», но и там информация мало что дает, тогда я нахожу на видеохостинге разбор тасков по SQL на четыре часа и смотрю.

    Мои советы участникам CTF: гуглить, пить много воды, не забывать о еде, периодически вставать и ходить. Если зашел в тупик — переходить к другому заданию. Если и это не помогает, то нужно отвлечься хотя бы на 15-20 минут (но если столько времени не осталось до конца CTF, тогда нужно включать режим «берсерка»).

    Зачем участвовать в Capture the Flag

    Такие соревнования — отличная возможность попрактиковаться в решении задач, связанных со взломом и защитой компьютерных систем, получить практические навыки и знания в области информационной безопасности. Обычно специалисты участвуют в CTF по нескольким причинам:

    • Практический опыт. Участие в CTF предоставляет уникальную возможность попрактиковаться в реальных или симулированных средах. Это позволяет специалистам развивать навыки в области поиска и эксплуатации уязвимостей, а также в области защиты информационных систем.
    • Развитие креативности и аналитических способностей. В процессе решения задач CTF участники часто сталкиваются с нестандартными сценариями и требованиями. Это способствует развитию креативного мышления и умению находить необычные пути решения проблем.
    • Тимбилдинг и коллективная работа. Многие CTF проводятся в командном формате, где участники должны сотрудничать и обмениваться знаниями и опытом. Это способствует развитию навыков работы в команде и эффективной коммуникации.
    • Подготовка к реальным ситуациям. Задачи CTF часто моделируют реальные сценарии атак и защиты. Участие в соревнованиях помогает специалистам лучше понимать тактики злоумышленников и развивать стратегии защиты.
    • Повышение профессионального уровня. Успешное участие в CTF и достижение хороших результатов может служить дополнительным подтверждением компетенций в области кибербезопасности. Это может быть полезным при поиске работы или продвижении по карьерной лестнице.

    Коротко о том, что такое CTF

    CTF в ИБ, или Сapture the Flag — это командные соревнования в области информационной безопасности. Главная задача участников — найти и захватить «флаг» или «флаги» противника.

    Обычно соревнования по CTF проходят в двух форматах: Attack-Defense (он же Classic) или Jeopardy (он же Task-Based).

    Соревнования CTF — отличная возможность попрактиковаться в решении задач, связанных со взломом и защитой компьютерных систем, получить практические навыки и знания в области информационной безопасности. 

    Полезные ссылки

    1. Топ-30 вопросов по информационной безопасности на собеседованиях
    2. Как стать специалистом по кибербезопасности
    3. Кто такой «белый» хакер

    Разбор

    Поделиться

    Скопировано
    0 комментариев
    Комментарии