Сейчас на форуме: _MBK_, vsv1 (+4 невидимых)

 eXeL@B —› Вопросы новичков —› memory breakpoint on execute можно ли?
Посл.ответ Сообщение

Ранг: 105.9 (ветеран), 1thx
Активность: 0.090
Статус: Участник

Создано: 21 мая 2007 21:21
· Личное сообщение · #1

Есть в Оле такая штука: можно поставить мэмори бряк на секцию
Set memory breakpoint on access
Как я понимаю access включает в себя write, read и execute. Есть отдельный бряк Set memory breakpoint on write. А можно ли поставить на секцию бряк что то типа
Set memory breakpoint on execute?



Ранг: 260.2 (наставник)
Активность: 0.190
Статус: Участник

Создано: 21 мая 2007 22:35
· Личное сообщение · #2

Sturgeon пишет:
Set memory breakpoint on execute?

хз,но попробуй поставить атрибут read/write, ну а дальше по ситуации(убираешь атрибуты и F9)...



Ранг: 105.9 (ветеран), 1thx
Активность: 0.090
Статус: Участник

Создано: 21 мая 2007 22:43
· Личное сообщение · #3

Неа. Херня получается. Access violation и прога падает.
Я думал больше в сторону условных бряков. Типа того, что "бряк если 400000<eip<500000". Так можно? В Оле вроде можно ставить conditional бряки, но я не знаю как ими пользоваться.



Ранг: 260.2 (наставник)
Активность: 0.190
Статус: Участник

Создано: 21 мая 2007 23:31
· Личное сообщение · #4

Sturgeon пишет:
Access violation и прога падает.

измени атрибуты read_write_execute, ну а дальше f9...

кто-то помню говорил, что есть плуг, который ставит Set memory breakpoint on access и после бряка проверяет eip. если это не тот регион, то продолжаем выполнение...



Ранг: 5.7 (гость)
Активность: 0.010
Статус: Участник

Создано: 22 мая 2007 19:33 · Поправил: Tector
· Личное сообщение · #5

Возможно поможет это:
BPX куда ставить if EIP<500000 && EIP>400000
Смысл в следующем: breakpoint куда-то (можно опр. функцию), если EIP в пределах от 400000 до 500000. Вот только бряк куда ставить...



Ранг: 105.9 (ветеран), 1thx
Активность: 0.090
Статус: Участник

Создано: 22 мая 2007 20:50
· Личное сообщение · #6

Тут весь смыл в чем. Это я воюю с Аспром, который без исключений. Вот хочу попробовать поймать его на обращении к секции кода. Он к ней обращается немерянное количество раз, но то на чтение, то на запись. А вот на исполнение по идее должен обратиться, когда все распакуется. Тут то я его и словлю. Попробовал набросать скриптец в ОллиСкрипт:
ti
lab1:
cmp eip,500000
jb end
ti
jmp lab1
end:
ret

но чего то он не фунциклирует.
Насколько бредовая идея? А то может не стоит и заморачиваться?



Ранг: 260.2 (наставник)
Активность: 0.190
Статус: Участник

Создано: 22 мая 2007 21:42
· Личное сообщение · #7

гг, попробуй лучше в скрипте ставить memory бряк на секцию кода, дальше run и cmp eip,5000000...



Ранг: 105.9 (ветеран), 1thx
Активность: 0.090
Статус: Участник

Создано: 22 мая 2007 22:04
· Личное сообщение · #8

sniperZ пишет:
в скрипте ставить memory бряк на секцию кода,

Так там вроде не предусмотрено таких штук.
И еще вопрос. А есть что то вроде отладчика для Олиных скриптов?



Ранг: 260.2 (наставник)
Активность: 0.190
Статус: Участник

Создано: 23 мая 2007 00:05
· Личное сообщение · #9

Sturgeon пишет:
Так там вроде не предусмотрено таких штук.

bprm 401000, $SizeRegion



Ранг: 138.7 (ветеран), 135thx
Активность: 0.110
Статус: Участник

Создано: 23 мая 2007 09:49 · Поправил: crc1
· Личное сообщение · #10

Sturgeon пишет:
А есть что то вроде отладчика для Олиных скриптов?

Ставь команду pause где нужно, а потом клавишей "S" трассируй свой скрипт в окне Script Window



Ранг: 105.9 (ветеран), 1thx
Активность: 0.090
Статус: Участник

Создано: 23 мая 2007 10:45
· Личное сообщение · #11

Всем спасибо! Со скриптом повошкаюсь, но пока решил вопрос проще: пишу в командлайне "TC eip<500000"
Срабатывает.




Ранг: 353.0 (мудрец)
Активность: 0.370
Статус: Участник
resreveR

Создано: 23 мая 2007 15:43
· Личное сообщение · #12

