Эта рецензия не является выигрышной, но я постараюсь охватить как можно больше проблем, которые мне удалось решить. Этот CTF был организован sec.army при финансовой поддержке ХРИСТА (ПРЕДНАЗНАЧЕННЫЙ УНИВЕРСИТЕТОМ).

Кроме того, это были мои первые соревнования CTF.

Начнем с самого первого испытания.

Задача: B1n_Bas1c

В этой задаче нам дали zip-файл, чтобы извлечь из него флаг. В zip-файле мы обнаружили flag.txt, содержащий некоторый двоичный код.

После преобразования двоичного кода в ASCII я нашел свой первый флаг.

Это было довольно просто !!

Задача: смайлы

В этой задаче он просит присоединиться к каналу разногласий SecArmy, и флаг, вероятно, спрятан в разделе смайликов. Посмотрим, что мы там найдем.

поигравшись минутку, я заметил это:

Вот флаг. Скрытый в коде эмодзи Голонга. Следовательно, Go Emoji.

Задача: добро пожаловать

Переходим к третьей задаче. Там написано: «Узнай о нас и получи свой флаг». Флаг должен быть спрятан в .. Да! Вы угадали. На сайте есть одна страница о нас.

Вот оно. Флаг был скрыт белым шрифтом, но мы можем увидеть его с помощью «ctrl + a». Перевернув строку, я обнаружил флаг: secarmy {All_H @ 1L_CHR1ST}

Задача: SEC ++;

В задании уже есть строка:

SECARMY {cpp_1s_TH3_W @ Y_T0_G0}

Очевидно, это не может быть флагом, но, вероятно, будет полезно при решении задачи. Давайте скачаем zip-архив и посмотрим, что внутри.

При извлечении zip обнаружился неполный код, написанный в текстовом файле с именем sec ++. Txt.

Хм, похоже на класс и функцию c ++. Однако основной функции нет. Давайте попробуем переделать код и заставить его работать. Через некоторое время я понял, что данная строка была использована в качестве входных данных в функции, а затем она выдаст нам флаг. и вуаля

и вуаля. Это правильный флаг.

Задача: зарядитесь энергией!

Этот вызов действительно вызвал у меня головную боль. Он говорит, что в данном файле есть фрагмент сценария PowerShell, и мы должны захватить флаг. В названии испытания написано Power it Up! Так что мы и делаем именно это. Запуск его в PowerShell дает нам результат False

да. Это сам флаг: secarmy {False}

двигаться вперед по следующему вызову ..

Испытание: крылья

Итак, распаковав файл wings.zip, он дает 25 похожих изображений (крыла самолета).

Давайте воспользуемся ExifTool для проверки метаданных и надеемся, что что-то найдем.

Это интересно :)

исследуем все изображения:

После проверки нескольких ложных флагов мое внимание привлек один char @ tails , поэтому я попробовал шестнадцатеричный дамп всех изображений и заметил разницу между последней строкой всех этих изображений. изображений.

что-то заметил? Да, указанная выше подсказка char @ tails предлагает взглянуть на последний символ шестнадцатеричного значения, и он уже выглядит знакомым для флага. но создание шестнадцатеричного дампа всех 25 изображений одного за другим занимает очень много времени.

С помощью магии Lil Bash мы можем получить результат намного проще.

Просто запустите его, чтобы получить флаг.

*вздох*

Задача: СНЕГ

Следующее испытание было названо СНЕГ. Снег и снег везде. Это просто, потому что я думаю, что уже знаю, как захватить флаг для этого. В zip-архиве мы нашли текстовый файл. Флаг был скрыт в текстовом файле с помощью снежной стеганографии, также известной как стеганография Whitespace.

Используя инструмент stegsnow, мы можем легко извлечь скрытые данные из текстового файла.

флаг скрыт в кодировке base64.

Проблема: заказчик

Это был веб-вызов. Мне предоставили URL-адрес, который выглядит как

В нем говорится: Принесите «заказ» на 100 файлов cookie и получите флажок. Это определенно связано с файлами cookie. Давайте посмотрим..

