Это первое в моей серии пошаговых руководств Capture The Flag для сайта tryhackme.com, и поэтому я чувствую, что лучше всего начать с довольно простого CTF, то есть c4ptur3-th3-fl4g: новичок вызов уровня CTF », автор: dcdavidlee. Этот CTF охватывает некоторые основы того, чего ожидать от CTF, и является отличной основой для тех, кто со временем может развить свои навыки.

Этот CTF имеет 5 задач: перевод и перенос, хэши, спектрограммы, стеганография и безопасность через неясность.

1. Перевод и перенос

Этот раздел требует, чтобы игрок выполнил ряд довольно стандартных переводов и расшифровок, чтобы получить флаг, включая, помимо прочего, двоичный и шестнадцатеричный код в ASCII, а также Морзе, и, как мы увидим позже, хакерский КЛАССИК… 13375p34k

Вопрос 1: c4n y0u c4p7u23 7h3 f149?

13375p34k, как я уверен, вы знаете, «система измененного написания, используемая в основном в Интернете», где некоторые буквы заменены числами и другими вариантами написания (например, hax0rz, pwned, и n00b). Это явно 1337 год, никаких сомнений.

Флаг: можете ли вы захватить флаг?

Вопрос 2: 01101100 01100101 01110100 01110011 00100000 01110100 01110010 01111001 00100000 01110011 01101111 01101101 01100101 00100000 01100010 01101001 01101110 01100001 01110010 01111001 00100000 0110110011 0111010

Выдает ли это серия из 1 и 0? Это бинарный, «язык компьютеров», как правильно говорят журналисты, но слишком часто указывается в пользу тех, кто не слишком технологически склонен.

Для ответа на этот вопрос я воспользовался двоичным переводчиком текста в текст RapidTables, и это сработало.

Флаг: давайте попробуем двоичный код!

Вопрос 3: MJQXGZJTGIQGS4ZAON2XAZLSEBRW63LNN5XCA2LOEBBVIRRHOM ======

Хорошо, теперь он выходит на более новую территорию! Этот вопрос касается значений Base32, где основание 32 - это система счисления, состоящая из 26 букв английского алфавита (A – Z), А ТАКЖЕ чисел 2–7, что позволяет использовать в общей сложности 32 символа в каждой позиции.

Есть несколько способов отличить Base32 от других баз, он определенно не ниже, чем база 10, потому что задействованы буквы, он не такой высокий, как Base64, потому что (как мы увидим), нет строчных символов и числа 0-1 и 8–9 не представлены.

Я использовал Base32 Decode Online.

Флаг: base32 очень часто используется в CTF

Вопрос 4: RWFjaCBCYXNlNjQgZGlnaXQgcmVwcmVzZW50cyBleGFjdGx5IDYgYml0cyBvZiBkYXRhLg ==

Это в Base64, вы можете сказать, потому что на этот раз включены строчные буквы, довольно кратко.

Я использовал Base64 Decode and Encode.

Флаг: каждая цифра Base64 представляет ровно 6 бит данных

Вопрос 5: 68 65 78 61 64 65 63 69 6d 61 6c 20 6f 72 20 62 61 73 65 31 36 3f

Это в шестнадцатеричной системе счисления или Base16. Каждый символ всегда имеет длину 1 байт или 8 бит, кстати, каждое шестнадцатеричное число составляет 4 бита, что означает, что 2 шестнадцатеричные цифры ВСЕГДА могут представлять символ в ASCII.

В шестнадцатеричном формате вы можете определить расстояние между каждой парой и набором символов, то есть 0–9, затем a-f, добавив к 16.

Я снова использовал RapidTables для этого преобразования.

Флаг: шестнадцатеричный или base16?

Вопрос 6. Ebgngr zr 13 cynprf!

ROT13 - чрезвычайно простой шифр, в котором каждая буква во фразе «поворачивается» 13 раз, так что буква становится буквой через 13 знаков после нее, например A ‹-› N, I ‹-› V и т. Д. имя - Vfnnp, в качестве дополнительного примера, о котором вы не просили.) Rot13 является его собственным инверсом, потому что 13 - это половина 26, в алфавите 26 букв, что означает, что буква A будет переводиться в N, а буква N будет переводить обратно к A, что делает взлом шифра тривиальным.

Чтобы ускорить процесс, я использовал rot13.com

Флаг: поверните меня на 13 позиций!

Вопрос 7: * @ F DA :? ›6 C: 89E C @ F? 5 323J C: 89E C @ F? 5 Wcf E:› 6DX

Это шифр Rot47, его базовый принцип тот же, что и у Rot13, но вместо букв A – Z он использует все символы из таблицы кодировки ASCII, A – Z, 0–9, знаки препинания и т. Д.

Я использовал декодер dcode’s для этого шифра

Флаг: вы крутите меня вправо, ребенка, вправо (47 раз)

Вопрос 8: -. .- ... -.-. - - - - ..- -. .. -.-. .- - .. - - -. . -. -.-. - - - .. .. -. -.

Это азбука Морзе, точки и тире, понимаете? Просто очевидно, я полагаю, больше нечего сказать здесь

Я использовал декодер кода Морзе браузера

Флаг: кодировка телекоммуникационных сообщений

Вопрос 9: 85 110 112 97 99 107 32 116 104 105 115 32 66 67 68

Это почти то же самое, что и предыдущие вопросы о переводе и декодировании (с использованием шестнадцатеричного и base64 и еще много чего), но вместо этого на этот раз мы используем старую добрую надежную базу 10, 0–9, известную как BCD или двоично-десятичное кодирование, где каждое число представляет свое значение в двоичном формате, которое затем преобразуется в ASCII и выводится как последовательность букв и цифр. Тем не менее, Base10 - это то, к чему мы привыкли, отличный инструмент.

