Слайд 2
Кто мы?
CIT CTF
Dr. Giovanni Vigna и iCTF
RuCTF
HackInTheBox
HC’s Capture
the Flag
C.I.P.H.E.R.
РусКрипто
Codegate
При подготовке к данному докладу был составлен
небольшой FAQ. Команда HC’s Capture the Flag в помощь другим командам опубликовала его по адресу http://ctf.hcesperer.org/orga.html.
Полная версия и презентация доступна на сайте http://ctf.ifmo.ru.
Слайд 3
Сложности.
Поддержка:
Университета или организации.
Хорошее оборудование и пропускная способность Интернет
канала.
Мотивированные и квалифицированные люди, готовые работать на CTF.
Организация людей:
Разработчиков
Спонсоров.
Разработка
концепции игры одновременно сложной, в тоже время, интересной и захватывающей.
Создание безупречной автоматической системы начисления баллов, которую невозможно обмануть.
Давление времени.
“CTF - это целый комплекс небольших подзадач, которые необходимо органично собрать воедино и обеспечить безотказную работу всего комплекса на протяжении всей игры.” – Илья Зеленчук, организатор RuCTF
Слайд 4
Основные технические проблемы, которые всегда случаются.
CTF на базе
университетов намного проще поддержать с технической точки зрения из-за
доступности хорошей и распределенной технической базы.
В любой сложной системе, все что может сломаться, обязательно сломается, и к этому нужно быть готовым. Не должно быть проблем с переносом игры на запасные backup сервера, и этот процесс должен быть максимально автоматизирован с помощью самописных shell скриптов.
Основная проблема – это железо и время, требуется соответствующее «кашерное» оборудование.
Проблемы с сетевой инфраструктурой.
Авторы сервисов и заданий почти всегда не успевают реализовать свою разработку в необходимые сроки.
На сайте HC’s Capture the Flag есть хорошее руководство по написанию сервиса для CTF и руководство по написанию хорошего сервиса для CTF. Каждая ошибка, описанная в этих руководствах, была допущена на практике.
Советы:
Все новое необходимо тщательно тестировать и проводить моделирование процесса игры.
В любой момент времени в жюри должно быть как минимум 2 человека, готовых помочь командам.
Не допускать ситуации, когда только один человек может произвести определенные действия на игре.
Слайд 5
Необходимое аппаратное и программное обеспечение.
Open-source + самописное.
Из коммерческих
VMWare Wokrstation для создания образов. Для запуска VMware Player.
Среди
организаторов становится популярным использование VirtualBox.
Для организации сети самым лучшим решением является OpenVPN.
Gameserver - на любом языке программирования. В сети также есть и готовые варианты.
Многие организаторы создают gameserver с использованием функциональных языков программирования, например Erlang.
Слайд 6
Пример успешной конфигурации оборудования из расчета на 6
команд для offline CTF.
Игровой сервер
Два четырехъядерных процессора Intel® Xeon®
серии 5345
DDR2 FB DIMM 667MHz 2Gb x 4шт. = 8Gb
RAID контроллер SAS
1 SATA диск
Сервер БД
Два четырехъядерных процессора Intel® Xeon® серии 5500
DDR3 DIMM 1333MHz 1Gb = 6Gb
RAID контроллер SAS
2 SAS диска
Слайд 7
1 Коммутатор Cisco Catalyst 3560
Сетевое оборудования из расчета
на 6 команд
6 Wifi коммутаторов
Патч-корды
Слайд 8
Общая настройка.
Довольно сложная и качественная система, которая охватывает
все компоненты информационной системы.
Сетевое оборудование
OS.
Часто сложность заключается не в
самой настройке, а в поиске квалифицированных специалистов, способных качественно сделать необходимую настройку оборудования.
У многих команд настройка для CTF усложняется с каждым годом.
Отдельные задания требуют отдельных хостов, в связи с чем,
приходится запускать немалое количество виртуалок.
Часто все хосты на всех играх виртуализируют, потому что так легче делать откаты, копии, проводить тестирование и добавлять изменения во время игры.
Слайд 9
Скорость сети и расход трафика.
Минимум 100Mbit/sec, лучше 1000Mbit/sec.
Примерно
10-100 Gbytes трафика может быть израсходовано, это зависит от
концепции игры.
Если играть только в таски, то скорости в 10
Мбит/сек вполне хватит.
Слайд 10
Команда.
В среднем 5-6 человек.
1 разработчик на 1 сервис
или 1-2 таска.
Хорошая организация у команды RuCTF:
1 разработчик на
1 сервис
2 разработчика на проверяющую систему
1 ответственный за сборку игрового образа
2 сетевых админиcтратора
1 общий лидер команды
2-4 человека на организационные вопросы.
Слайд 11
Самая значимая статья расходов.
Хорошее техническое оснащение.
Время.
Люди.
Слайд 12
Средняя стоимость CTF.
Хорошая современная инфраструктура зарубежных организаторов составляет
от 10 – 15 тыс. EUR.
Основные деньги тратятся на
оборудование и Интернет доступ с хорошей пропускной способностью.
Потребление электроэнергии составляет незначительную сумму.
Слайд 13
Спонсоры.
Примерно 2 – 3 компании, готовые активно спонсировать
соревнования.
Спонсорство обычно проявляется в поддержке техническим оснащением и
призами.
За рубежом все проще, поддержку в основном оказывает университет, на базе которого проводятся соревнования.
Слайд 14
CIT CTF 2010
- 64 команды
- 47 приняли активное
участие
Слайд 15
Наш setup
Сервер на базе Supermicro.
Gameserver с применением LAMP.
Трафик
– 1 Gbyte трафика.
MySQL сервер 542,871 запрос за 24
часа, 194 в минуту.
Рейтинг заданий показал оценку – 4.
20 часов на задания.