ребятушки Здорово неплохой видосик получился Ну Единственное это видео подойдёт только тем у кого машина на архитектуре amd64 архитектура arm не подойдёт Вы можете проверить введя в терминале uname - a и у вас выведется информация о том какая у вас архитектура в данном видео будут использоваться бинарные файлы которые работают только на amd архитектуре поэтому Те у кого arm макбуки с процессором M1 M2 M3 Apple Silicon у вас это не получится сразу приношу извинение за звук потому что я записывал на другом компьютере в котором У меня нету устройства ввода нормального нет нормального микрофона поэтому звук будет просто из гарнитуры но суть не в этом там в принципе всё видно и и понятно Давайте начинать что-то вот тут не то происходит братанчик начинаем Пожалуй я выбрал вот такую комнату здесь не нужен VPN поэтому тут намного проще и ещё один момент так здесь мы будем работать с файлами качи файлики бинарные и их запускать пробовать и находить пароли и взламывать эти файлики это работает эти файлики работают только на системе архитектуры amd То есть если у вас допустим Macbook с процессором M1 M2 M3 вот эти Apple Silicon то они на архитектуре ARM там Kali Linux тоже устанавливается с ARM и вот эти бинарки работать не будут то есть это видео только для тех у кого AMD проверить можно Давайте попробуем uname -a Ну вот собственно видно x86_64 это AMD у нас Вот видите amd64 если у вас arm то это видео сразу пропускайте либо куда-то устанавливайте себе первое нам надо Мы скачиваем Файлик и этот Файлик это бинарный файл который будет называться к "crackme" и они вот "crackme1" здесь во втором "crackme2" и так далее Все по очереди Вот и нам нужно просто поза эти файлы Ну задача запустить файл и достать из него флаг Вот видите задание What is the Flag скачиваем и пробуем запустить я сделал я уже скачал Все файлики вот вот смотрите они у меня все восем здесь есть но смотрите чтобы у нас Файлик бинарный запустился надо сделать его исполняемым для этого вообще как запускается Файлик на линуксе мы просто вот так делаем точка слеш Да видите он говорит что-то вот тут не то происходит братанчик вот нам нужно его сделать исполняемым поэтому мы добавляем ему права вот такой командой chmod +x и выбираем файл crackme1 смотрите теперь ls - la смотрим видно во-первых здесь иксы добавились у него Вот то есть rwx Ну короче читать писать И вот исполняемый чтобы он был он видите у нас даже в Kali Linux подсвечен другим цветом стал chmod +x и перечисляем все файлы через пробел всё ls -la Смотрим Да всё все файлики сделали теперь запускаем вот такой командой точка слеш crackme1 раз всё у нас запустился и мы получили наш флаг в первую вставляем Угу Так следующий Нам нужен во-первых пароль во-вторых флаг что мы можем сделать вписать Вот такой командой strings crackme2 выбираем файл strings просто посмотрим какие строки здесь есть что тут есть в этом в этом файлике здесь можно функции посмотреть какие есть допустим вот mine главная функция Вот этого файла Ну то есть там вся логика заложена там есть ещё дополнительная Вот такая вот функция так Ага Вот это сравнение строк а stringcmp cmp - это сравнение в в ассемблере есть giveFlag Ну здесь я вижу Вот смотрите по порядку действия идут Вот после такого действия Super Security Password Access и Давайте вот этот просто password попробуем и теперь про выполнить вот этот файл кстати Давайте его сначала просто мы пробуем Да он говорит естественно у нас нужен password А теперь мы просто через пробел добавляем сюда пароль всё пароль подошёл флаг и пароль В следующем файлике мы все делаем тоже самое вы можете по отдельности chmod добавлять можете разом Как как я сделал сразу же опять пробуем его запустить третий Файлик опять нужен пассворд смотрим подсказку Decode the strings Ну давайте пробуем опять strings сделать и посмотреть вот я вижу correct Password correct Password и вот такой пароль Ну давайте пробовать в base64 кодировки его просто вывести сюда декодировать всё успех сразу флаг выводит то есть это даже не пароль а может и пароль кстати интересно Давайте попробуем а его как пароль использовать Correct Password пишет подтверждаем переходим к четвёртому файлику проделываем Опять тоже самое четвёртый так Ага время короче здесь нужно вот опять string cmp это сравнивание строк Давайте strings попробуем посмотрим что у нас выводит ну здесь мы не видим конкретно пароль но мы можем сделать сравнивание strings если оно сработает Хотя здесь подсказки IDA/Radare2 ltrace какой там у нас файл четвёртый так и запускаем Давайте ltrace и запускаем просто на угад любой пароль любые символы и он сравнит их по идее вот смотрите вот он сравнивает Вот мои символы они не совпадают Видите вот это вот команда сравнение строк то есть вот это то что я ввёл на угад оно не совпадает вот с этим О'кей давай тогда Ой извиняюсь Давай тогда введём вот это то что совпадает Ну в принципе совпадает вот Password А давайте знаете что просто запустим его с этим паролем Password Ок переходим к пятому файлику тоже самое сначала Enter your Input так Ну нам надо найти Input на угад во-первых strings Посмотрим есть ли что-то интересное ничего нету но здесь есть сравнение да ёлки-палки давайте опять сделаем ltrace и на угад опять что-нибудь вводим Enter input И вот input теперь вводим на угад хоп и он у нас сделал сравнение вот то что я ввёл А вот то что то что здесь Было на всякий случай я это скопирую ну вот где-то видите сравнение строк не сработало Давайте пробовать тогда запускать его попробуем вставить Да всё этот инпут у нас сработал опять прокатил ltrace вот Хотя написано radare2 использовать Ну ладно ой Это шестая нам надо пятую Ну радар 2 - это Как вариант подсказка можно использовать хоть что если у вас есть какие-то инструменты которыми вам проще работать вообще никаких проблем Ну давайте шестой Файлик опять всё тоже самое пробуем его запустить смотрим нужен password удачи читайте Ну ресурсы Короче нужно то есть погрузиться внутрь этого файлика и там уже читать его как бы внутренности Вот здесь мы уже как раз будем использовать радар 2 тут есть главная функция main Как и во всех файлах и с неё в принципе мы сейчас начнём да здесь просто готовых строк нету Значит где-то в коде происходит либо преобразование пароля либо ещ что-то то есть в готовом виде в готовой строкой его здесь нету на поверхности он не лежит Давайте запускать теперь R2 ми D и это у нас шестой Файлик вот так пишем R2 ми D и название файлика вот мы погружаемся смотрите у нас как теперь выглядит провалились внутрь вот этого файлика Теперь нужно провести его анализ введя вот такую команду А всё и дальше теперь нам нужно уже проваливаться в какие-то функции мы начинаем с функции M Как как обычно это нужно делать делается это следующим образом PDF собачка сразу скажу это Это assem Давайте смотреть что у нас здесь происходит поясню некоторые моменты важные на которые надо смотреть во-первых Call это функция выполнение функции то есть вот функция Print выполняется и вот функция comp Password - это сравнение сравнение пароля То есть у на в кайто момент Да когда мы запускаем у нас происходят тут какие-то определенные действия сравнение пароля для нас важно Вот это м как раз оно означает сравнение функция Вот такие элементы зелёненькие у которых есть стрелочки видите стрелочка куда-то перекидывает Вот это Это чтото типа э я программирования вот здесь оно то есть это Jump equ то есть прыжок если равно есть [музыка] ещё Jump equ вот Ну вот это основные вот сравнения и дальше условия то есть вот здесь сравнивается если вот здесь вот условие тогда перепрыгивает вот на эту функцию Вот её номер но здесь видите как в R2 прикольно подсвеченные показывает Вот она Вот видите вот этот номерочек вот он вот он здесь 741 741 То есть если условие Да сравнение прошло то он перескакивает вот сюда и начинает по порядку делать действия вот какие-то действия что-то куда-то там добавляет переменные скорее всего записывает для того чтобы дальше Вот в этой функции их использовать и вызывает вот эту функцию вот и давайте мы теперь вот эту функцию посмотрим Ctrl Shift C кстати Ну в терминале Если вы не в курсе да Как копировать не обязательно вот это вот вызывать менюшку можно Ctrl Shift C Ctrl Shift V Ну то есть одновременно не просто Ctrl C Ctrl V шифтом так и теперь нам нужно PDF собачка и вот это вот название функции сравнение пароля проливаем в неё Да где у нас начало Вот начало функции Secure во-первых тест выполняется функция дальше вот Jump если not equ Jump equ если не равен если не не сработало тест то у нас перепрыгивает вот сюда и начинает выполнять функцию и выводит Password not Вот соответственно если если вс-таки равно он не перепрыгивает а он начинает А ну вот он пишет Password Ок соответственно нам нужно теперь провалиться вот в эту функцию посмотреть что там происходит копируем то есть в ней Всё если она получается выстрелила эта функция значит Ну я так понимаю она возвращает True или false если она вернула то вот здесь происходит дальше если не равно там перепрыгивает если равно то Password Ок Всё Давайте смотрим эту функцию грубо говоря так по иерархии Проваливай глубже и глубже и смотрим где там происходит э какой-то символ не не не до вставил My Secure Test Вот видите Букву т не дописал и сразу же не мог провалиться в функцию вот так Смотрим значит что у нас здесь происходит запускается функция тест если равно то переходит дальше к следующему шагу опять если равно к следующему шагу если равно опять всё время тест тест тест и If грубо говоря обычный Jump to equ что-то похожее на цикл здесь происходит только сверка идёт по символам отдельно Давайте посмотрим идёт смотрите символ один вот эти можно выводить Вот это в в определённой кодировке едини Вот кстати используя Если вы там другие службы используете Не факт что выведет сразу интерпретацию вот здесь выводит Вот это это единичка вот он он выводит что это один так дальше ми1 типа пропуск потому что мы перепрыгивая получается один [музыка] 3 т се а нижнее подчёркивание P W D D Да действительно 1 337 pvd Давайте попробуем вот сюда его вбить видимо здесь пароль не строками как раз сверка идёт а каждый символ отдельно посимвольно да пароль подходит так под пароль подошёл переходим к следующему файли подсказка радар 2 Ну опять же будем использовать рар 2 седьмой Файлик Ага здесь у нас менюшка онд и восклицательный вот такое имя о д Enter First Number Окей А давайте букву введём F Ага выкидывает сразу же не может прочитать Окей один имя такое Д4 второй номер п просто калькулятор Давайте Strings смотреть что тут есть у нас интересного смотрим функция Mine естественно главная сейчас мы с неё будем начинать есть Give FL есть функция тоже в неё заглянем менюшка name вот goodby а есть ещё вот такое Вау что за хакер Ну окей Давайте раз тут подсказка у нас есть что мы должны использовать радар 2 тогда лезем сразу же В2 мину D выбираем Файлик Проваливай в него Аа для анализа и PDF собачка Main и начинаем изучать по по порядку что у нас происходит нам главное мы смотрим вызовы Что за функции вызываются Вот goodby и после goodby Да у нас вот смотрите вот мы видим появляется что у нас что за действие у нас происходит перед тем как появляется Вау что за хакер у нас сравнение вот cmp comp если вот это равно сравнение происходит Дальше True false если не равно то у нас идёт перепрыгивание Мимо вот этого Если не равно да А если оно равно то он не перепрыгивает он выводит нам вот это вызывает вот эту функцию и вызывает функцию Give Flag вот что то есть нам надо посмотреть С чем у нас сравнивается Вот это сравнение оно главное здесь если оно сработало то у нас появляется Весь вот этот вот вся вот эта часть с волчу за хакер и до вывода флага видите если она не сравнится вот по стрелочке она пройдёт мимо перепрыгнет соответственно вот у нас главный элемент мы его копируем и вот здесь же вопросик вопросик и элемент смотрим Так ну либо Смотрите тут в виде строки есть это короче вот этот формат шестнадцатеричный он здесь вопросик переводит его видите в разные форматы и мы просто смотрим Что вот Обычный формат десятеричный Да допустим там такое-то число там а hex вот такое тут такое там и вот видите он тут если строка то это из вот ну имеем в виду то либо Число Вот это либо это из тут у нас надо так тут флаг надо это точно не флаг да Значит это нужно куда-то ввести запускаем файл Давайте Вот вместо имени Вот это вводим ничего ну-ка вместо имени пробуем э строку [музыка] E ничего если мы просто введём сразу всё успех скрытая менюшка то есть без цифр мы сразу же просто вводим вместо 1 2 3 и есть ещё одна менюшка Вот с таким номером вот и всё Естественно он подходит И следующая подсказка нам говорит что мы опять должны использовать и или рар 2 я буду использовать радар 2 он просит пассворд пробуем лёгкий способ L Trace любое число нет начинаем R2 - D 8 аа PDF собачка Mine тут использование пароля пишет выводит информацию и потом перепрыгивает То есть пропускается у нас вот эта часть вот эта часть вот эта опять сравнение я вижу вот следующее сравнение вот смотрите я вижу надпись доступ есть и выполнение функции Give FL Так ну получить флаг и функция и чтобы в неё попасть надо чтобы у нас простилась вот это здесь у нас есть отмена доступа нам надо чтобы она перескочила мимо короче вот вот в этом сравнении Jump equ должно быть если Jump и если равно вот этому А блин туплю Вот это сюда перепрыгивает а сравнивает вот с этой Короче мне надо чтобы она перепрыгнула вот сюда вот сюда и выполнила то есть чтобы она пропустила вот этот Джамп как бы его вот так Вокруг Обошла и получила вот этот вот дальнейшие действия для вывода пароля и флага точнее подтверждения пароля То есть можно сделать вывод что вот это пароль пробуем вывести это смотрим Что это за число это отрицательное число копируем и пробуем Q Enter Ага вышли пробуем и пароль Вот это отрицательное число и Бинго мы получаем флаг проверяем и успех комната завершена M
2025-01-18 08:46