Вернул использованный декодер Cryptii’s для этой задачи.

Пометить: распаковать этот BCD

Вопрос 10: LS0tLS0gLi0tLS0gLi0tLS0gLS0tLS0gLS0tLS0gLi0tLS0gLi0tLS0gLS0tLS0KLS0t ……….

О, парень…

Этот был длинным, так что я сэкономлю скриншоты и ссылки на декодеры и все, что у вас есть.

Этот вопрос был разработан, чтобы убедиться, что вы обратили внимание, исходное сообщение было в Base 64, как можно понять по смеси символов верхнего и нижнего регистра. это декодировалось в Морзе, который сам декодировался в двоичный, который затем декодировался в шифр ROT47, который ТОГДА декодировался в десятичный, и НАКОНЕЦ выплюнул ...

Флаг: давайте сделаем это немного сложнее…

Кто-то хихикает…

2. Хеши

Автор рекомендует грубо форсировать эти хэши через hashcat, однако ограничения моей системы означают, что это займет больше дня. Такие сайты, как md5decrypt, особенно хорошо подходят для этого, поскольку хэши уже должны храниться в их базах данных. Я полагаю, что в CTF вы берете все, что можете.

Вопрос 1: 39d4a2ba07e44421c9bedd54dc4e1182

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

Этот хеш содержал подсказку «Этот метод шифрования больше не считается« безопасным ». Это MD, но какой? », который сказал мне, что он был закодирован с помощью Message Digest 2, самого простого (читай: самого небезопасного) из серии хешей MD, которые предоставляют 128-битные значения.

Флаг: MD Что?

Вопрос 2: e0418e7c6c2f630c71b2acabbcf8a2fb

Подсказка здесь: «Лучше, чем MD2, но не так хорошо, как MD5», что означает, что он использует MD4.

Отметить: проанализировать алгоритм сообщения

Вопрос 3: efbd448a935421a54dda43da43a701e1

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

Флаг: 128-битные восхитительные хеш-значения

Вопрос 4: 11FE61CE0639AC2A1E815D62D7DEEC53

Подсказка здесь - «SoftMicro», которая довольно прозрачно является отсылкой к Microsoft. После небольшого исследования я обнаружил, что у Microsoft есть собственный алгоритм хеширования под названием NTLM, или новая технология (ядро Microsoft) LAN Manager.

Флаг: у Microsoft есть шифрование?

Вопрос 5: a361f05487b879f25cc4d7d7fae3c7442e7849ed15c94010b389faafaf8763f0dd022e52364027283d55dcb10974b09e7937f901584c092da65a14d1aa8dc4d8

Подсказка была такая: «Мое сердце шалалалала SHA лала 512 раз!». Заглавная буква слова SHA плюс упоминание числа 512 означает, что это хэш SHA512 (SHA для алгоритма безопасного хеширования и 512 для дайджеста или размера хеш-значения в битах).

Флаг: 1024-битные блоки!

Вопрос 6: d48a2f790f7294a4ecbac10b99a1a4271cdc67fff7246a314297f2bca2aaa71f

Здесь снова не было никакого намека. Я подумал, однако, может быть видно, как последний хеш был SHA512, может быть, это хеш SHA половины дайджеста предыдущего? Это было правильно, поэтому я использовал алгоритм дешифрования SHA256.

Флаг: обычно используется в блокчейне

Вопрос 7: a34e50c78f67d3ec5d0479cde1406c6f82ff6cd0

Подсказка здесь была «Первый SHA», должен быть SHA-1.

Флаг: The OG

3. Спектрограммы

Согласно Википедии, спектрограмма - это «визуальное представление спектра частот сигнала, изменяющегося во времени. Применительно к звуковому сигналу спектрограммы иногда называют сонографами, голосовыми отпечатками или голосовыми диаграммами. Когда данные представлены на трехмерном графике, их можно назвать водопадами ».

Вопрос 1: secretaudio.wav - загрузите файл

Намек здесь был «дерзостью».

Чтобы ответить на этот вопрос, я рекомендую уже установить программу для редактирования аудио, моя личная рекомендация (а также рекомендация автора) - Audacity. Вы можете установить его с сайта или, если хотите, воспользоваться командой:

$ sudo apt-get install смелость

После установки откройте предоставленный вам файл (с именем secretaudio.wav) и измените представление с формы сигнала на спектрограмму в меню с направленным вниз черным треугольником в сторону, например:

Как видите, теперь на нем отображается флаг

Отметить: суперсекретное сообщение

4. Стеганография

Стеганография - это «Процесс сокрытия сообщения или файла в другом сообщении или файле»

Вопрос 1. stegosteg.jpg - декодируйте изображение, чтобы найти ответ.

Я использовал декодер стеганографии futureboy.us на изображении, как вы можете видеть ниже:

Флаг: SpaghettiSteg

5. Безопасность через неизвестность

Наконец, я решил этот раздел способом, который, как я не верю, был предназначен, но эй, это что, хакерство, не так ли?

Я открыл файл в текстовом редакторе, прокрутил его вниз и нашел два флага в виде открытого текста.

Flag1: hackerchat.png

Flag2: AHH_YOU_FOUND_ME!

Вывод

Этот CTF довольно хорош и отлично подойдет для новичков, я бы порекомендовал его своей бабушке, если она когда-нибудь захотела стать 1337 h4x0r.