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

 eXeL@B —› Программирование —› Отладка обработчиков исключений
Посл.ответ Сообщение


Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 30 марта 2010 22:24
· Личное сообщение · #1

Всех доброго времени суток. Вопрос такой - как отлаживать код исключений? Т.е. допустим, у нас в программе стоит инструкция int 3, когда она будет выполнена, то произойдёт исключение и процессор начнёт выполнять код, на который указывает шлюз из IDT. Так вот мне нужно именно этот код отлаживать (трассировать), но на живой машине и даже на Варе этого сделать не удаётся. Может, есть какие-то способы или какие-то другие эмуляторы, позволяющие это сделать?

-----
Stuck to the plan, always think that we would stand up, never ran.





Ранг: 105.6 (ветеран), 36thx
Активность: 0.10
Статус: Участник

Создано: 30 марта 2010 23:32
· Личное сообщение · #2

а ядерные отладчики не помагают(Syser, SIce...)?
Если нет, то через них можно попробовать посмотреть адрес, где обрабатывается оно и перейти туда
или это тоже не получается, просто в идеале должен быть дисассемблированный код обработчика
можно попробовать сдампить эту область и потом дисассемблить...
Кстати, в чём такая потребность?




Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 30 марта 2010 23:44
· Личное сообщение · #3

Dart Sergius пишет:
сдампить эту область и потом дисассемблить...
Да? а мусорный код как извлечь оттуда - из листинга? Надо именно трассу получить, или потрейсить в дебаггере. Адрес мне не нужен - нужен именно разбор кода, на который передаётся управление.

-----
Stuck to the plan, always think that we would stand up, never ran.




Ранг: 189.9 (ветеран), 334thx
Активность: 0.30
Статус: Участник

Создано: 30 марта 2010 23:54
· Личное сообщение · #4

может пригодится rsdn.ru/article/asm/driverholes.xml




Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 31 марта 2010 00:16
· Личное сообщение · #5

NikolayD
Меня интересуют не уязвимости в дровах, а сам код обработчика, где может, например, располагаться ВМ, и нужно основательно разобрать, что там и как. Но всё равно спасибо, хоть за внимание.

-----
Stuck to the plan, always think that we would stand up, never ran.




Ранг: 189.9 (ветеран), 334thx
Активность: 0.30
Статус: Участник

Создано: 31 марта 2010 00:59
· Личное сообщение · #6

ARCHANGEL пишет:
как отлаживать код исключений


Роббинс Джон «Отладка приложений для Microsoft .NET и Microsoft Windows»
В книге описаны тонкости отладки всех видов приложений .NET и Win32: от Web-сервисов XML до служб Windows. Каждая глава снабжена примерами, которые позволят увеличить продуктивность отладки управляемого и неуправляемого кода.
пишут что интересная книженция bestshare.ifolder.ru/182118 (40.13мб)




Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 31 марта 2010 02:25
· Личное сообщение · #7

NikolayD
Не, ну ты издеваешься!

-----
Stuck to the plan, always think that we would stand up, never ran.




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

Создано: 31 марта 2010 07:21
· Личное сообщение · #8

Когда то давно я делал так:
1. Убедился, что пограмма установила свой обработчик IDT и определил его адрес
2. ЕВFE в начале обработчика.
3. Даю обработчику сработать - ком. естественно подвисает.
4.Перехожу на имя другого пользователя. IDT конечно обновляется до системного.
5. Оттачусь к зацикленному обработчику и изучаю его.
Как то так делал, может чего и напутал. Но получалось я тебя уверяю.



Ранг: 255.8 (наставник), 19thx
Активность: 0.150.01
Статус: Участник
vx

Создано: 31 марта 2010 08:16
· Личное сообщение · #9

ARCHANGEL
У сисе есть bpint #, для #GP использовать bpx на вторую инструкцию ISR.




Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 31 марта 2010 11:41
· Личное сообщение · #10

Clerk
Да! Заработало, если ставить бряк на вторую инструкцию обработчика! Сисер сиё дело реально трассирует! Спасибо

-----
Stuck to the plan, always think that we would stand up, never ran.




Ранг: 189.9 (ветеран), 334thx
Активность: 0.30
Статус: Участник

Создано: 31 марта 2010 17:18
· Личное сообщение · #11

ARCHANGEL извини если обидел




Ранг: 681.5 (! !), 405thx
Активность: 0.420.21
Статус: Участник
ALIEN Hack Team

Создано: 31 марта 2010 17:35
· Личное сообщение · #12

NikolayD
Та ничё, проехали. Ну, вопрос решён, тему закрою. Всем, особенно Clerk'у, спасибо.

-----
Stuck to the plan, always think that we would stand up, never ran.



 eXeL@B —› Программирование —› Отладка обработчиков исключений
Эта тема закрыта. Ответы больше не принимаются.
   Для печати Для печати