| eXeL@B —› Софт, инструменты —› Как использовать IDA для поиска причины исключения(креша) в программе |
| Посл.ответ | Сообщение |
|
|
Создано: 27 декабря 2012 13:24 · Личное сообщение · #1 Привет Может кто подсказать нубу, извиняюсь за этот вопрос но все таки помогите...Я некогда не занимался ничем подобным, но сейчас мне как одному из команды по разработке программы необходимо устранить креши, из обстоятельств которых известно только что то вроде -------------- Unhandled Exception Report Start -------------- Exception code: 0xC0000005 (Access Violation) Exception address: 0x73E72EB4 Exception module: SOME.dll (+0x00002EB4) Exception registers: GS=0x0000002B FS=0x00000053 ES=0x0000002B DS=0x0000002B EDI=0x00E29C74 ESI=0x00E29900 EBX=0x0011811C EDX=0x083C5BB0 ECX=0x00000000 EAX=0x00000034 EBP=0x02D9E704 EIP=0x73E72EB4 CS=0x00000023 EFLAGS=0x00010203 ESP=0x02D9E6FC SS=0x0000002B --------------- Unhandled Exception Report End --------------- Собственно я таким не занимался ибо задачи другие в проекте, но сейчас это необходимо, пусть даже я знаю что такое access violation, мне нужно установить причину. исходный код SOME.dll есть, однако SOME.dll используется другой EXE, исходного кода которой у нас нету. Я привык работать с файлами DMP в visual studio. Помогите пожалуйста, как хотя бы в IDA найти место в котором прозоизошла ошибка, хотя, asm код мне не поможет её исправить.. ![]() |
|
|
Создано: 27 декабря 2012 13:37 · Личное сообщение · #2 agehack Да найти просто, у вас база SOME.dll в данном случае равна 0x73E70000, к базе прибавить смещение +0x00002EB4, т.е. в данном месте из контекста выполнения видно, что исключение произошло по адресу 0x73E72EB4. Грузить бинарь в иду, потом Edit -> Segments -> Rebase program и пишете туда новую базу. Потом давим G и пишем адрес из EIP. Всё. ----- Stuck to the plan, always think that we would stand up, never ran. ![]() |
|
|
Создано: 27 декабря 2012 13:42 · Личное сообщение · #3 |
|
|
Создано: 03 января 2013 18:52 · Личное сообщение · #4 |
| eXeL@B —› Софт, инструменты —› Как использовать IDA для поиска причины исключения(креша) в программе |

Может кто подсказать нубу, извиняюсь за этот вопрос но все таки помогите...



Для печати