
Writeup для челленджа бейджа DEF CON 30
Всем привет! Я Пит — также известный как Kybr — и это мой отчёт о прохождении испытания бейджа DEF CON 30.
В этом году задание было сильно сосредоточено на музыке и хакерской поп-культуре, что (я думаю) сделало его более доступным, чем некоторые предыдущие испытания бейджей. Огромная команда хакеров — лично и в Discord — работала над испытанием с того момента, как в четверг утром начали раздавать бейджи, и до воскресного вечера, когда мы наконец завершили последнее задание всего за четыре часа до окончания DEF CON. Огромное спасибо Майку, redactd и всей команде MKFactor за по-настоящему уникальный и красивый бейдж, а также за многие часы боли и страданий веселья!
Мы разделили задание на 3 части: сбор нот, сбор друзей и последняя нить. С нашей документацией можно ознакомиться здесь:
https://dc30badge.fandom.com/wiki/DC30Badge_Wiki
Наши записи доступны здесь:
https://docs.google.com/spreadsheets/d/1MdZgv_O3ogv4JDS07iobh5rhoDYXCsF7QVExuG08txA/edit#gid=0
Наконец, если вам нравится подобное, приглашаю присоединиться к нам в Discord для задания следующего года:
https://discord.com/channels/867438418212683796/867438418212683799
Спасибо за чтение!
Первое задание можно найти, выбрав пункт «Challenge» в главном меню. Перед нами появляется следующий текст:
Collect the Measusres
Break the Silence
Continue the Journey
ПРИМЕЧАНИЕ: Опечатка в слове Measures была случайной и не относится к заданиям.

Это отсылка к музыкальным тактам, изображённым на лицевой панели самого бейджа. На DEF CON существует 9 различных цветных типов бейджей, и на лицевой панели каждого типа было что-то своё.

Собрав фотографии всех 9, мы обнаружили, что на 8 есть музыка, а на 1 (сером CFP-бейдже) — буквы, составляющие POWWYGBR
Это ключ к упорядочиванию остальных 8 бейджей по цвету: фиолетовый, оранжевый, белый, белый, жёлтый, зелёный, синий, красный.

В таком порядке такты образуют начало песни «Peer Gynt Suite No.1».
Воспроизведение этих нот на бейдже в режиме «Play» открывает задание, часть 2:
ANSWER: in Play mode, play these notes at any speed:
GEDCDE GEDCDE GEGAEA GEDC GEDCDE GEDCDEDE GEGAEA B G# F# E
ПРИМЕЧАНИЕ: для этого необходимо находиться в октаве по умолчанию «4»; если нажать влево или вправо для смены октавы, часть 2 не откроется!
После воспроизведения «Peer Gynt Suite» пункт «Challenge» на бейдже теперь показывает сообщение Call YИИEႱ, а клавиатура теперь вместо нот проигрывает тоновые сигналы набора. «YИИEႱ» — это отсылка к песне «867-5309 / Jenny» группы Tommy Tutone, и, поскольку Jenny написано задом наперёд, нам нужно набрать её номер задом наперёд: 903-5768. Набор этого номера на самом бейдже ничего не даёт; для остальных заданий нужно было использовать физические телефоны в зоне Contests на конференции.

