Сейчас на форуме: -Sanchez- (+6 невидимых) |
eXeL@B —› Основной форум —› Использование IDA Pro |
<< 1 ... 36 . 37 . 38 . 39 . 40 . 41 . 42 . 43 . 44 . 45 . 46 ... 50 . 51 . >> |
Посл.ответ | Сообщение |
|
Создано: 08 августа 2008 18:53 · Личное сообщение · #1 Здесь предлагаю обмениваться опытом использования, настройки этой тулзы. Сегодня в Options->Color настроил основное окно дизассемблера все в старом классическом стиле Borland ща стало или в стиле Far(для справки первая версия была написана на Borland C++), но когда подносишь курсор на jne\je то в хинте появляется фон бежевый. Вот никак не могу найти место где это настраивается?! Может кто шарит ? ) ----- My love is very cool girl. |
|
Создано: 25 января 2016 05:20 · Личное сообщение · #2 awlost пишет: при подтягивании .pdb шаблоные классы распознаются А "чужой" .pdb (не от этого .exe/.dll) можно подгрузить? Можно как-то подшаманить, чтобы IMAGEHLP.DLL думала, что он "свой"? |
|
Создано: 25 января 2016 08:27 · Поправил: awlost · Личное сообщение · #3 Apokrif пишет: А "чужой" .pdb (не от этого .exe/.dll) можно подгрузить? Необходима возможность "вручную" задавать шаблонные типы. А вот так как из pdb типы подгружаются, отображаются и более того - хексрейсом распознаются корректно, возникает подозрение, что ограничение стоит где-то сверху в иерархии вызовов - ближе к пользователю например в SetType ( set_tinfo2 ) И тут только одно на ум приходит - писать свой плагин (SHIFT-Y) являющийся альтернативой Y Который оперирует на низком уровне с tinfo_t |
|
Создано: 26 января 2016 04:50 · Личное сообщение · #4 |
|
Создано: 26 января 2016 11:05 · Личное сообщение · #5 |
|
Создано: 27 января 2016 15:14 · Поправил: [wl] · Личное сообщение · #6 не знаю, писали ли или нет: Handles all the commonly used file formats (ELF, PE, COFF). Currently supports the Intel x86, ARM, MIPS, PIC32, and PowerPC architectures. Can decompile to two output high-level languages: C and a Python-like language. Compiler and packer detection. Extraction and utilization of debugging information (DWARF, PDB). Signature-based removal of statically linked library code. Reconstruction of functions, high-level constructs, types, etc. Generation of call graphs, control-flow graphs, and various statistics. Декомпилирует в онлайне, код генерит так себе, но по крайнем мере есть mips (попробовал для PSP, лучше, чем ничего). Я говорю именно об IDA Plugin, через сайт ни один файл толком не распарсил |
|
Создано: 27 января 2016 16:31 · Личное сообщение · #7 |
|
Создано: 28 января 2016 06:10 · Личное сообщение · #8 |
|
Создано: 28 января 2016 08:26 · Поправил: [wl] · Личное сообщение · #9 |
|
Создано: 28 января 2016 12:18 · Личное сообщение · #10 |
|
Создано: 28 января 2016 12:25 · Личное сообщение · #11 |
|
Создано: 29 января 2016 23:06 · Личное сообщение · #12 |
|
Создано: 30 января 2016 01:17 · Личное сообщение · #13 открываете спецификацию по процессору и смотрите где там начальный адрес инициализации,есть ли вектора прерываний итд итп когда будете знать с какой точки начинает работать процессор и где при этом находиться прошивка в ту точку и ставите иду для начального анализа, остальные функции уже в процессе разбора находятся |
|
Создано: 31 января 2016 00:23 · Поправил: =TS= · Личное сообщение · #14 |
|
Создано: 31 января 2016 11:13 · Поправил: mazaxak · Личное сообщение · #15 |
|
Создано: 31 января 2016 13:11 · Личное сообщение · #16 конечно есть, куча софта в гугле и постоянно обсуждается про декомпиляцию разных процессоров в этой теме Добавлено спустя 2 минуты =TS= не думаю что лучший способ - сворачивать ast дерево С псевдокода лушче или матчить асм код и сворачивать его в какие то импорт левые функци называя их инлановыми либо посмотреть что там пытался выворачивать в аст HexRaysCodeXplorer |
|
Создано: 31 января 2016 14:34 · Личное сообщение · #17 |
|
Создано: 01 февраля 2016 10:50 · Личное сообщение · #18 |
|
Создано: 01 февраля 2016 10:55 · Личное сообщение · #19 |
|
Создано: 01 февраля 2016 11:41 · Личное сообщение · #20 |
|
Создано: 06 февраля 2016 16:54 · Поправил: awlost · Личное сообщение · #21 В SDK есть такой нотификатрор Code:
он вызывается, в ::ea_t, ожидаемо, адрес вызова функции. в fti и rargs соотв. информация об аргументах самой ф-ии (из tinfo_t). А где / как / каким образом - линейные адреса, где аргументы помещаются в стек/заполняют регистры перед вызовом? Толкните пожалуйста в правильном направлении --- Сам спрашиваю, сам отвечаю. искомое отдается нотификаторами use_stkarg_type3 / use_regarg_type3 разобрался |
|
Создано: 06 февраля 2016 19:56 · Личное сообщение · #22 |
|
Создано: 06 февраля 2016 21:01 · Личное сообщение · #23 |
|
Создано: 07 февраля 2016 00:01 · Личное сообщение · #24 |
|
Создано: 07 февраля 2016 00:26 · Личное сообщение · #25 ida.wll и ida64.wll. Fix под это дело был. ----- Don_t hate the cracker - hate the code. | Сообщение посчитали полезным: plutos |
|
Создано: 08 февраля 2016 01:01 · Поправил: plutos · Личное сообщение · #26 |
|
Создано: 11 февраля 2016 12:35 · Личное сообщение · #27 |
|
Создано: 01 марта 2016 19:21 · Личное сообщение · #28 |
|
Создано: 01 марта 2016 19:38 · Поправил: cryptX · Личное сообщение · #29 |
|
Создано: 18 марта 2016 16:55 · Поправил: vit9696 · Личное сообщение · #30 Доброго времени суток, Думаю, тут есть пользователи HexRaysCodeXplorer, которые с ним дружат. Не подскажите, как ему "подсказать", где лежит таблица виртуальных методов (относительно специфического плана)? Есть получение адреса/вызов функции по таблице виртуальных методов, в Hex-Rays имею, например: *(_QWORD *)(*(_QWORD *)v5 + 2688LL). В данным случае класс представляет собой: struct SomeClass { struct SomeClass *self; // self class struct MetaClass *base; // base class void (*func1)(); // конструктор, деструктор, функции… void (*func2)(); ... } и IDA прекрасно обнаруживает SomeClass, обзывая его `vtable for'SomeClass и ресолвя все имена функций-полей. Я знаю, что v5 — это указатель на на мой класс, и мне хочется привести v5 + 2688LL к нормальному имени. Просто кастнуть я не могу, потому что типа IDA автоматически не создаёт, только именует секцию. Поэтому я руками выделяю нужную область в `vtable for'SomeClass, создаю структуру из выделения, а затем указываю тип для v5, получив в результате нужный результат: v5->self->funcName (ну, почти, деманглинга метода нет, но это уже не так страшно) Таких классов может быть много, потому столь ручной процесс несколько долог, и я надеялся использовать HexRaysCodeXplorer. Однако максимум, что он мне выдаёт — это понимание того, что есть некоторый (условный) self, от которого надо получить смещение. Я не вижу возможности заставить его сконструировать self на основе нужного мне адреса :/ Спасибо |
|
Создано: 05 апреля 2016 22:25 · Личное сообщение · #31 Соратники, Часто нужно сделать "косвенный" goto в окне hex dump, например на [bp-8] Приходится делать так: Перейти на bp-8 (g bp-8) Переключить data format 4 byte int (4) Скопировать адрес (ctrl-c) Перейти на него (g ctrl-v) Переключить data format 1 byte int (1) А можно как-то сделать всё тоже самое проще, с меньшим количеством телодвижений? Т.е. переходить по адресам типа [bp-8] или [edi].pointerToRawData |
<< 1 ... 36 . 37 . 38 . 39 . 40 . 41 . 42 . 43 . 44 . 45 . 46 ... 50 . 51 . >> |
eXeL@B —› Основной форум —› Использование IDA Pro |
Эта тема закрыта. Ответы больше не принимаются. |