Привет, Хабровчане! Надеюсь, многие из вас знают и посещают уютные хакерские конференции, форумы и митапы не только ради after-party, но и также для того, чтобы размять ум и смекалку на CTF (Capture The Flag). Организовывая мероприятие, в котором будет совмещено все вышеперечисленное, хотел бы поделиться опытом нашей команды по выбору платформы для СTF и собственно самой разработки.
CTF — соревнования, связанные с поиском уязвимостей и скрытых данных, которые условно разделяются на классические и тасковые. Классические соревнования еще называют Attack-Defence: суть в том, чтобы проанализировать образ системы, найти уязвимости, исправить их и проэксплуатировать на серверах других команд. Речь пойдет о тасковых заданиях.
На Хабрахабре присутствует немало людей, увлеченных CTF играми, поэтому на вопрос: почему существует множество сайтов, с рейтингом команд и участников, scoreboard'ами и аналитическими статьями, уже многие давно нашли ответ. Ведь это чуть ли не единственное занятие, в котором есть дух соперничества и каждый «безопасник» может померятся достоинством, хоть и в искусственных, и лишь в некотором роде приближенных к реальности условиям.
Одно дело участвовать в CTF, совершенно другое, с чем я вас и познакомлю — создавать и организовывать данное мероприятие.
Платформы для CTF бывают двух типов: готовые и самописные. Готовые платформы хороши своими «фичами», которые дорабатываются годами и проверены многими соревнованиями. Самописные же фактически гарантируют безопасность сайта т.к. их будут писать люди, которые знают больше о ней, чем среднестатистический программист-верстальщик (чего мы не можем гарантировать в случае с готовыми платформами, тут все зависит от прямых рук). Поэтому лично наш выбор пал на платформу Facebook CTF — интересная система со следующими настройками:
Разные типы тасков:
А так же есть подсказки, при открытии которых снимается какое-то количество баллов. Не малый плюс: У Facebook один из самых захватывающих интерфейсов среди платформ.
Платформа Facebook CTF вначале использовалась в таких CTF’ах, как Facebook CTF в Csu San Bernardino и на конференции BruCON 2014. Впоследствии Facebook начал продвигать политику OpenSource ПО. Это также и затронуло их CTF платформу.
И в мае 2016 года они открыли ее исходный код на github. Но, как вы можете догадаться, продукт был недоделанным, но разработчики не спали и к сентябрю сделали уже около 401 правки в их код с момента публикации. Надеемся, что они и дальше будут в таком же темпе апгрейдить их продукт :)
И вот мы столкнулись с первыми трудностями: оказалось, что платформа находится только в бета-тестировании и имеет множество недочетов. Перед нами встала задача исправить и подкорректировать некоторые баги. Не буду описывать весь процесс исправления икостылей, скажу лишь, что несколько раз хотели менять платформу, но все же решили, что будем одними из первых покорять Facebook CTF.
Все редактирования мы проводили, основываясь на нашем трехлетнем опыте участия в CTF соревнованиях. Учитывались все недочеты, допущенные другими соревнованиями, такие как отсутствие bugbounty и очков за него, связь с создателями тасков и многое другое! Также на это повлияла платформа ctftime, на которой в том числе и выкладываются множество райтапов с отзывами участников о каком-либо проводимом соревновании.
А это один из самых интересных этапов в разработке CTF'a! Рассмотрим области, которые мы затронули:
А для тех, кто хочет попробовать себя в создании тасков, мы сделали конкурс тасков.
Далее про конкурс тасков: это для вас реальная возможность потренироваться в создании своих тасков фактически во всех категориях! В случае, если ваш таск проходит на CTF, то вы получаете бесплатный билет на конференцию, уважение почет. Пока прислали мало тасков, поэтому шанс быть выбранным высокий! Заявки принимаются на почту: ctf@hackit-ukraine.com
Помимо 12 подготовленных категорий с интересными тасками, рассчитаных как для новичков, так и для профи в каждой из областях, 10-ку лучших команд ожидает оффлайн-тур с нестандартными и интересными конкурсами, более развлекательного, но все же не без смекалки, жанра (пока секрет какие :) ).
Проводиться онлайн тур будет с 23 сентября по 2 октября. И в каждый день будут открываться несколько тасков из различных категорий. По его итогам лучшие команды будут приглашены на оффлайн тур 7-ого октября на конференцию HackIT-2016. В финале команды будет ожидать тасковый CTF, но уже в реальной жизни с нестандартными конкурсами, блэкджеком идамами. Наша команда готовит увлекательные квесты в реальности со взломом веб-камер, RFID, замков и многое другое.
Разбор самых интересных заданий для страждущих будет опубликован после проведения мероприятия.
И скидка на само мероприятие для хабровчан: промокод на 10%, может кому пригодится:
HABR0710
CTF — соревнования, связанные с поиском уязвимостей и скрытых данных, которые условно разделяются на классические и тасковые. Классические соревнования еще называют Attack-Defence: суть в том, чтобы проанализировать образ системы, найти уязвимости, исправить их и проэксплуатировать на серверах других команд. Речь пойдет о тасковых заданиях.
На Хабрахабре присутствует немало людей, увлеченных CTF играми, поэтому на вопрос: почему существует множество сайтов, с рейтингом команд и участников, scoreboard'ами и аналитическими статьями, уже многие давно нашли ответ. Ведь это чуть ли не единственное занятие, в котором есть дух соперничества и каждый «безопасник» может померятся достоинством, хоть и в искусственных, и лишь в некотором роде приближенных к реальности условиям.
Одно дело участвовать в CTF, совершенно другое, с чем я вас и познакомлю — создавать и организовывать данное мероприятие.
Выбор платформы
Платформы для CTF бывают двух типов: готовые и самописные. Готовые платформы хороши своими «фичами», которые дорабатываются годами и проверены многими соревнованиями. Самописные же фактически гарантируют безопасность сайта т.к. их будут писать люди, которые знают больше о ней, чем среднестатистический программист-верстальщик (чего мы не можем гарантировать в случае с готовыми платформами, тут все зависит от прямых рук). Поэтому лично наш выбор пал на платформу Facebook CTF — интересная система со следующими настройками:
Разные типы тасков:
- Quiz — то же самое, что и обыкновенные вопросы, на которые требуется дать ответ (слово, фразу)
- Flag — тасковое задание (файл, ссылка и тд) ответ на который является флаг в соответствующем формате (наш формат h4ck1t{текст}).
- Bases — аналогия игры «Царь горы», кто первый решает таск, тот получает больше всех баллов (и так по убыванию)
А так же есть подсказки, при открытии которых снимается какое-то количество баллов. Не малый плюс: У Facebook один из самых захватывающих интерфейсов среди платформ.
Платформа Facebook CTF вначале использовалась в таких CTF’ах, как Facebook CTF в Csu San Bernardino и на конференции BruCON 2014. Впоследствии Facebook начал продвигать политику OpenSource ПО. Это также и затронуло их CTF платформу.
И в мае 2016 года они открыли ее исходный код на github. Но, как вы можете догадаться, продукт был недоделанным, но разработчики не спали и к сентябрю сделали уже около 401 правки в их код с момента публикации. Надеемся, что они и дальше будут в таком же темпе апгрейдить их продукт :)
Настройка платформы
И вот мы столкнулись с первыми трудностями: оказалось, что платформа находится только в бета-тестировании и имеет множество недочетов. Перед нами встала задача исправить и подкорректировать некоторые баги. Не буду описывать весь процесс исправления и
Все редактирования мы проводили, основываясь на нашем трехлетнем опыте участия в CTF соревнованиях. Учитывались все недочеты, допущенные другими соревнованиями, такие как отсутствие bugbounty и очков за него, связь с создателями тасков и многое другое! Также на это повлияла платформа ctftime, на которой в том числе и выкладываются множество райтапов с отзывами участников о каком-либо проводимом соревновании.
Создание тасков
А это один из самых интересных этапов в разработке CTF'a! Рассмотрим области, которые мы затронули:
- Admin/Misc — таски приближенные к ежедневным проблемам сисадминов.
- Cryptography — задания, которые основываются на особенностях криптографических алгоритмов.
- PWN — поиск уязвимостей и последующая эксплуатация сервиса, запущенного на каком-то порту.
- Exploit — аналогично PWN, только нам еще предоставляются исходники этого бинарника.
- Forensics — расследование инцидентов, анализирование различных дампов и др.
- Joy — нужно периодически отвлекаться на несерьезные таски:)
- Network — сетевые задания.
- PPC — задания на программирование.
- Reverse — анализирование бинарников с последующим изучением алгоритмов, используемых в программе, для получения флагов
- Steganography — поиск скрытых каналов передачи информации.
- Web — веб-безопасность.
А для тех, кто хочет попробовать себя в создании тасков, мы сделали конкурс тасков.
Конкурс тасков
Далее про конкурс тасков: это для вас реальная возможность потренироваться в создании своих тасков фактически во всех категориях! В случае, если ваш таск проходит на CTF, то вы получаете бесплатный билет на конференцию, уважение почет. Пока прислали мало тасков, поэтому шанс быть выбранным высокий! Заявки принимаются на почту: ctf@hackit-ukraine.com
Оффлайн тур H4ck1t CTF
Помимо 12 подготовленных категорий с интересными тасками, рассчитаных как для новичков, так и для профи в каждой из областях, 10-ку лучших команд ожидает оффлайн-тур с нестандартными и интересными конкурсами, более развлекательного, но все же не без смекалки, жанра (пока секрет какие :) ).
Проведение соревнований
Проводиться онлайн тур будет с 23 сентября по 2 октября. И в каждый день будут открываться несколько тасков из различных категорий. По его итогам лучшие команды будут приглашены на оффлайн тур 7-ого октября на конференцию HackIT-2016. В финале команды будет ожидать тасковый CTF, но уже в реальной жизни с нестандартными конкурсами, блэкджеком и
Надеюсь не сочтут за коммерческую рекламу, регистрироваться на CTF можно здесь
Разбор самых интересных заданий для страждущих будет опубликован после проведения мероприятия.
И скидка на само мероприятие для хабровчан: промокод на 10%, может кому пригодится:
HABR0710
Поделиться с друзьями
Комментарии (4)
alice23
06.09.2016 15:42Промокод, как я поняла, для участия в форуме hackit-ukraine.com? Потому что если это для CTF, то не понятно куда его вбивать
kot9pko
11.09.2016 12:48Участие в СTF бесплатное. Промокод на билеты для самой конференции, где будут выступать с докладами.
chupasaurus
Спасибо за труды!
Добавлю каплю дёгтя:
Почините бар с иконками на странице регистрации, при уходе влево нельзя отмотать ленту назад.
Смените тэг title (как минимум в дэшборде), у вас всё же не Facebook :).