![]() |
eXeL@B —› Вопросы новичков —› Поиск OEP в OllyDbg |
Посл.ответ | Сообщение |
|
Создано: 07 августа 2017 00:00 · Личное сообщение · #1 Доброго времени суток. Пытаюсь распаковать crackme упакованый ACProtect 1.09g. Встроеный искатель eop в OllyDbg 2.01 останавливается на 046B1C0 , а в OllyDbg 1.1 останавливется на 04271B5. По всем признакам второй вариант и является правильным. В чем может быть причина неверного нахождения oep в OllyDbg 2.01? ![]() ![]() |
|
Создано: 07 августа 2017 00:53 · Личное сообщение · #2 |
|
Создано: 07 августа 2017 14:29 · Поправил: Cranch · Личное сообщение · #3 Jaa , что именно руками разобрать? Поиск oep? Трассировать программу до момента неверно найденой oep? Вручную oep я нашел первым делом ( встроеный искатель включил для проверки): поставил bp на KiUserExceptionDispatcher, нашел последнее искуючение, оттрасировал до последней инструкции popad (их попадалось нескольно мусорных), через пару инструкций нашел переход на oep. Так и не понял почему втроенный искатель OllyDbg 2.01 остановился именно на 046B1C0... Добавлено спустя 35 минут Я так понял алгоритм поиска oep в OllyDbg2 и OllyDbg отличается. Какие факторы влияют на него? На что он ориентируется? Где про него прочитать? Влияют ли какие-то параметры не из вкладки SFX на его работу? Просто хочется разобраться в проблеме. Добавлено спустя 2 часа 43 минуты Выяснил, что проблема в том, что OllyDbg2 почему-то в memory map объединила секции .text .data .rdata .idata и др. в одну большую секцию. А так как ст. искатель ставит bp на всю секцию, то и получается остановка хрен знает где. Вот только почему она так сделала? Баг? Защита? Неправильные настройки? ![]() |
|
Создано: 13 августа 2017 10:04 · Поправил: Rio · Личное сообщение · #4 |
![]() Ранг: 419.0 (мудрец), 647thx Активность: 0.46↗0.51 Статус: Участник "Тибериумный реверсинг" |
Создано: 13 августа 2017 10:18 · Личное сообщение · #5 Cranch Ну Вы хотя бы линк на кракми выложили что-ли. Во-вторых, доверять отладчику поиск оригинальной точки входа это знаете немного не правильно. По мне, так не уверен, что Вы OEP нашли. Хотя бы по стеку это видно (верхушка не доехала до return в ntdll, очевидно же) и по содержанию регистров (всякий левый мусор от защиты). Может это вообще Fake OEP. Определитесь сначала с компилятором (Delphi, VC++), а потом танцуйте. ![]() |
|
Создано: 13 августа 2017 10:32 · Поправил: difexacaw · Личное сообщение · #6 Нужно определить критерий EP. Её может не быть вообще, так как два модуля могут быть соеденены в один. Обычно критерий для OEP - инициализация модуля/апп и находится это следующим образом: 1. Ведётся лог API. 2. Отслеживаются функции инициализации, как например стандартные сишные ртл. 3. Когда обнаруживается маркер инициализации, начало текущей ветви(или в общем нужно пройти по графу назад) является EP. Для этого должна быть трассирована каждая инструкция, либо апп запущено под визором(dbi), так как обычно машинная трассировка не возможна из за защиты. Это вероятностный эвристический путь решения. Автоматика ошибается, посему лучше это сделать самому в отладчике. Но для этого нужно что то понимать, не только как жать кнопки в меню ![]() Добавлено спустя 7 минут На скрине вообще не код, а данные, по которым прошёлся дизасм ![]() Если тс такой мусорный код не понимает, то не следует вообще открывать отладчик - ваш вопрос не имеет смысла и вам никто помочь не может. ----- vx ![]() |
|
Создано: 14 августа 2017 01:00 · Личное сообщение · #7 ELF_7719116 Я понимаю, что отладчику в этом деле нельзя доверять, просто в одном туториале читал, что на простых упаковщиках это может сработать. На скрине ложно найденая oep. Я почему-то подумал ее выложить, а не истинную oep. Линк на кракми: https://tuts4you.com/download.php?view.895. Файл в архиве: UnPackMe_ACProtect1.09g.f. P.S. Я все-таки осилил этот кракми) Добавлено спустя 8 минут difexacaw Спасибо за эвристику!) На скрине не найденый вручную oep, а то что выдал искатель на OllyDbg2. Я как-то не додумался выложить скрин с oep или сам кракми. Ну так или иначе я осилил кракми. Я не настолько безнадежный, как показалось) ![]() |
|
Создано: 15 августа 2017 20:20 · Личное сообщение · #8 Cranch Эти крякми 2006 года. Скачайте любую малварку и вручную найдите еп. Только в таком случае вы получите опыт. А по описанию в видеокурсах и прочей лабуде ничего у вас в результате не будет, кроме выполнения описанных действий. Это никакого знания и опыта вам не даст, посему это всё ничто. ----- vx ![]() |
![]() |
eXeL@B —› Вопросы новичков —› Поиск OEP в OllyDbg |