Набор 903-5768 на этих телефонах дал нам серию из 5 подсказок о 5 пропавших друзьях:
Alice - Was last seen shopping for a new water pipe
Bob - Little Bobby turn tables, dropped himself
Carol - Went to her favorite arcade
Dan - Greenwich manhattan
Eve - Cerebrum data link
Сообщение также говорило, что в оставшейся части заданий каждый ответ будет URL-адресом, начинающимся с https://defcon.org/badge/30/
Итак, мы отправляем ответы, добавляя его в конец этого URL. Если мы правы, открывается новая веб-страница со следующим заданием, а если нет — получаем стандартную ошибку 404 «not found». Теперь у нас есть 5 нитей, по одной на каждого из 5 пропавших друзей.
В сообщении YИИEႱ говорилось: «Алису в последний раз видели покупающей новый кальян».
Это был наш самый лёгкий вопрос, который познакомил нас с форматом заданий. «Water pipe» здесь — простая отсылка к кальяну, и мы нашли следующее задание, добавив «hookah» к указанному URL.
ANSWER: https://defcon.org/badge/30/hookah/
Сплошной синий экран
URL «hookah» показывает сплошной синий экран, в коде или сетевом трафике нет ничего интересного. Связка имени «Алиса», отсылки к кальяну и синего цвета указывает на «Алису в Стране чудес», где Алиса встречает гусеницу, курящую кальян. Мы добавляем «caterpillar» в конец URL и находим следующее задание.
ANSWER: https://defcon.org/badge/30/hookah/caterpillar
Изображение гусеницы
Нам дают картинку с курящей кальян гусеницей из «Алисы в Стране чудес». После загрузки изображения и изучения его метаданных мы обнаруживаем, что атрибут «OwnerName» содержит любопытное значение 9dFDfOi_-ss.

