Матрёшка №10
Задание 1Введение
Цель: Снимать несколько слоёв кодирования.
Флаг несколько раз завернули в разные кодировки. Слоёв 5. Какие — определите сами.
Задание 2Теория и инструменты
Многослойное кодирование — обычный приём обфускации вредоносных скриптов и конфигов.
Каждую кодировку выдаёт алфавит: hex — 0–9a–f, Base32 — A–Z2–7 и =, Base64 — латиница, цифры, +/, двоичные — группы по 8 из 0/1, восьмеричные — тройки цифр 0–7, URL — %XX, Ascii85 и Base85 — много знаков препинания.
Инструменты
- CyberChef: Magic (автоопределение)
- Python: base64, bytes.fromhex, urllib.parse.unquote
Больше теории — в разделе «Обучение: Форензика».
Задание 3Практика: найдите флаг
H&!-DGCD3lT3I?}b3s--EGs`<L2oEJKQ~q(U?ehPB|~U9YjJ5QG(Ao>S}rstWn(u_T~}T+C_qedIcRP#EHqtNLPk6(WJ_o_PhD4DI%OhsKQbv>Z&5T|SwBiHHcKTvH&0zxTRKTvV{$xQMNwQsWm{QqE;dzOE;V&tW_2=RB|~U9Y$b1HEIVjHOD;B5UM)9IT~sSFVk0#|I%RWEZ9r}>Mo2+#C^0%WRyIj8I!P{aT0$>iIxj4BTURhaFjsPFH&!+-COS!6aw<h#EkZdgbz4*~L2fHOXg5|iNisSvKU#4;T_s6jJS;0eT|sXsIzKm7Az&mjVkJXyIcXv_YC}$OWGyZ<C1qnbPhLwWGecWdb2(`uHEKg<A#ra!DP&Y@H&0$mBsxi2U}-ltA!18FZc9sJE;dUgJvUZ1Ni{l2T4QoOT1s+YLuFf8Z$WP;IzKgaUS@SNVkJXpIBRifC^9QKN^e1LC^|kjRyIalGGZe&LONw?N-s2BSWh!SZYxJGH&!-DH9AQya#}+yTvakOU0Fg)K`>WxYByFkE+aW;BvDr@T10C;EOlE~FhOr9F(WrtHc2u%E<ajXI%R4*RXi*!KV3m?D?TbWPgN{mGblhzayn&mP;Em_abztnG$n3lH&0zxTQXuLLvcB1ZZ9k>bwENVJSk*UYd2OlNi{lUB6L48DP<u#KyFJ;WI=8tWIZ=lHc2%)Nm^rCJ3j
Пошаговый план — открывайте по одному шагу
- 1Определите внешний слой по алфавиту.
- 2Раскодируйте и снова посмотрите на результат.
- 3Повторяйте, пока не появится CTF{. Если вариантов несколько, пробуйте по очереди.
Подсказки — каждая до решения стоит −50 очков
Задание 4Как защититься
Антивирусы и SIEM нормализуют вход, снимая типичные слои, прежде чем искать сигнатуры.
Разборы участников
Разборы открываются после того, как вы решите комнату, — чтобы не спойлерить ответ.