eXeLab
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 2 июня!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

Русский / Russian English / Английский

Сейчас на форуме: (+3 невидимых)
 · Начало · Статистика · Регистрация · Поиск · ПРАВИЛА ФОРУМА · Язык · RSS · SVN ·

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

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

Создано: 12 октября 2013 21:23 New!
Цитата · Личное сообщение · #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 (постоянный)
Статус: Участник

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

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


Ранг: 295.3 (наставник)
Статус: Участник

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

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

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

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


Ранг: 70.5 (постоянный)
Статус: Участник

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

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

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

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

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


Ранг: 295.3 (наставник)
Статус: Участник

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

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

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

Создано: 13 октября 2013 05:21 New!
Цитата · Личное сообщение · #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


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


Ранг: 295.3 (наставник)
Статус: Участник

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

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

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

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

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


Ранг: 295.3 (наставник)
Статус: Участник

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

Phantom plugin?

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


Ранг: 70.5 (постоянный)
Статус: Участник

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

DenCoder

ололо

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


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


Статус: Пришелец

Создано: 21 октября 2013 16:24 New!
Цитата #12

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


Ранг: 70.5 (постоянный)
Статус: Участник

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

F_a_u_s_t

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


Статус: Пришелец

Создано: 21 октября 2013 16:36 New!
Цитата #14

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


Ранг: 70.5 (постоянный)
Статус: Участник

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

F_a_u_s_t

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

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


Статус: Пришелец

Создано: 21 октября 2013 16:48 New!
Цитата #16

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


Ранг: 70.5 (постоянный)
Статус: Участник

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

F_a_u_s_t

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


Статус: Пришелец

Создано: 21 октября 2013 16:55 · Поправил: F_a_u_s_t New!
Цитата #18

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

Оригинальный DVD-ROM: eXeL@B DVD !

Вы находитесь на форуме сайта EXELAB.RU
Проект ReactOS