Название главы: «Глава 14 - Поиск жестко заданного серийного номера. Часть 2»
Найти рассматриваемые крекми и уроки можно на сайте GitHub, гуглите "Уроки по ollydbg Рикардо Наваха" и переходите на GitHub к пользователю в папку /.gitbook/assets/files/14
К этой главе прилагается 2 подопытных exe файла. Рассмотрим первый из них. Немного информации о жертве:
Если честно я думал это будет легко, в какой-то момент я задался вопросом а реально это hardcoded защита? Короче полез я в Главу 14 и там искал ответ. Как оказалось автор крекми накидал пыли в глаза (хотел запутать). Хотел запутать и у него получилось. Например тут он делил строку (которая выглядит как пароль к нашему крекми) на 3 части, потом вызывал функцию memset, которая нигде не использовалась далее.
Дальше автор тоже кидал пыль в глаза, манипулировал с той же hardcoded строкой, была даже гениальная команда mov eax,eax, которая ничего не делает. А сопровождалось это всё дебильными обращениями к стеку, которые генерирует компилятор C когда используются локальные переменные в функциях и которые очень путают.
Я всё таки вот сейчас полностью разобрал что там происходит в конце и оказалось что первые 10 символов должны быть "EDHHIJKLMI" а дальше пофиг.
Ещё там сравнение паролей не в лоб, а сначала считаются количество равных символов и количество пройденых, а потом дальше обойдя опять же бесполезные memsetы и прочий мусор, идёт сравнение, правильных символов должно быть десять.



Комментариев нет:
Отправить комментарий