how to make school ctf
TRANSCRIPT
Broslavksy Oleg,
SiBears, TSU ISC
September 29, Tomsk
Broslavksy Oleg,
SiBears, TSU ISC
September 29, Tomsk
Если дядя незнакомый,
С очень добрую улыбкой,
Предложил соревнованье
Вам с командой провести
Ты зови скорей команду,
Тренера и волонтёров,
Всех вожатых, журналистов,
Можешь даже стройотряд!
Различные навыки
7
Атмосфера в команде
8 (Скучный слайд. Покашляйте, чтобы пропустить)
Всегда помни что
в команде всегда должны быть опытные люди (с опытом как организации, так и самих игр)
эти люди должны уметь решать разные категории заданий
все, что движет и что держит разработчиков – инициатива; не дави на них!
Для хорошего заданья
Нужно хитро спрятать флаг.
Прячь его по младшим битам
Кадров видео про кошку,
Ролик закодируй морзе,
Морзе в BASE и в QR код.
Код пакуй с паролем лёгким
(например J=H@*&Q!/asd2i)
А в полученном архиве
Байты в хедере испорть!
UCUCUGA
11 (Скучный слайд. Отправь смс на номер 88005553535 чтобы пропустить)
Об уцуцуге пишут:
No one likes blind guessing games, and one of the most common critiques a CTF player will level is that it "required lots of guessing". (Alex Taylor aka @fuzzyl.
CSAW CTF Judge)
Try to avoid these as much as possible:
Random guessing challenges
Cracking passwords on zip files or stego programs ( PPP, Suggestions to running CTF)
Таски не должны зависеть от неконтролируемых ресурсов
12
Таск зависит от статьи на вики
13
При тестировании проблема обнаруживается и «исправляется»
При тестировании проблема
обнаруживается и «исправляется»
Таски не должны зависеть от неконтролируемых ресурсов
Таски не должны зависеть от неконтролируемых ресурсов
14
Таски не должны зависеть от неконтролируемых ресурсов
15
Таски не должны зависеть от неконтролируемых ресурсов
16
Таски не должны зависеть от неконтролируемых ресурсов
17
Таски не должны зависеть от неконтролируемых ресурсов
18
Не придумывай условий,
Их никто читать не будет!
Как и труЪ соревнованья
Ограничься "Get the flag"
Пример условия
Школьник - хакер никудышный!
Ты на школьные заданья
Много времени не трать.
Морзе, цезарь, BASE16,
Цифры в тексте подсчитать.
А в оставшееся время
Дай ЕГЭ им порешать
СИ реверсить очень скучно, Сделай лучше таск на Go. Напиши побольше кода, Обфусцируй посильней, Запакуй, добавь проверок И скомпиль его под ARM. В ARM любой банальный crackme Получает некий шарм
Best practices при организации школьного CTF
24
(Скучный слайд.) (To pass that slide donate $1 to save the panda now!)
Не заставляй школьников читать английские условия
Корректно определи возрастную категорию
Проведи перед соревнованием несколько семинаров для заинтересованных (основные категории, тулзы и приёмы решения)
Чтобы всё прошло успешно
Нужно многое успеть.
Написать с 0 платформу,
Расширяемость в ней учесть.
Сделать тесты, откомментить,
Написать README, TODO,
Заюзать Vagrant и Jenkinks,
Лицензировать под GNU.
Это просто - суток хватит,
Больше времени не трать,
Ведь уже через полгода
Переписывать опять!
Нагрузи свою платформу,
Словно вдруг пошёл DDoS
(Ты на каждую страничку
Раз по 5 пошли запрос)
И тогда твоя платформа будет радовать народ
Протестируй все заданья,
(можно просто посчитать),
Флаг проверь, все выложь скрипты
(автор делал - должен знать),
Схема тестирования заданий для School CTF
30 (Скучный слайд. Чтобы пропустить разделите на 0)
1. Проверка заданий as-is (созданы только ресурсы)
2. Доработка, написание пояснений
3. Проверка заданий с пояснениями
4. Заполнение описаний (ru+eng)
5. Тестирование первокурсниками и новичками
Просто следуйте советам
И тогда вы непременно
Проведёте лучший в мире
Грандиозный СИ-ТИ-ЭФ