Поскольку он просит сделать заказ, давайте сделаем это.

Я изменил файлы cookie «Имя: порядок» и «значение: 100», обновил страницу и обнаружил флаг.

Задача: классическая панель пользователя

Еще одна проблема в сети. Данная ссылка направляет нас на эту веб-страницу.

Веб-страница просила меня сказать себе «привет». Так я и сделал.

‹script› alert («привет») ‹/script›

А вот и флаг.

Задача: E-Digger

Это однострочный. Просто найдите SPF с помощью nslookup, и вы найдете свой флаг. secarmy {$ pf_r3c0rd $ _ @ 1n7_b0r1ng_r1gh7?}

Challange: Alien

В текстовом файле есть то, что кажется мусорным текстом, но на самом деле это код, написанный на Malbolge, который является эзотерическим языком программирования
, спроектированным так, чтобы его было как можно сложнее программировать. Так оно и есть :-)

Посмотри!

Но если вы попытаетесь скомпилировать этот код, вы получите ошибку Неверный синтаксис !!

Не сердитесь на меня, это правильный флаг: secarmy {Неверный синтаксис !!}

Задача: T @ P

В следующем задании у нас есть застежка-молния. Попробуем разархивировать и посмотреть, что внутри.

Это то, что похоже на азбуку Морзе, но на самом деле это код касания. Очень похоже на Морзе. После расшифровки любым онлайн-декодером получаем флаг.

Задача: Unit3d_C0d3

В zip-файле есть один flag.txt, содержащий

как следует из названия, это текст в Юникоде. Используйте любой онлайн-декодер, чтобы решить эту задачу и получить флаг: secarmy {I_l0ve _Unic0de}

Задача: старая школа

Распаковывая файл, мы получаем flag.txt, который содержит некоторый двоичный код.

преобразовав его в ASCII, мы получим base64.

Расшифровывая base64, мы получаем несколько десятичных знаков ...

преобразовывая эти десятичные числа обратно в ASCII, мы получаем наш флаг:

secarmy {двойные алгоритмы}

Задача: N00b_R3v

В этой задаче был задан двоичный файл, и простой запрос строк только что выявил флаг в виде открытого текста.

На поиск флага не потребовалось много времени.

Задача: UnderTheMines

Чтобы решить эту задачу, вы должны хорошо разбираться в классической игре про саперов, потому что ...

Выиграйте игру, и флаг ваш: secarmy {th3_cl @ 551c_m1n3sw33per}

Задача: ENCRYPTO X

Решение этой задачи уже было дано в описании. Когда программа спрашивает вас «Чего вы хотите?», вы должны продолжать вводить ей клавиши ENCODE и DECODE, как я, пока она не покажет полный флаг, который:

secarmy {encodebits}

Задача: DecodeM3

В этой задаче это был файл decode.wav, который по сути представлял собой азбуку Морзе.

Итак, я пошел к этому онлайн-декодеру и расшифровал флаг из файла.

Задача: нырять глубже!

На решение этой задачи потребовалось больше всего времени. И да, как говорится в описании: «Вы должны хорошо разбираться в криминалистике, чтобы добиться от этого флага».

Для загрузки была ссылка на файл ova, по которой нам нужно было найти настоящий флаг. Я поделюсь отрывком из всего процесса в видео ниже.



Это была машина ubuntu с паролем root: toor, который легко угадать.

Я обнаружил 3 файла после входа в систему. Readme, flag.jpg, flag.txt. Ни один из них не был настоящими флагами. Фактический флаг был спрятан внутри потерянных файлов раздела.

Мне действительно удалось восстановить файл flag.zip с помощью инструмента testdisk.

Паролем для zip-файла был пароль. Распаковав flag.zip, я обнаружил один flag.jpg

Теперь flag.jpg казался поврежденным, поэтому я попытался проверить содержимое с помощью hexeditor. Изменение волшебных битов для исправления формата JFIF (ff d8) Файл восстановлен.

при открытии flag.jpg отображается другой флаг, но он тоже ложный.

Настоящий флаг скрыт на самом изображении с помощью стегида.

продолжение следует…