Перейти к содержанию

Анти-отладка?


Гость van9petryk

Рекомендуемые сообщения

Пытаюсь отладить програму. Получаю:

d86e4c41f0.jpg.

fb43b8b09a.jpg.

Что за звери ZwContinue(), SetDebugContext(). Вроде как пишут на SO, прием анти-отладки  К тому же есть в коде вызовы IsDebuggerPresent. Что такое IsDebuggerPresent это понятно, а вот ZwContinue(), SetDebugContext(), как они работают не понятно. В интернете только тот линк на SO. Сталкивался ли кто с этим? BP на IsDebuggerPresent срабатывает уже после того, как выскакивает окно уведомления об изменении регистров отладки (поэтому не думаю что он главный виновник). Приложение запускается, а отладчику возвращает код 0.

ce92389b6e.jpg

 

Использовал OllyDbg 2.01.

Изменено пользователем van9petryk
Ссылка на комментарий
Поделиться на другие сайты

Используй софтварные(int 3) бряки, вместо хардварных, у тебя на скринах же все написано.

5-й поток изменил DR7 перейди по потоку и посмотри что изменяет этот отладочный регистр.

 

http://www.logix.cz/michal/doc/i386/chp12-02.htm

Ссылка на комментарий
Поделиться на другие сайты

спасибо за линк, но никакой там анти-отладки нету. Хотя в основном модуле и есть вызовы IsDebuggerPresent, но они не для выявления отладчика. Я просто не правильно присоединялся к отлаживаемой програме. К играм из стима нужно присоединять отладчик когда они запущены, а я открывал в олли exe и запускал его из олли. В результате вызывалась SteamAPI.RestartAppIfNecessary, которая перезапускала все это дело отдельным процесом, и основной процес завершался.

Изменено пользователем van9petryk
Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.