Райтап на задачу «Новогодний смех»

lol

Автор:

lol

29 октября 2026

18

29.10.2026
Новогодний смех
Категория:

Stegano

Задача «Новогодний смех»

Автор:

LastTeamLead

Первая кровь:
feadal
Сложность:
medium
Дата публикации:
24.01.2026
Решений:
41
Рейтинг:
5/5
Ссылка:
Решать

Описание: «Одна минута новогодних колокольчиков и смеха Пикси — это и так уже ультра-хорошо, но найти флаг ещё лучше».

Также нам дан WAV-файл, в котором смех Пикси. Теперь проверим этот файл, чтобы посмотреть его характеристики.

Новогодний смех — иллюстрация 1

На слух что-то определить невозможно, значит будем смотреть на этот звук глазками. В этом нам поможет audacity, открываем его и закидываем туда наш wav file.

Новогодний смех — иллюстрация 2

Мда, так мы ничего не поймем, поэтому нажимаем на «...» --> дальше нажимаем Спектрограмма и смотрим:

Новогодний смех — иллюстрация 3

Тут мы по-прежнему ничего не видим, попробуем побаловаться с настройками спектрограммы, которые находятся там же (...).

Почему нам стоит покрутить разные настройки спектрограммы? Ответ весьма простой — наша стеганография спрятана в звуке, т. к. мы не можем её услышать — значит она находится на высоких частотах, чтобы человеческое ухо не смогло заподозрить что-то неладное (обычно выше 16 кГц). Далее мы выставляем настройки примерно таким образом:

Новогодний смех — иллюстрация 4

Мы изменили шкалу на линейную для того, чтобы было удобнее смотреть на высокие частоты, вдруг там прячется заветный флажок. Также мы повысили частоту до 22050, т. к. выше просто нельзя оцифровать, все остальное либо обрезается, либо летит обратно в спектр (простыми словами просто смотрим на весь спектр, чтобы точно ничего не пропустить). Ещё важный момент: мы уменьшили размер окна, чтобы нам были чётче видны все микромоменты. Теперь можно сохранить наши изменения и перейти к анализу спектрограммы:

Новогодний смех — иллюстрация 5

Превосходно! Теперь мы видим на самых высоких частотах какие-то подозрительные моментики, а ну-ка приблизим их и возьмем интервал времени поменьше. Делаем мы это с помощью зажатого ctrl и крутим колесико мыши. Получаем что-то наподобие этого:

Новогодний смех — иллюстрация 6

Похоже на короткие и длинные тире, так еще и расстояние между ними одинаковое... Мне кажется, это что-то напоминает??? А если сделать так:

Новогодний смех — иллюстрация 7

Тут-то уже картина становится яснее) Это не случайные шумы. Они четко ровные, это похоже на код, будто бы что-то включается и выключается — это OOK (on-off-keying).

Теперь предлагаю вернуться в самое начало нашего замечательного WAV-файла и проверить нашу гипотезу:

Новогодний смех — иллюстрация 8

Получается 01000010. Первые 4 бита 0100 — это 4, а вторые четыре бита 0010 — это 2, а вместе эта парочка дает 0x42. В ASCII это не что иное, как буква «B». А теперь вспоминаем наш формат флага, который как раз выглядит так «BugCTF», и, о боже, он тоже начинается на «B». Теперь, чтобы не считать ручками 30 байт, можно упростить себе жизнь и написать себе простенький скриптик, который сам за нас посчитает и выдаст нам заветный флажок)

Новогодний смех — иллюстрация 9

Наверное, чёт наподобие такого, а теперь тестируем наше творение и надеемся получить флажок!!

Новогодний смех — иллюстрация 10

УРА! Теперь флажок у нас! Бежим делать солв))

Если вы нашли опечатку или ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter

Также по теме:

Райтап на задачу «Границы лишь в голове»

/Разборы задач

Райтап на задачу «Границы лишь в голове»

Разбор изменения размеров JPEG через hex-редактор: ищем скрытую часть изображения в задаче «Границы лишь в голове».
Прочитать

9

Райтап на задачу «Шахматы с Момо»

/Разборы задач

Райтап на задачу «Шахматы с Момо»

Я хотел спрятать флаг на самом видном месте, а спрятал на невидимом.
Прочитать

28