/Разборы задач
6 ноября 2026
Райтап на задачу «Слив флагов»
Исследуем WIM-образ через 7-Zip, находим альтернативный поток flag_404.txt и декодируем спрятанную строку Base64.8
12

Forensic
Задача «Тоже мне спрятал...»
Статистика даёт четыре красивых числа: отправлено = 15, минимальное = 51, максимальное = 150, среднее = 103.
Из них легко собрать 51.150.103.15. Это реальный IP Amazon AWS. Собираем флаг и видим ошибку, ищем дальше.
Проверяем наше изображение: IHDR, sRGB, gAMA, cHRM, bKGD, pHYs, 11 × IDAT, IEND. Никаких tEXt/iTXt/eXIf и прочих метаданных.
IDAT распаковывается ровно в 647 × 560 × 4 + 560 = 1 449 840 байт, Adler32 сходится с последними четырьмя байтами zlib-потока, хвостов после IEND нет. LSB и битовые плоскости сообщений не содержат. Формат чистый.
Остаётся работать только с закрашиванием, которое и мешает нам получить заветный флажок. Фон терминала — (12, 12, 12). Чёрная кисть даёт 0. Но в замазанной области остаются отдельные пиксели со значениями больше 12. Любой такой пиксель — это сохранившийся пиксель исходного текста: фон под кистью не может стать ярче 12. Для дальнейшего редактирования можно использовать Paint.NET, где есть режим слоёв, ну или любую другую программу, поддерживающую слои.
Сначала делаем сетку наших символов:
Потом можем сгладить «мешающие» пиксели до одного цвета и ограничить изображение только сеткой:
Теперь совмещаем и получаем почти готовый флаг: