Сейчас на форуме: asfa, Rio (+6 невидимых)

 eXeL@B —› Вопросы новичков —› Трассировка в OllyDBG, исключения...
Посл.ответ Сообщение

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

Создано: 12 октября 2013 21:23
· Личное сообщение · #1

Здравствуйте, работаю в OllyDBG, при трассировке встречается такое:

Code:
  1. $+2314EA > .  C745 FC 00000>MOV DWORD PTR SS:[EBP-4],0   //Значение [EBP-4] = FFFFFFFE
  2. $+2314F1 > .  CC            INT3


После этого трассировка заканчивается, хотя написан статус tracing, и файл лога соотв-нно не растет больше.
Сама же программа под отладчиком запускатся нормально.
Трассирую как trace into и over system dll

У меня такие вопросы:

1. Правильно я понимаю, что исключение было запрограммировано и, при сборке добавилось INT3 ?
2. Почему OllyDBG не продолжает трассировать, когда управление снова передается в этот же модуль?
Есть способы сделать, чтобы трассировалось и после исключений?

p.s.
Также бывает, что трассировка прекратилась так как тред завершился, но программа продолжает выполняться в новом модуле. Можно как-то заставить olly продолжить трассировать?



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

Создано: 12 октября 2013 22:48
· Личное сообщение · #2

Покажите ваши настройки вкладки Exceptions в Ольке.




Ранг: 324.3 (мудрец), 221thx
Активность: 0.480.37
Статус: Участник

Создано: 13 октября 2013 00:17 · Поправил: DenCoder
· Личное сообщение · #3

Robix пишет:
1. Правильно я понимаю, что исключение было запрограммировано и, при сборке добавилось INT3 ?

Бывают исключения. Например, когда программа накрыта пакером, а софт бряк поставлен до анпака в коде, который копируется в другое место. В этом случае скопируется анпакером не реальная инструкция, а именно int3

Но в данном случае 2 строки кода напоминают
Code:
  1. __try
  2. {
  3.   __asm int 3;
  4. }
  5. __except(/*exception pointers*/)
  6. {
  7. //...
  8. }


-----
IZ.RU





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

Создано: 13 октября 2013 01:27
· Личное сообщение · #4

Пиздец это, а не отладчик. Пригоден только для отладки своих кодов. Имхо.



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

Создано: 13 октября 2013 04:51
· Личное сообщение · #5

А какой отладчик посоветуешь? Я в syser'е выбрал этот exe-шник, syser вообще его не проигнорировал.




Ранг: 324.3 (мудрец), 221thx
Активность: 0.480.37
Статус: Участник

Создано: 13 октября 2013 04:54
· Личное сообщение · #6

Да нормальный это отладчик, убери "step over system dll", проверь в excetions, что стоит галка на int 3, и увидишь, как трасса покажет код обработчика исключения.

-----
IZ.RU




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

Создано: 13 октября 2013 05:21
· Личное сообщение · #7

Спасибо, я тоже об этом подумал.
В итоге процесс завершился к сожалению. Вот получилось такое(между точками множество инструкций):
Code:
  1. 3BCD24F1 Main     INT3
  2. INT3 command at some_modyle.3BCD24F1
  3. 3BCD24F2 Main     JMP SHORT 3BCD250D    ECX=0006EFA4
  4. 7C90E460 Main     MOV EBX,DWORD PTR SS:[ESP]     EBX=0006EF84
  5. ...............
  6. 7C92ACD1 Main     CALL 7C90D040
  7. ZwContinue        Main   MOV EAX,20 EAX=00000020
  8. 7C90D045 Main     MOV EDX,7FFE0300      EDX=7FFE0300
  9. 7C90D04A Main     CALL DWORD PTR DS:[EDX]
  10. KiFastSystemCall  Main      MOV EDX,ESP   EDX=0006EAB4
  11. 7C90E4F2 Main     SYSENTER     EAX=00000000, ECX=C42125B4, EDX=00000001, EBX=00000000, EBP=0006F238, ESI=0006F480, EDI=2547FF24
  12.     Integer overflow
  13. 3BCD2AC8 Main     MOV DWORD PTR SS:[EBP-4],EAX   ECX=0006EF38
  14. 7C90E460 Main     MOV EBX,DWORD PTR SS:[ESP]     EBX=0006EF24
  15. .................
  16. 7C90E473 Main     CALL 7C90D040
  17. ZwContinue        Main   MOV EAX,20 EAX=00000020
  18. 7C90D045 Main     MOV EDX,7FFE0300      EDX=7FFE0300
  19. 7C90D04A Main     CALL DWORD PTR DS:[EDX]
  20. KiFastSystemCall  Main      MOV EDX,ESP   EDX=0006EF14
  21. 7C90E4F2 Main     SYSENTER     EAX=00000000, ECX=C42125B4, EDX=00000001, EBX=00000000
  22. 3BCD2ACB Main     JMP SHORT 3BCD2B17
  23. .................
  24. 3BCD0465 Main     PUSH 3BDB0D90         FileName = "mscoree.dll"
  25. 3BCD046A Main     CALL DWORD PTR DS:[3BD7D32C]
  26. LoadLibraryA      Main MOV EDI,EDI
  27. 7C801D7D Main     PUSH EBP
  28. .................
  29. 3BCD0495 Main     PUSH EDX     ExitCode = 6F23C
  30. 3BCD0496 Main     CALL DWORD PTR DS:[3BD7D190]
  31. ExitProcess       Main  MOV EDI,EDI
  32. 7C81CAFC Main     PUSH EBP


Видимо модуль как-то понимает, что идет трассировка, либо что-то еще происходит. Плагины антиотладки использую.




Ранг: 324.3 (мудрец), 221thx
Активность: 0.480.37
Статус: Участник

Создано: 13 октября 2013 05:57
· Личное сообщение · #8

Подгружается mscoree.dll, а это .NET

-----
IZ.RU




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

Создано: 13 октября 2013 15:02 · Поправил: Robix
· Личное сообщение · #9

В программе есть ф-ция DialogBoxParamA, до которой я хочу дотрассировать с определенного места. и если я ставлю на нее bp, и делаю run, то дохожу.
Если же трассирую, то не дохожу, а попадаю на завершения процесса. Отсюда вывод, что есть защита. Что можете посоветовать, чтобы остаться незамеченным во время трассировки, какие плагины, настройки может быть?




Ранг: 324.3 (мудрец), 221thx
Активность: 0.480.37
Статус: Участник

Создано: 18 октября 2013 13:14 · Поправил: DenCoder
· Личное сообщение · #10

Phantom plugin?

Не гарантирую, что что-то даст, но можешь попробовать найти в иде инструкции pushfd, pushf. А вообще в любом отладчике по дефолту должен быть сброс флага TF в стеке, если предыдущая инструкция pushf(d), а почему-то нет.

-----
IZ.RU





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

Создано: 21 октября 2013 16:20
· Личное сообщение · #11

DenCoder

ололо

Code:
  1.          Call Zw*
  2.          inc edx
  3.          jz debug


Есть плаг, который это обойдёт ?



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

Создано: 21 октября 2013 16:24
· Личное сообщение · #12

Dr0p пишет: Есть плаг, который это обойдёт ?
debugger.pyd?




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

Создано: 21 октября 2013 16:31 · Поправил: Dr0p
· Личное сообщение · #13

F_a_u_s_t

Берём любую апи, которая нт стаб юзает, например CloseHandle(). Мы не вызываем её напрямую через импорт, а генерим вызывающий код в буфер, тогда при трассировке не будет обхода, так как код будет уже не в скипаемом модуле. Из юзермода это не обойти. Не удивительно что тут никто мой кряк не осилил(хотя один человек всё же одолел)



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

Создано: 21 октября 2013 16:36
· Личное сообщение · #14

Dr0p пишет: Не удивительно что тут никто мой кряк не осилил
Даже не смотрел, ибо не интересно, по поводу буфера, можно чекать память и там всплывет сигнатура, только затратно по времени, против python'a это бесполезно, единственное что нужно, это знать саму технологию детекта.




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

Создано: 21 октября 2013 16:41
· Личное сообщение · #15

F_a_u_s_t

Этот очень годный метод на x86, но не юзается только потому, что не совместим с wow. В противном случае это альтернатива VMBE, фактически совершенный антиэмуль(аверский).

Ну а память как чекать(вызов ?), если TF сбрасывается элементарно. NtContinue например. Конечно, можно сутками исполнять(pin), но врятле что годное получится, тайминг



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

Создано: 21 октября 2013 16:48
· Личное сообщение · #16

Dr0p пишет: можно сутками исполнять(pin), но врятле что годное получится, тайминг
Если долго мучиться, что нибудь получится.
Будет цель, будем чесать темечко, а пока это сферическая задача, собственно в ав конторах из за таких задач плагины пилят ибо под общее решение не подходит и решают частными способами.




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

Создано: 21 октября 2013 16:51 · Поправил: Dr0p
· Личное сообщение · #17

F_a_u_s_t

Они до сих пор с вмбе ничего не решили. Аверов уже давно нет, это всё фейк для тех, кто в них уверовал. У меня знакомый есть, магл, шекеля за линцензию флая отвалил. Он верит



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

Создано: 21 октября 2013 16:55 · Поправил: F_a_u_s_t
· Личное сообщение · #18

Dr0p пишет: Они до сих пор с вмбе ничего не решили.
Когда будет запилин трой для банкинга, тогда будут решать, а сейчас то им зачем суетиться, спасти мир и пиарицо не получится, как с тухнетом, и флеймом.
Лицензия флая, смешно.
Напомнил знакомого, тот на avz фапал, пока ему тупо не переписал базы и в лечение не добавил пинча, avz сам его в автозагрузку прописал.


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


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