reforef.ru 1


Архив форума RCE

Проблемы с OllyBonE

Рикардо Нарваха

Я скопировал DLL’ку в мою папку с плагинами, а папку "i386" в папку OllyDbg, но когда устанавливаю BPM ON EXECUTION, появляется сообщение об ошибке

OLLYBONE ABORT: Kernel driver load returned staus 2

и программа закрывается.

Кто-нибудь с этим сталкивался?

Спасибо.

jstorme

Привет, Рикордо. У меня работает. Я скопировал DLL’ку и SYS-файл в мою папку с плагинами, и OllyBonE отработал нормально — Olly остановился на OEP.

Во время проверки я удалил все плагины, кроме OllyBonE, использовал оригинальный Olly и упакованный UPX’ом файл.

Добавлено через 13 минут:

На самом деле я ошибся — я забыл удалить HE, который был установлен до этого. Так что у меня тоже не работает.

Рикардо Нарваха

При установке break-on-execute на секцию в окне M у вас появляется та же самая ошибка, что и у меня?

Добавлено через 2 минуты:

Теперь работает — я скопировал содержимое папки "i386" в папку Olly, и проблемы исчезли. Спасибо teh-автору.

jstorme

Хорошо, попробую сделать так же. Спасибо за подсказку.

Рикардо Нарваха

Хотя программа останавливается на OEP, но я не могу продолжить ее выполнение: удаляю break-on-execute, нажимаю F9, и программа завершается. Как с этим бороться?

idas37

Цитата:

«Порядок работы такой:

Загрузите EXE-файл в OllyDbg.

Определите секцию, где впоследствии должен появиться код программы.

Установите на нее флаг break-on-execute.

Запустите программу.

При попытке выполнения защищенной страницы генерируется INT1 (single-step break).

Контроль возвращается обратно к OllyDbg.


Мы в OEP, распаковка выполнена».

Следует просто снять галку в Debugging options –> Exceptions –> Single-step break.

Рикардо Нарваха

Я снял галку, остановка происходит как положено, но после нажатия на F9 или Shift+F9 программа по-прежнему завершается.

Добавлено через 19 минут:

Сделал всё заново, и теперь со снятой галкой всё работает. Спасибо.

Рикардо Нарваха

Было бы гораздо лучше, если бы break-on-execute можно было удалять прямо из контекстного меню окна CPU, тогда не приходилось бы каждый раз открывать карту памяти M. Такой упаковщик, как ASProtect выполняет в первой секции RETN, поэтому приходится обращаться к карте памяти для удаления брейка второй раз, а перед продолжением трассировки — третий, чтобы заново установить его. После попадания на OEP приходится очередной раз открывать карту памяти для удаления.

Жаль, что удаление прямо из контекстного меню окна CPU не предусмотрено…

theMyth

У меня плагин не работает, хотя я копировал файлы в папку с плагинами и в папку Olly. При этом выскакивает сообщение об ошибке «Kernel driver load returned staus 2», либо BSOD. ОС Windows XP Home SP2.

Рикардо Нарваха

Удалите лишние плагины и перегрузите Olly: если заработает, то добавляйте плагины по-одному, чтобы выявить несовместимый. Несколько человек мне сказали, что OllyBonE работает только если OllyDbg находится на C (не знаю, насколько это соответствует действительности, но всё же попробуйте установить Olly на C).

theMyth

Рикардо, спасибо за подсказку, однако всё равно не хочет работать, даже если используется оригинальный Olly, никаких плагинов кроме OllyBonE не установлено, а путь — C:\1.

Kayaker

У меня была та же проблема. Дело в том, что с используемой в плагине процедурой InstDriver не всё в порядке. Rootkit’ы любят использовать эту процедуру инсталляции драйверов для кода POC. У меня были проблемы при запуске FU rootkit, где применена та же самая процедура, и тоже были ошибки ImagePath. Пришлось портировать код в мой собственный Driver Framework, где используется несколько иная процедура инсталляции.


Для решения проблемы просто удалите раздел реестра

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Ollybone]

Кроме того, можете попробовать удалить и раздел

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\LEGACY_OLLYBONE]

Затем задействуйте плагин OllyBonE, где бы ни находилась ваша папка с плагинами по умолчанию.

Возможно, после удаления раздел в реестре для данного драйвера будет отсутствовать, хотя обычно он там должен быть. По-видимому, при первой установке OllyBonE записывается неверный ImagePath драйвера, и это впоследствии приводит к ошибкам до тех пор, пока раздел не будет удален. Изменение ImagePath вручную, похоже, не помогает. Это должно подействовать, если DLL’ка плагина находится в папке "Plugin", SYS-драйвер — в программной папке OllyDbg и это первая установка. Но так не должно быть, поэтому мне кажется, что в коде есть баг. Тем не менее, надеюсь, что по данной рекомендации OllyBonE у вас заработает.

double_dword

Myth писал:

«У меня плагин не работает, хотя я копировал файлы в папку с плагинами и в папку Olly. При этом выскакивает сообщение об ошибке «Kernel driver load returned staus 2», либо BSOD. ОС Windows XP Home SP2».

Мне выдавалась такая же ошибка в моем аккаунте с ограниченными правами. После запуска Olly под администратором проблема исчезла. Бесполезно использовать «Run as» — требуется именно вход в систему с администраторскими правами.

Рикардо Нарваха

О баге OllyBonE

При попытке установки BPM ON EXECUTE, когда DLL’ки загружены в область памяти ниже экзешника, OllyBonE выдает сообщение, что невозможно установить BPM ON EXECUTE вне главного модуля, однако BPM устанавливается при этом именно в главный модуль экзешника.

На скриншоте jeje.png показана главная секция экзешника, а также две DLL’ки в нижней области памяти, что и смущает OllyBonE. Плагин видит DLL’ки и думает, что экзешник находится по адресам еще ниже.


Так что OllyBonE можно легко ввести в заблуждение, всего лишь загрузив DLL’ку в область памяти ниже EXE-файла.

jstorme

Для тех, у кого выскакивают BSOD’ы. Нашел на сайте разработчиков плагина:

«Если в Windows XP SP2 включена опция DEP, то при достижении целевой программой страницы BoE вероятно появление BSOD’а. На данный момент управлять DEP в системе можно только здесь:

Панель управления –> Система –> Дополнительно –> Быстродействие –> Параметры быстродействия –> Предотвращение выполнения данных

Если это не помогает, то в boot.ini к описанию загрузочного раздела Windows следует добавить:

/noexecute=AlwaysOff

Выражаем благодарность Tyler’у Hudak и Danko Krajisnik за помощь в решении проблемы с DEP».

Архив форума RCE,

28.07.2006…24.10.2006

http://www.woodmann.com/forum/showthread.php?9317-OLLYBONE

[Перевод с английского: Рома Стремилов, 05.2010]