|
6316 / 3040 / 1055
Регистрация: 01.06.2021
Сообщений: 11,587
|
|
Crackme: реверс-инжиниринг18.06.2026, 13:19. Показов 23586. Ответов 278
Метки нет (Все метки)
В архиве 10 exe-файлов - консольных приложений, каждое из которых запрашивает пароль. Цель в том, чтобы найти и ввести правильный пароль, после чего получить сообщение Password OK!
Приложения созданы не мной, а неким IOLI. Приложения 32-битные, что тоже упрощают работу. Приложения закрываются после выполнения, поэтому запускайте из cmd. Собственно, вы можете использовать любой удобный вам инструмент: IDA Pro, Ghidra, Cutter, x32dbg и т.д. Т.е. можно как статически анализировать, а можно запустить отладчик и анализировать динамически. Поскольку не будет вывода секретного сообщения при правильном вводе пароля и заранее известно, что выведется лишь Password OK!, то не вижу смысла в использовании всяких трюков, чтобы обойти проверку пароля всякими jmp и прочими инструкциями. Лучше тренироваться именно в поиске пароля, а не в его обходе. Топовые декомпиляторы в простых случаях сразу отображают пароль, поэтому в таких случаях, чтобы было интересно, предлагаю все равно попробовать самостоятельно найти пароль, анализировав дизассемблерный код. Что я имею в виду? Например, если открыть crackme0x03.exe в IDA Pro, то после декомпиляции мы сразу увидим пароль: Декомпилятор Ghidra тоже сразу показывает пароль (в hex): Чтобы было интересно, в таких простых случаях можно перейти в дизассемблерный вид и попытаться найти пароль самостоятельно: Например, вот как выглядит это окно в IDA Pro. Я там специально добавил комментарии к некоторым строкам и разъяснил, как вычисляется этот пароль (но есть одна опечатка в одном комменте 528 вместо 582). Для новичков в IDA Pro есть фича Auto Comments, которая включается в настройках. Но честно говоря, она мне не очень нравится. В Cutter автокомментирование инструкций работает, имхо, лучше. Поэтому новичкам будет проще в Cutter самостоятельно разбирать логику вычисления пароля. Как видно на скриншоте, Cutter может автоматически комментировать каждую строчку, что довольно удобно: Еще Cutter хорош тем, что на выбор там два декомпилятора, один из которых это декомпилятор от Ghidra (вполне неплохая альтернатива платного от Hex-Rays в IDA Pro). Собственно, этот же декомпилятор можно использовать и в самой Ghidra, но там нет автокомментирования. *** В crackme0x04.exe пароль сразу не виден после декомпиляции. Но и там нет ничего сложного, просто переходим в функцию check и сразу становится ясно, что на самом деле данное приложение принимает не один правильный пароль, а их может быть несколько. Т.е. любое число, где сумма цифр введенного числа равна 15. crackme0x05.exe очень похож на предыдущее задание, только нужно еще вспомнить, как определяют четность чисел с помощью побитового AND. *** Короче, если вам скучно и не знаете, чем заняться, то можете поиграться с этими файлами и ознакомиться с основами реверс-инжиниринга.
0
|
|
| 18.06.2026, 13:19 | |
|
Ответы с готовыми решениями:
278
Ошибка приложения в простом коде, реверс строки Функция и реверс строки |
|
6316 / 3040 / 1055
Регистрация: 01.06.2021
Сообщений: 11,587
|
|
| 19.06.2026, 20:51 [ТС] | |
|
Custos, это понятно. Я не в контексте крякми писал, а вообще в целом.
Custos, я решаю простые тренировочные задачи, для этого IDA Pro это даже перебор. То же самое в Cheat Engine. Решил все туториалы и еще несколько из других сайтов. Но взламывать серьезные вещи это точно не мой уровень. Я лишь начинающий хоббист в этой области.
0
|
|
| 19.06.2026, 22:59 | |
|
Не по теме: Custos,
0
|
|
| 19.06.2026, 23:01 | ||
|
Лучше ставить вопрос по-другому
1) Мы не стеснены объемом, нужно 100 метров - сделаем 100 2) Мы не ставим задачу написать "неснимаемое", но хотим иметь достойный пароль который не подсмотреть и jmp'ами и/или nop'ами не забить. И написание такого пароля не должно быть накладно для нас. Есть простое, напрашивающееся решение..
0
|
||
|
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,247
|
||
| 19.06.2026, 23:07 | ||
|
что бы люди, которые грамотнее тебя, всё не знали наперёд. (И ни кому не говори.)
0
|
||
|
6316 / 3040 / 1055
Регистрация: 01.06.2021
Сообщений: 11,587
|
|
| 20.06.2026, 00:19 [ТС] | |
|
Igor3D, если пароль будет в самом бинарнике, то сколько бы ты ни старался, все равно найдется тот, кто взломает твое приложение.
Если пароля в бинарнике не будет, а вместо него будет его хеш или даже вообще ничего, то никто не взломает. Тренировочные крякми делают для того, чтобы люди чему-то научились (например, работе в отладчике, в других утилитах). Поэтому эти крякми не делают прям очень сложными, не используют обфускацию 80-го левела и не используют антиотладочные трюки. Ведь, такое задродское крякми ни один новичок не станет взламывать. Но, как уже сказал, если пароль будет в бинарнике, то даже при использовании самого крутого средства защиты, прогу все равно взломают, если это будет нужно. Последнее уточнение очень важно. Ведь, самое лучшее средство защиты - это ненужное никому приложение) Например, если на этом форуме некто выложит посредственное крякми и никто его не взломает, то это не означает, что это крякми прям имеет защиту топ уровня, а это лишь говорит о том, что крякми недостаточно мотивировало форумчан и/или что на форуме нет настоящих экспертов в этой сфере. *** Желающие могут в этой теме предложить свои крякми, где нужно будет ввести пароль или подобрать серийник под имя и т.д. Но ввиду вышеизложенного, просьба не делать прям задротские приложения (тема создана в разделе начинающих и предназначена для новичков) Цель - получить наслаждение от разбора алгоритма. Добавлено через 13 минут Наталья8, если реально этим заниматься, стать экспертом в этой области, то и за RE дают неплохие деньги. Тем более, ты же сишник. Тебе понравится.
0
|
|
|
Software Engineer
338 / 342 / 55
Регистрация: 23.09.2014
Сообщений: 1,050
|
||
| 20.06.2026, 00:47 | ||
|
0
|
||
| 20.06.2026, 01:51 | ||
Мотивация ясна: если "все равно взломают" - то зачем что-то делать, трепыхаться? Тем более как же засисяться - совершенно неясно. А ведь никто не мешает подходить к этому разумно. Хорошо, пусть "снимут" (если вообще до этого дело дойдет - совершенно необязательно). Но вот кровушки снимающего я попью. А если снимет - в следующий раз еще больше попью. Защита по меньшей мере столь же увлекательна как и подлом, на мой взгляд защита требует даже большей фантазии, инициативы и умения. Откуда вообще этот страх перед "великими хакерами" которых выставляют уродами в голливудских фильмах?
0
|
||
|
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,247
|
|
| 20.06.2026, 02:04 | |
|
Я шифровал. Напутал на си сборку пароля. Сейчас понять не могу.
Если изучать бинарник, то алгоритм сборки на ассемблере надо читать. Здесь ещё одной функции не хватает. Понять это нельзя. Вот это что замазано, видно в блокноте.
0
|
|
|
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,247
|
||
| 20.06.2026, 02:17 | ||
|
Только ласковыми словами и логикой убеждения.
0
|
||
|
6316 / 3040 / 1055
Регистрация: 01.06.2021
Сообщений: 11,587
|
||
| 20.06.2026, 08:32 [ТС] | ||
|
Однако, во всех случаях сам ключ тоже записывается в бинарник игры. Такая защита взламывается за доли секунды. Вот, если ключа в бинарнике не было бы, то взломать было бы невозможно. Честно говоря, хакер, который понял алгоритм сокрытия ключа впервые, наверное, тратил чуть больше времени. Но когда алгоритмы для всех этих движков уже расписаны и есть софтули для взлома, то этот процесс занимает доли секунды. Разработчики движков сами про это знают, но все равно они не убирают эти фичи для шифрования игры. Зачем же они "что-то делают, трепыхаются"? Ну хз, наверное, эта лайтовая защита способна остановить некоторых script kiddies, школоло. Хотя, в эпоху ИИ, даже их такая защита не остановит, ибо ИИ посоветует им, как убрать такую защиту...
0
|
||
|
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,247
|
||
| 20.06.2026, 12:32 | ||
|
Мне как то один мордот насоветовал процессхакер почитать. Пару вечеров убил. (Время убиваеться.) Во первых там у них свой фрамеворк. (Модно так сейчас.) А вместо волшебных чисел там дефайны, которые определены во всех файлах. А файлов там дохрена. Что бы понять какое число значит это слово, надо те файлы перелопатить и найти. Я в ассемблере овец... А что бы этим заниматься, его учить бесполезно. Там учить нечего. За него надо садиться и работать на нём. Пара лет уйдёт.. И более.
0
|
||
|
6316 / 3040 / 1055
Регистрация: 01.06.2021
Сообщений: 11,587
|
||||
| 20.06.2026, 14:31 [ТС] | ||||
|
*** Когда-то смотрел интервью с хакером, так он говорил, что в наше время при желании обычные люди могут найти готовые хакерские утилиты для практически любой задачи, но разве что кроме тех, за которые 5+ лет дают) Причем, сделал это на винде - ОС, которая не любит, когда пользователь мониторит сеть. Все коммерческие программы не работали на винде. Например, помню, что знаменитый Wireshark у меня не работал. Использовал старинный Microsoft Network Monitor, который периодически отключался и процесс мониторинга приходилось заново запускать, но хотя бы он делал своё дело. Для этого использовал батник. А вот пароль искал с помощью Aircrack-ng. Но на линуксе всё в разы проще. Добавлено через 33 минуты Таким образом, хоть и Themida это крутой коммерческий софт, но на практике, когда идет речь о защите какого-то непопулярного приложения, то лучше использовать приложение Custos или что-то похожее, нежели знаменитую Themida. Почему пишу, что это подходит лишь для непопулярного приложения? Потому что, если приложение станет популярным, то хакеры обратят на него внимание и быстро обойдут защиту Custos. Так что, когда твоя игра не очень популярна, то без проблем можно придумать свой механизм для её защиты, написав собственный велосипед для шифрования вместо использования фичи движка. В этом случае script kiddie не сможет найти в инете готовую утилиту, а взломать сам он не сможет, даже если защита простая.
0
|
||||
|
623 / 381 / 67
Регистрация: 09.03.2016
Сообщений: 4,247
|
||
| 20.06.2026, 14:34 | ||
|
Пробовал я на Кали Линукс. Шуму и рекламы полно, толку ноль. ------- Я когда то долбил сеть на наличие RDP...(Remote Desktop Protocol) Так там дуракоф больше. И то ни чего особо не надолбишь. А уж вокруг тебя пятнадцать абонентов wi-fi. Это шансов вообще ноль.
0
|
||
|
6316 / 3040 / 1055
Регистрация: 01.06.2021
Сообщений: 11,587
|
|||
| 20.06.2026, 14:49 [ТС] | |||
|
Кстати, пароль, что я находил, судя по имени сети, был от телефонной раздачи wi-fi. Собственно, наверное, поэтому было 8 цифр. К такой сети бессмысленно присосаться, вычисляют быстро. Да и владелец телефона вряд ли будет постоянно включать раздачу. Но всё это дело лишено смысла в наше время, когда инет стоит копейки. Сейчас у меня на телефоне 5g - делай чё хочешь и где хочешь. Скорость на уровне кабельного. Хотя, и тогда я не ради инета пробовал взломать, а мне просто было интересно. *** Сейчас у людей пароли сложные, а сами люди хорошо разбираются в этих темах. Наверное, в наше время любой школьник знает, зачем сквозное шифрование в мессенджерах, тогда как в прошлом людям плевать было на такие вещи. Наталья8, поэтому ты правильно написал, что в наше время спецслужбы больше не подслушивают или взламывают девайсы, а приходят к тебе домой и вежливо просят поделиться всеми данными, например, сообщениями, которые ты писал в мессенджере. А порой они настолько вежливы, что ты поделишься даже сообщениями, которые не писал, но мол собирался написать.
0
|
|||
| 20.06.2026, 19:14 | ||
![]()
0
|
||
|
6316 / 3040 / 1055
Регистрация: 01.06.2021
Сообщений: 11,587
|
||
| 20.06.2026, 19:33 [ТС] | ||
![]() UE генерировал для меня ключ MiCKnMlc7k6WHDAYi0za2QkovaJjWmQMxw1i53vnIS0=А он просто лежит себе в бинарнике Если что, MiCKnMlc7k6WHDAYi0za2QkovaJjWmQMxw1i53vnIS0=, который мы видим в настройках проекта это в Base64. Если его декодировать, то получаем как раз 0x32208A9CC95CEE4E961C30188B4CDAD90928BDA2635A640CC70D62E77BE7212D32-байтовый (256 бит) ключик для AES-256 Я полагал, что ключ хотя бы будет раздроблен на части... Но нет, он цельный. Да, там конечно засунули лишних байтов, но он лежит в одном месте.
0
|
||
|
6316 / 3040 / 1055
Регистрация: 01.06.2021
Сообщений: 11,587
|
|
| 20.06.2026, 19:49 [ТС] | |
|
Вот так выглядит:
32 20 8A 9C C7 45 D4 C9 5C EE 4E C7 45 D8 96 1C 30 18 C7 45 DC 8B 4C DA D9 0F 10 45 D0 C7 45 E0 09 28 BD A2 C7 45 E4 63 5A 64 0C C7 45 E8 C7 0D 62 E7 C7 45 EC 7B E7 21 2D Красные байты это мусор Т.е. ключ состоит из 8 блоков по 4 байта, между которыми мусорные байты. Но всё же, ключ лежит в одном месте.
0
|
|
|
Модератор
|
||
| 20.06.2026, 21:43 | ||
|
Проблемы будут если только игра накрыта защитой.
0
|
||
|
6316 / 3040 / 1055
Регистрация: 01.06.2021
Сообщений: 11,587
|
|||
| 20.06.2026, 22:04 [ТС] | |||
|
но конкретно для UE-игр иногда иметь ключа недостаточно, чтобы получить доступ к ассетам. Порой нужно запустить игру и в рантайме уже получить mappings. Это файл с расширением usmap. В рантайме нужно инжектировать UnrealMappingsDumper.dll. Это можно сделать, например, в Cheat Engine (Memory View / Tools / Inject DLL). Другой способ получить этот файл - это использовать UE4SS. Там просто файлы кидаются рядом с игрой и запускается игра.Самая лучшая защита - это сделать такую бесполезную игру, которую не станут взламывать даже под дулом автомата))
0
|
|||
|
6316 / 3040 / 1055
Регистрация: 01.06.2021
Сообщений: 11,587
|
|
| 20.06.2026, 23:09 [ТС] | |
|
В YouTube есть урок по взлому программы Bigasoft Total Video Converter, которая стоит $37.
Кликните здесь для просмотра всего текста
Видео снято в 2017 году. После этого данная программа получила множество обновлений и до сих пор в активной разработке. Но самое смешное это то, что описанный взлом до сих пор работает. Неужели разрабы не увидели данное видео в YouTube? Почему они не предприняли мер по усилению защиты? Вся суть взлома лишь в замене в нескольких местах исходной инструкции на новую: mov al, 1 (запись значения 1 в 8-битный регистр AL. На самом деле, AL это младший байт 32-битного регистра EAX)Вышеупомянутая программа 32-битная, проц. работает в 32-битном режиме и там нет регистра RAX, только EAX. Это я просто смог лишь такую картинку найти в инете.
0
|
|
| 20.06.2026, 23:09 | |
|
Реверс слов в строке
Реверс элементов массива реверс строки Реверс масива по строках. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет
Новости компьютерного мира и их обсуждение (4)
Салют, шампанское, овации!
:drink:
|
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр.
Дословно, отклонённая. . .
|
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы
Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
|
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
|
|
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2.
Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
|
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
|
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
|
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
|