Это видеоссылка для YouTube-адреса, поэтому мы переходим на https://www.youtube.com/watch?v=9dFDfOi_-ss, где находится видео с нашей курящей гусеницей, декламирующей стихотворение «How Doth the Little Crocodile».
ANSWER: https://defcon.org/badge/30/hookah/caterpillar/howdoththelittlecrocodile
Поэзия
Нам дан текст When is a measure not for science? double the common form.
Это отсылка к «Common Measure» — поэтическому размеру, состоящему из четырёх строк и чередующему ямбический тетраметр (четыре стопы в строке) и ямбический триметр (три стопы в строке). Стихотворение «How Doth the Little Crocodile» написано этим размером. Оно состоит из 8 строк; подсчёт стоп в строках даёт 4,3,4,3,4,3,4,3, а удвоение этой формы даёт 8,6,8,6,8,6,8,6. Поскольку 86868686 не был допустимым URL, мы позвонили по этому номеру с конкурсных телефонов и получили код разблокировки Алисы (которая теперь появляется в пункте меню «Friends» на бейдже!)
В сообщении YИИEႱ говорилось «Little Bobby turn tables, dropped himself».
Это отсылка к комиксу XKCD «Exploits of a Mom» (https://xkcd.com/327/), в котором ребёнку дают имя, содержащее разрушительную логику SQL-инъекции.

ANSWER: https://defcon.org/badge/30/logic
Изображение рэпера «Logic»
Рэпер Logic известен тем, что назвал свой хит «1-800-273-8255» в честь телефона Национальной линии спасения от самоубийств (NSPL). https://en.wikipedia.org/wiki/1-800-273-8255_(song)
ANSWER: https://defcon.org/badge/30/logic/18002738255
О линии спасения
Предыдущая ссылка ведёт на страницу о линии спасения от самоубийств и кризисных ситуаций (Suicide & Crisis Lifeline), на которую, начиная с 2020 года, можно быстро дозвониться по номеру 988 (примерно как 911).
https://en.wikipedia.org/wiki/988_Suicide_%26_Crisis_Lifeline
(примечание: авторам задания респект за то, что привлекли внимание к этой важной работе и информации, какой бы неудобной для обсуждения она ни была)
ANSWER: https://defcon.org/badge/30/logic/18002738255/988
Геокэш поверх восьмёрки
Нам показывают символ геокэшинга над цифрой 8. Если взять ответ из предыдущего задания, 988, и разделить на 8, получится 123. Символ геокэшинга — подсказка, что в комнате 123 спрятан геокэш. При поиске в комнате 123 был найден символ геокэшинга с QR-кодом.
QR-код даёт текст «By the Numbers». Продолжая тему прошлых двух ответов, находим URL , который сообщает, что линия спасения получила 23 044 100 звонков (на момент написания).
В сообщении YИИEႱ говорилось, что Кэрол «пошла в свой любимый аркадный зал».
Это отсылка к сериалу «Мистер Робот», в котором любимый аркадный зал персонажа Кэрол называется «Fun Society». Позже главные герои сериала создают хактивистскую группу под названием «fsociety», основанную на этом имени.
ANSWER: https://defcon.org/badge/30/fsociety
Beastie Boys
Нам дают изображение Beastie Boys из их альбома «No Sleep Till Kawasaki». Продолжая тему «Мистера Робота»: внутри аркадного зала Fun Society есть аркадная игра «Intergalactic Planetary», название которой совпадает со словами из известной песни Beastie Boys «Intergalactic».
ANSWER: https://defcon.org/badge/30/fsociety/intergalactic
Intergalactic
Нам дают аудиофайл, в котором звучит «Night on Bald Mountain», а затем «Intergalactic». Если скачать и изучить аудиофайл, можно увидеть комментарий в метаданных со значением «v=N5aAu8CCQY0».

И снова это YouTube-ссылка, которая ведёт нас к докладу о фрикинге телефонов с DEF CON 7.
https://www.youtube.com/watch?v=N5aAu8CCQY0&ab_channel=DEFCONConference
Поиск по архивам DEF CON (https://defcon.org/html/defcon-7/defcon-7-pre.html#SpeakingSchedule) показывает, что доклад был прочитан в пятницу, 9 июля 1999 года, в 16:00 по PST, что соответствует 23:00 по GMT. Перевод этого времени в эпоху Unix даёт 931561200.
FINAL ANSWER: Call the number 931561200 on the contest phones to find Carol.


ANSWER: https://defcon.org/badge/30/01906967Unchained Melody
Нам дают аудиофайл, в котором играет «Unchained Melody». Эта песня, пожалуй, наиболее известна по сцене с гончарным кругом в фильме «Привидение» (Ghost, 1990). Название фильма Ghost в сочетании с более ранней подсказкой «Greenwich, Manhattan» (место действия «Охотников за привидениями») и тем фактом, что мы ищем Дэна, приводит нас к Дэну Эйкройду — актёру, сыгравшему Рэя Стэнтца в фильме «Охотники за привидениями» 1984 года.
ANSWER: https://defcon.org/badge/30/01906967/aykroyd
Охотники за привидениями
Нам дают изображение «Охотников за привидениями» 1984 года. Кому вы позвоните? Поиск телефонного номера охотников за привидениями даёт их текущий номер 212-897-1964.
https://www.facebook.com/Ghostbusters/photos/theyre-ready-to-answer-your-call-dial-212-897-1964-to-get-a-very-special-ghostbu/722572714463399
FINAL ANSWER: Call the number "2128971964" on the contest phones to find Dan.

В сообщении YИИEႱ говорилось «Cerebrum data link».
Это простая загадка, отсылающая к синапсам мозга.
ANSWER: https://defcon.org/badge/30/synapse
Изображение спутника
Нам дают изображение спутника на орбите. Скачав и изучив изображение, мы обнаруживаем, что в файл изображения встроен скрытый PCAP (файл захвата сетевого трафика); извлечение и изучение PCAP показывает один пинг на IP-адрес 10.48.29.234.

ANSWER: https://defcon.org/badge/30/synapse/10.48.29.234
NURV
На белой доске на заднем плане можно увидеть аббревиатуру NURV. Это отсылка к фильму 2001 года «AntiTrust», где NURV — название злой корпорации. Оба предыдущих ответа также были отсылками к «AntiTrust», где «synapse» — название злой сети, а «10.48.29.234» — IP-адрес одного из их спутников.
http://mike.passwall.com/uselesstrivia/antitrust.html
ANSWER: https://defcon.org/badge/30/synapse/10.48.29.234/nurv
1 или 0
Нам дан текст You're eiTher a one or a zero. Alive or dea9. В этом тексте явно выделяется «T9» — технология ввода текста на мобильных телефонах, расшифровывающаяся как «Text on 9 keys».
https://en.wikipedia.org/wiki/T9_(predictive_text)
Продолжая тему «AntiTrust», набор слова «antitrust» в режиме T9 даёт «268487878».
FINAL ANSWER: Call the number "268487878" on the contest phones to find Eve.

- .-. . ...- --- .-. ... -.. .- - ., что декодируется как TREVORSDATE. Тревор был любимым членом хакерского сообщества, трагически ушедшим от нас 23 сентября 2017 года.FINAL ANSWER: Call the number "923-2017" on the contest phones to find Trevor.
После разблокировки всех друзей повторный звонок YИИEႱ (9035768) даёт нам новое сообщение: slash here we go again rot13
Применение ROT13 (также известного как шифр Цезаря) к строке «herewegoagain» даёт «urerjrtbntnva».
ANSWER: https://defcon.org/badge/30/urerjrtbntnva
Нам дан текст «(Red-Yellow)(Blue-White)».
На лицевых панелях нескольких бейджей спрятаны маленькие числа, которые невозможно увидеть, не сняв панель. Эти числа с соответствующих бейджей дают: красный = 3205272, жёлтый = 3203902, синий = 3205274, белый = 3203901. Дальше простая математика: (3205272-3203902)(3205274-3203901) = (1370)(1373) = 1881010.

ПРИМЕЧАНИЕ: URL https://defcon.org/badge/30/urerjrtbntnva/1881010 даёт 403 вместо обычной страницы 404 «not found», что говорит нам: мы правы, но для этой головоломки мы ищем не URL. Вместо этого нужно позвонить по номеру 188-1010, чтобы получить следующую подсказку.
ANSWER: Call the number "1881010" on the contest phones to get our next challenge
Звонок по номеру «1881010» даёт нам сообщение Redundancy is key in footwear.
Это отсылка к ещё одному известному хакерскому фильму «Sneakers» (1992). «Key» здесь относится к музыке фильма, почти вся она написана в тональности ми минор (E Minor).
ANSWER: https://defcon.org/badge/30/urerjrtbntnva/eminor
Нам дан текст «DC30 - DC1». Это математическая головоломка, основанная на времени. Если осмотреть обратную сторону бейджа Vendor (фиолетовый), мы найдём рисунок со ссылками на DC1 и DC30, а также два числа: Два числа, которые мы видим, — это метки времени в формате Epoch. Они соответствуют церемониям открытия DEF CON 1 и DEF CON 30. DEF CON 1 проходил в июле 1993 года, а DEF CON 30 — в августе 2022 года. Любопытное замечание: в архивах DEF CON дата DEF CON 1 указана как июнь 1993 года, но сама программа показывает июль 1993 года: Если вычесть эти числа, получим 1660323600 - 742323600 = 918000000
<br/><br/>
<a name="miss"></a>
Что если я пропустил зону конкурса? Что я могу сделать без телефонов?
===
Один из участников дискорда по взлому бейджей сумел реверс-инжинирить программное обеспечение бейджа, принимающее 6 кодов друзей, и он был настолько любезен, что выложил его онлайн: https://replit.com/@numinit/DC30Keygen?v=1
Нажмите Play, затем введите: `bundle exec ruby main.rb <yourbadgeID>`
Пример: `bundle exec ruby main.rb 3680247087`
Если вы зайдёте на этот сайт и введёте свой ID бейджа (вы можете увидеть свой ID бейджа после игры Peer Gynt), он должен выдать 6 кодов, которые вам нужно набрать с помощью клавиш пианино после выбора пункта меню Challenge. Как только вы разблокируете всех 6 друзей, ваш бейдж достигнет своего «выигрышного» состояния, и вам больше ничего делать не нужно. Наслаждайтесь мигающими огнями и танцующими друзьями :)
<br/><br/>
<a name="after"></a>
Послесловие
===
Если вы дочитали до этого места, я хочу поблагодарить вас за ваше время. Надеюсь, вы узнали что-то интересное по пути. И я ОЧЕНЬ надеюсь, что вы посмотрели видео с Тревором, если вы никогда не видели его раньше.
Позвольте немного поностальгировать: победа в этом году в бейдж-челлендже была абсолютно ошеломительной. Для меня это очень близко к сердцу — много лет назад я случайно наткнулся в интернете на статью, которая оказалась разбором бейдж-челленджа прошлого DEF CON. Именно тот материал не только вдохновил меня начать посещать DEF CON, но и регулярно участвовать в CTF и по возможности принимать участие в подобных челленджах. Если задуматься, это, вероятно, оказало огромное влияние на мою жизнь и карьеру. И теперь, когда я действительно выиграл этот конкурс и сижу здесь, пишу ту самую статью, которая когда-то вдохновила меня... Я не нахожу слов.
Конечно, в конечном счёте заслуга принадлежит сообществу взломщиков бейджей. Это была командная работа по решению этих задач — никто из нас не справился бы без поддержки и командного взаимодействия, которые у нас были. Это было удовольствие. С нетерпением жду совместной работы с вами в следующем году!
<br/>

<br/>

<br/>
Если вы были на церемонии награждения и играли музыку на своём бейдже вместе со мной и остальной частью конференции, я просто хочу сказать: вы потрясающие.

FINAL ANSWER: Call the number "86868686" on the contest phones to find Alice.

ANSWER:Точки и слэши
Страница даёт нам текст ./ - ../ и ничего больше. В структуре каталогов UNIX «./» означает текущий каталог, а «../» — родительский. В случае нашего текущего URL задания https://defcon.org/badge/30/logic/18002738255/988/23044100 (который сам по себе является отсылкой к структуре каталогов) «./» относится к 23044100, а «../» — к 988. Если вычесть 988 из 23044100, получится 23043112.
FINAL ANSWER: Call the number "23043112" on the contest phones to find Bob.




ANSWER:Нам дают картинку из фильма «The Little Rascals».
«Отсылка внутри отсылки»: «what's the number to 911?» — это отсылка к эпизоду сериала «The IT Crowd», где номер экстренной службы меняют с 999 на 01189998819991197253.
https://www.youtube.com/watch?v=HWc3WY3fuZU&ab_channel=TheITCrowd
Набор этого номера на телефонах в зоне конкурса привёл к записи песни «The Final Countdown».
ANSWER: https://defcon.org/badge/30/urerjrtbntnva/eminor/918000000/thefinalcountdown
Шифр
Нам дан длинный список наборов чисел, каждая строка состоит из 4 чисел, разделённых дефисами. Это книжный шифр, где четыре числа в каждой строке соответствуют номеру страницы, номеру абзаца, номеру строки и номеру слова. Книга в данном случае — программа DEF CON 30. Преобразование каждой строки в соответствующее слово дало следующий список слов:

Теперь, глядя на первые буквы каждого слова в обратном порядке, мы видим текст песни «Never Gonna Give You Up».
(Не обращайте внимания на ошибки, мы торопились!)
ANSWER: https://defcon.org/badge/30/urerjrtbntnva/eminor/918000000/thefinalcountdown/nevergonnagiveyouupnevergonnaletyoudown
Финальное задание
Нам дают следующий текст:
Bring the badgemakers a gum wrapper with the final
subdirectory for each of your friends and the answer to
"Who died and left you in charge?" written on it.
Нужные подкаталоги: howdoththelittlecrocodile (Алиса), 23044100 (Боб), intergalactic (Кэрол), aykroyd (Дэн) и nurv (Ева).
Финальный вопрос «Who died and left you in charge?» — это цитата из фильма «Spaced Invaders»; ответ на вопрос: «Captain Bipto!»```json
FINAL ANSWER: howdoththelittlecrocodile 23044100 intergalactic aykroyd nurv Captain Bipto