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

 eXeL@B —› Вопросы новичков —› Как узнать от куда вызвалась MessageBox
Посл.ответ Сообщение

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

Создано: 13 февраля 2006 22:23
· Личное сообщение · #1

Исследовал программу, нашел в ней код который выводит сообщение о том что дэмо период кончился, НО от куда вызывается этот MessageBox я так и не нашел трэйсил ооочень долго прыгал из процедуры в процедуру а толку нет, мож кто подскажет как узнать от куда был вызов? желательно в OllyDbg т.к SoftIce'а у меня нету, заранее всем спасибо за участие!!!!



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

Создано: 13 февраля 2006 22:38
· Личное сообщение · #2

Если это конкретно MessageBox(а не просто окно)
То ставь бряк на MessageBoxA внутри ntdll.dll и смотри что у тебя лежит на самом верху стека. Это указатель на команду следующую после вызова MessageBoxA. А справа от этого значения коментарий OllyDlg - мол вызов произошёл с такого адреса



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

Создано: 13 февраля 2006 22:45
· Личное сообщение · #3

Выглядит это примерно так:


7e10_1.rar.zip



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

Создано: 13 февраля 2006 22:57
· Личное сообщение · #4

Спасибо! попробую...



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

Создано: 14 февраля 2006 13:28
· Личное сообщение · #5

Klajnor пишет:
То ставь бряк на MessageBoxA внутри ntdll.dll


Функция MessageBoxA находится в библиотеке USER32.DLL



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

Создано: 14 февраля 2006 14:18
· Личное сообщение · #6

LOL =)
Чё-то меня переглючило =)
Но суть от этого не меняется - поставить бряк не на вызов функции, а именно на функцию в той библиотеке, где она находится



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

Создано: 18 февраля 2006 11:33
· Личное сообщение · #7

Бряки рулят!Вот только это может быть не messagebox , а какои-нибудь dialogboxparama.




Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 18 февраля 2006 12:06
· Личное сообщение · #8

Можно для начала залогить вызовы АПИ любым из АПИшпионов (APIspy, kerberos) и потом уже ставить бряки.




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

Создано: 19 февраля 2006 18:19 · Поправил: Hellspawn
· Личное сообщение · #9

Ara пишет:
начала залогить вызовы АПИ любым из АПИшпионов (APIspy, kerberos) и потом уже ставить бряки.


а я когда вижу мессагебох.. жму паузу в олли... а потом не много трейса и усё =)

-----
[nice coder and reverser]





Ранг: 1288.1 (!!!!), 273thx
Активность: 1.290
Статус: Участник

Создано: 19 февраля 2006 18:22
· Личное сообщение · #10

Hellspawn пишет:
жму паузу в асе...

Всмысле в ICQ? =))




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

Создано: 19 февраля 2006 18:23 · Поправил: Hellspawn
· Личное сообщение · #11

Ara пишет:
Всмысле в ICQ? =))

ой... просто мне написали в момент поста (ася родимая) +) я нитуда и вписал...
во лол +)))

-----
[nice coder and reverser]




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

Создано: 19 февраля 2006 21:20
· Личное сообщение · #12

На чем прога написана? У тебя выводится сообщение. Значит ты его в Дасме должен видеть. А значит видишь откуда идет прыжок. Тот call который будет перед переходом отвечает за время работы проги. Там и правь. Может даже будет достаточно переход NOPми забить. Вот если ты его в Дасме не видишь (как правило это бывает в Дельпийских прогах, когда сообщение забивается в RCData а не в string) огда сложнее. Если сильно геморная защита, так я бы наверно постарался бы ее обдурить - статейка есть на краклабе, как на свободное место в проге несколько строчек написать, чтобы в реестре при каждом запуске проги обнулялось значение времени установки. Тогда получается вечный демо период. Стоит попробовать


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


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