ANTICHAT

ANTICHAT (https://forum.antichat.xyz/index.php)
-   Задания/Квесты/CTF/Конкурсы (https://forum.antichat.xyz/forumdisplay.php?f=112)
-   -   Найди меня, если сможешь [Writeup] (https://forum.antichat.xyz/showthread.php?t=1652177)

M4x 21.01.2026 01:40

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

Переименовываем презентацию в архив и распаковываем:

Bash:


Код:

mv
TASK_Find_me_if_you_can.pptx TASK_Find_me_if_you_can.zip
unzip
TASK_Find_me_if_you_can.zip

В подобных заданиях первым делом стоит проверить медиа-контент презентации на наличие стеганографии или посторонних данных. Идем в каталог ppt/, затем в media/. Файл image2.png выглядит подозрительно: при ненулевом размере он не содержит видимого изображения. Это хороший повод проверить его структуру более детально:

Bash:


Код:

pngcheck -vtp7 image2.png
# Вывод:
zlib warning:  different version
(
expected
1.2
.13, using
1.3
.1
)
File: image2.png
(
79414
bytes
)
chunk IHDR at offset 0x0000c, length
13
644
x
771
image,
32
-bit RGB+alpha, non-interlaced
  chunk IDAT at offset 0x00025, length
8192
zlib: deflated, 32K window, fast compression
  chunk IDAT at offset 0x02031, length
8192
chunk IDAT at offset 0x0403d, length
8192
chunk IDAT at offset 0x06049, length
8192
chunk IDAT at offset 0x08055, length
8192
chunk IDAT at offset 0x0a061, length
8192
chunk IDAT at offset 0x0c06d, length
8192
chunk IDAT at offset 0x0e079, length
8192
chunk IDAT at offset 0x10085, length
8192
chunk IDAT at offset 0x12091, length
4714
chunk IEND at offset 0x13307, length
0
additional data after IEND chunk
ERRORS DETECTED
in
ppt/media/image2.png

Ключевой момент – после чанка IEND лежат какие-то лишние данные. В нормальной PNG такого быть не должно. Открываем картинку в hex-редакторе и смотрим, что там.

https://forum.antichat.xyz/attachmen...914f1a5d43.png

Это whitespace language. Становится понятна логика автора: белая (визуально пустая) картинка – это прямой намек на кодирование через пробелы.

Аккуратно вырезаем whitespace-хвост и скармливаем его любому удобному декодеру whitespace language, например, этому.

На выходе получаем флаг.


Время: 18:49