Есть дистриб ольки, в котором ollydbg.exe пропатчен так ,чтобы она останавливалась только on execute :]

-----
Тут не могла быть ваша реклама




Ранг: 105.9 (ветеран), 1thx
Активность: 0.090
Статус: Участник

Создано: 23 мая 2007 17:23
· Личное сообщение · #13

lord_Phoenix
А как называется? И где взять? Или исключительно приватный инструмент?



Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

Создано: 23 мая 2007 17:59
· Личное сообщение · #14

Sturgeon пишет:
А как называется? И где взять?

У краклатинос называется что то типа парчиадо ;) удобней плуг OllyBone
crc1 пишет:
Ставь команду pause где нужно, а потом клавишей "S"

В свежих плагинах можешь просто загрузить скрипт и пошагово выполнять без пауз..



Ранг: 105.9 (ветеран), 1thx
Активность: 0.090
Статус: Участник

Создано: 23 мая 2007 18:49
· Личное сообщение · #15

pavka пишет:
плуг OllyBone

Да у меня с ним какие то праблы.
Вылетает "Kernel driver load returned status 2"




Ранг: 990.2 (! ! !), 380thx
Активность: 0.680
Статус: Модератор
Author of DiE

Создано: 24 мая 2007 09:14
· Личное сообщение · #16

Sturgeon пишет:
Вылетает "Kernel driver load returned status 2"


не судьба значит) есть ещё Shadow bpmx.exe тока хз чё она делает

-----
[nice coder and reverser]




Ранг: 138.7 (ветеран), 135thx
Активность: 0.110
Статус: Участник

Создано: 25 мая 2007 08:07 · Поправил: crc1
· Личное сообщение · #17

pavka пишет:
В свежих плагинах можешь просто загрузить скрипт и пошагово выполнять без пауз..

Эт я знаю, имел ввиду использовать pause как брейкпйнт в скрипте.
Кстати, на счет свежих плагов
Есть такая скриптовая команда dbh (х.з. че она делает), так плуг 1.47 нормально ее проходит, а 1.52 ругается "Unable to read memory of debugged process (00ХХХХХХ..00YYYYYY). В чем фишка?



Ранг: 1045.7 (!!!!), 31thx
Активность: 0.570
Статус: Участник

Создано: 26 мая 2007 05:14
· Личное сообщение · #18

crc1 пишет:
Есть такая скриптовая команда dbh (

Hides debugger



Ранг: 105.9 (ветеран), 1thx
Активность: 0.090
Статус: Участник

Создано: 27 мая 2007 09:54
· Личное сообщение · #19

Извините, что поднимаю тему, но тут еще появился вопрос по OllyBone. На SnD форуме наткнулся на похожую проблему у людей. Там оказалась проблема в том, что драйвер и плуг лежали в директории PLUGINS. После того как драйвер перенесли в корневую папку Оли все заработало.
Я пробовал запускать плаги, скачанные из разных мест и на разных сборках. Результат один: (OllyBone abort "Kernel driver load returned status 2"). Может быть дело как раз в том, что неправильно установлены плуг и драйвер? Как написано в ридми, плуг "ollybone.dll" я поставил в папку plugins, а драйвер ollybone.sys в корневую папку Оли. Потом пробовал переставлять по всякому. Один хрен не пашет. Скажите пожалйста, как правильно его установить, и, вообще, кто-нибудь с таким сталкивался?



Ранг: 138.7 (ветеран), 135thx
Активность: 0.110
Статус: Участник

Создано: 28 мая 2007 08:46
· Личное сообщение · #20

pavka пишет:
Hides debugger

Спосиб.



Ранг: 105.9 (ветеран), 1thx
Активность: 0.090
Статус: Участник

Создано: 31 мая 2007 17:52
· Личное сообщение · #21

Простите за надоедливость.
Расскажите как правильно установить OllyBone??




Ранг: 68.0 (постоянный), 6thx
Активность: 0.060
Статус: Участник

Создано: 31 мая 2007 18:50 · Поправил: Dr3d
· Личное сообщение · #22

На счет Set memory breakpoint on execute
В олле есть форма для установки Conditions, находится в меню "Debug" или Ctrl+T
Тут http://dump.ru/files/2/2451487494/ рисунок, показывающий, как устанивить бряку на исполнение в секции кода



Ранг: 105.9 (ветеран), 1thx
Активность: 0.090
Статус: Участник

Создано: 31 мая 2007 21:33
· Личное сообщение · #23

Да, я в курсе. Спасибо.
Только все равно праблы. Я тут выше писал, что это мне надо для Аспра. А трассировать кучу вложенных аспровских циклов это не для слабонервных. Я бросил через 15 минут.


 eXeL@B —› Вопросы новичков —› memory breakpoint on execute можно ли?
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати