Pull to refresh

RuCTFE 2009

Reading time 5 min
Views 916
Self Promo

Abstract


RuCTFE 2009 7 ноября 2009 года в России были впервые проведены международные студенческие соревнования по защите информации. В этой статье разберемся что такое CTF, чем отличается RuCTFE от RuCTF, что же представлял из себя RuCTFE 2009, что это за команда ХакерДом и что же делать, если вы тоже захотели принять участие в подобных соревнованиях.

Что такое CTF?


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

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

Неотъемлемой составляющей CTF является отсутствие единых правил соревнований. В каждую игру организаторы вносят что-то новое. Практически никогда заранее не известно, какая будет операционная система на игре, какие будут сервисы и на каких языках программирования они будут написаны. Команды должны быть готовы ко всему, то есть уметь быстро ориентироваться в новой ситуации.

CTF в России


Об этом уже писали. Добавлю статистику по количеству команд из России, принимавших участие в различных международных студенческих соревнованиях.

График (К.О.) # Соревнования Год
CTF stats
1 iCTF 2006 2006
2 C.I.P.H.E.R. 3 2007
3 iCTF 2007
4 C.I.P.H.E.R. 4 2008
5 iCTF 2008
6 C.I.P.H.E.R. 5 2009
7 RuCTFE 2009





На данный момент соревнований проводимых в России не так много. Это всероссийские
RuCTF (ХакерДом, УрГУ)
и региональные
UralCTF (ХакерДом, УрГУ),
UFOCTF (UFOlogists, ТТИ ЮФУ).

Надеюсь, что этот список скоро пополнят как минимум SiBears (ТГУ) и CIT (СПбГУ ИТМО).

RuCTFE 2009


В отличие от RuCTF, которые проходят очно и только для российских студенческих команд, RuCTFE 2009 были международными и онлайновыми.

Участие приняли 43 команды (iCTF 2009 — 38, C.I.P.H.E.R. 5 — 33) из 11 стран мира: России, Германии, США, Австрии, Италии, Франции, Аргентины, Норвегии, Хорватии, Индии и Вьетнама. Вероятно, на данный момент это были самые крупные студенческие CTF-соревнования.

Правила и схема сети соревнований были вполне обычными для CTF.

Network


Соревнования проходили в течение 10 часов. Основной неожиданностью для команд оказалась операционная система, выбранная для игры. Чаще всего можно встретить различные дистрибутивы Linux, BSD. В этот раз при загрузке виртуальной машины команды сначала увидили debian и слегка успокоились, но затем запускались X, что уже довольно непривычно, а в них запускался эмулятор android 1.6. Все сервисы были написаны под него.

Сервисы

Их было пять. Все подробности вы можете прочитать в документации на них, но это спойлер для тех, кто хочет сначала попытаться проверить свои силы и самостоятельно найти уязвимости в образе (GPG key: djlrfgbdjbdbyjplhfdcndeqvfvfdjnbz), который получали команды. Приведу краткую информацию по сервисам от самих разработчиков.

CryptoPizza
Сервис для получения заказов на телефон работника службы доставки пиццы. Написан на языке Java под платформу Google Android v1.6. Реализует придуманный криптопротокол, использующий симметричное AES и асимметричное RSA шифрование для безопасной доставки заказов на телефон по открытым каналам связи. Заказы на устройстве хранятся в СУБД SQLite.

F
ftp сервер с антивирусной функциональностью. Написан на языке python с использованием Android Scripting Environment. ftp реализован при помощи lr парсера, построенного по КС-грамматике, описывающей язык команд, посылаемых клиентами. Реакции на команды реализованы в функциях, вызываемых при свертках соответствующих продукций. Антивирусный компонент позволял производить сигнатурный анализ загруженных файлов и их проверку при помощи «эмуляции», допускал обновления сигнатурных баз.

Jabber
Сервис реализующий идею Jabber-бота на телефоне. Этот простой бот предоставляет функции аналогичные новостной рассылке. Написан на языке Perl под платформу Google Android v1.6 с использованием Android Scripting Environment.

Simple
Простой сервис, реализующий функциональность установки/проверки/листинга установленных флагов. Использует простой криптопротокол, основанных на двух криптоалгоритмах, основанных на сетях Фейстеля с фиксированными ключами для шифрования запросов и ответов. Выполнен для Linux EABI с поддержкой tcp сокетов и POSIX threads.

Stalker
Сервис многопользовательской онлайн игры. Реализован в виде выделенного сервера и клиентов для подключения. В качестве флагов используются ценные объекты игры — артефакты, продаваемые торговцу. Технически сервер и клиент реализованы в виде Perl-скриптов для Linux. Кроме того для телефона на языке Java под платформу Google Android v1.6 реализована карта, отображающая состояние игрока: видимые объекты, местоположение торговца, других игроков, аномалий, монстров и артефактов. Значительных уязвимостей в сервисе нет, и командам необходимо разобраться с принципом работы клиента и написать удобный интерфейс для управления своим персонажем, возможно, автоматизированный некоторым искусственным интеллектом.

Таски

Помимо сервисов командам предлагалось оценить свои силы в анализе black box, поиске в Gopher`е, алгоритмах и Haskell`е, стеганографии, знании классики мировой фантастики и… русских танцах.
Russian dance


Итоги RuCTFE 2009


Игра задалась не сразу. Большинство команд испытывало проблемы как в целом с настройкой эмулятора android`а, так и c его нестабильной работой, которая зачастую оказывалась результатом зловредных действий со стороны других команд. Тем не менее, начиная с середины игры развернулась нешуточная борьба в верхних 15 строчках скорборда.

В результате, top5 скорборда выглядел следующим образом:
  1. squareroots (University of Mannheim, Германия)
  2. 0ldEur0pe (RWTH Aachen, Германия)
  3. SiBears (ТГУ, Россия)
  4. Siths (УрГУ, Россия)
  5. h4ck!nb3rg (Upper Austria University of Applied Sciences, Австрия)


ХакерДом, кто они?


Это команда, а с недавнего времени и клуб, из УрГУ. С них началось участие России в международных CTF.
Они провели первые в России:
  • региональные UralCTF в 2006 (при инициативной поддержке команды из ЮУрГУ и ЧелГУ)
  • всероссийские RuCTF в 2008
  • международные RuCTFE в 2009

Команда ХакерДом неоднократно становилась призером международных соревнований, а в 2008 году стала победителем C.I.P.H.E.R. 4.

Из ХакерДома подготовкой и проведением RuCTFE 2009 занималась команда разработчиков из 10 человек при активной технической поддержке провайдера УралВЭС и группы компаний Clustertech.

Хочешь участвовать в CTF?


Если интересует студенческий CTF — собирай команду и регистрируйся на ближайших UCSB iCTF, а потом и на RuCTF 2010 quals!
А если хочется помериться силами и с профессиональными командами, то удачи на DEF CON ;)
Tags:
Hubs:
Total votes 28: ↑23 and ↓5 +18
Comments 16
Comments Comments 16

Posts