Сейчас на форуме: tyns777 (+5 невидимых)

 eXeL@B —› Программирование —› Memory Breakpoint
Посл.ответ Сообщение

Ранг: 4.0 (гость)
Активность: 0=0
Статус: Участник

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

Privet.

Ya tut dumal kak eto ollydbg + drugie debuggeri stavia memory breakpoints na memaccess/memread/memwrite/memexecute. Ktonibud mozet podkinut paru slov chto mne na google iskat?

Pasibi zaranie.



Ранг: 210.5 (наставник), 2thx
Активность: 0.140
Статус: Участник

Создано: 17 декабря 2007 23:34 · Поправил: arnix
· Личное сообщение · #2

Копай в сторону регистров DR0, DR1, DR2, DR3, а также DR6 и DR7.
Если инфу не найдёшь скажи коротко изложу как это работает.

edit:
www.openrce.org/repositories/users/Soul12/HardWare%20BreakPoints%20The%20Definitive%20Guide.doc




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

Создано: 17 декабря 2007 23:39
· Личное сообщение · #3

по-моему он спрашивает прo VirtualProtect с помощью этой функции, мы меняем аттрибуты
страницы памяти и ловим последующее исключение

-----
[nice coder and reverser]




Ранг: 500.5 (!), 8thx
Активность: 0.230
Статус: Участник

Создано: 17 декабря 2007 23:40 · Поправил: Smon
· Личное сообщение · #4

В данном случае копай в сторону VirtualProtect.
Если инфу не найдёшь скажи коротко изложу как это работает.

ЗЫ: Hellspawn опередил

-----
"Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels




Ранг: 210.5 (наставник), 2thx
Активность: 0.140
Статус: Участник

Создано: 17 декабря 2007 23:45 · Поправил: arnix
· Личное сообщение · #5

rever1 пишет:
Ya tut dumal kak eto ollydbg + drugie debuggeri stavia memory breakpoints na memaccess/memread/memwrite/memexecute.

Hellspawn
Smon

Если я правильно помню (могу ошибиться), с VirtualProtect брейк на memexecute не выйдет




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

Создано: 17 декабря 2007 23:56 · Поправил: Hellspawn
· Личное сообщение · #6

если извратиться то выйдет (это если я правильно помню), при исключении (PAGE_GUARD) смотрим адрес исключения и если попадаем в диапозон memAdr <= breakAdr <= (memAdr + memSize) то у нас memexecute,
хотя могут быть косяки)))

-----
[nice coder and reverser]




Ранг: 4.0 (гость)
Активность: 0=0
Статус: Участник

Создано: 18 декабря 2007 00:12
· Личное сообщение · #7

Bolshoe spasibo ludi, budu chitat pro eto vse delo :D
Respect vsem xto otvetil tak bistro.



Ранг: 500.5 (!), 8thx
Активность: 0.230
Статус: Участник

Создано: 18 декабря 2007 00:12
· Личное сообщение · #8

Hellspawn
+1
На сем алго кой какая олькина антиотладка построена - на выделенную память накладывается PAGE_GUARD, туда вписывается ret, затем устанавливается обработчик исключения и производится call на этот ret. Если под олькой - то брякаемся на этом ret, т.к. олька думает что это был мем бряк, соответственно сама обрабатывает возникшее исключение - на этом и попадается

-----
"Пусть видят, что мы не шутим. Стволы для понта, ножи для дела" Lock, Stock & Two Smoking Barrels





Ранг: 1131.7 (!!!!), 447thx
Активность: 0.670.2
Статус: Участник

Создано: 18 декабря 2007 04:50
· Личное сообщение · #9

Smon пишет:
На сем алго кой какая олькина антиотладка построена


в eXPressor используется



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

Создано: 18 декабря 2007 05:22
· Личное сообщение · #10

Smon пишет:
туда вписывается ret, затем устанавливается обработчик исключения и производится call на этот ret. Если под олькой - то брякаемся на этом ret, т.к. олька думает что это был мем бряк, соответственно сама обрабатывает возникшее исключение - на этом и попадается

NTktnl Software


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


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