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

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

 eXeL@B —› Основной форум —› Использование IDA Pro (part 2)
<< 1 ... 9 . 10 . 11 . 12 . 13 . 14 . 15 . 16 . 17 . 18 . 19 . >>
Посл.ответ Сообщение


Ранг: 2011.1 (!!!!)
Статус: Модератор
retired

Создано: 27 марта 2017 11:54 New!
Цитата · Личное сообщение · #1

Обмен опытом использования и настройки интерактивного дизассемблера и отладчика IDA Pro.
Прошлый топик Использование IDA Pro

| Сообщение посчитали полезным: oxfemale, gent0o0


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

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

Программа написана на qt, debug версия, возможно ли восстановить исходники и по ним разбирать или только псевдокод иды ?


Ранг: 603.8 (!)
Статус: Модератор
Research & Development

Создано: 10 декабря 2019 22:46 New!
Цитата · Личное сообщение · #3

mazaxaker пишет:
debug версия

PDB в наличии?

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

Создано: 10 декабря 2019 23:18 New!
Цитата · Личное сообщение · #4

Jupiter, нет, просто попалась дебаг версия)


Ранг: 603.8 (!)
Статус: Модератор
Research & Development

Создано: 12 декабря 2019 03:37 New!
Цитата · Личное сообщение · #5

mazaxaker пишет:
нет, просто попалась дебаг версия


Тогда зависит от твоих навыков и усидчивости.
Посчитай, за сколько дней/недель плотной работы ты можешь в общих чертах восстановить код небольшой программы уровня блокнота (notepad). Пусть это будет 1 реверс-сила в блокнотах (1 notepad reverse-force). После чего прикинь сложность твоей программы и оцени общий объём работы. Потом умножь на 2 или на 3. Если объём оценённой работы тебя не ужаснул, смело берись за работу


Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 16 декабря 2019 02:16 New!
Цитата · Личное сообщение · #6

Suite of IDA --> scripts <--for SEGA Genesis ROM hacking


Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 17 декабря 2019 03:44 · Поправил: plutos New!
Цитата · Личное сообщение · #7

Кто-нибудь может популярно, простым и всем доступным языком обьяснить роль функций notify и особенно invoke_callbacks в ида processor module?
Т.е. вопрос не в том, что происходит ВНУТРИ этих функций, а что происходит СНАРУЖИ, т.е. кто их вызывает и т.д.
Информации очень мало, только SDK header files, да вот еще кусочек:

Code:
  1. // A well behaving processor module should call invoke_callbacks()
  2. // in his notify() function. If invoke_callbacks function returns 0, 
  3. // then the processor module should process the notification itself
  4. // Otherwise the code should be returned to the caller:
  5.  

Code:
  1. static int idaapi notify(processor_t::ida_notify msgid, ...) 
  2. {
  3.     va_list va;
  4.     va_start(va, msgid); //setup args list
  5.     int result = invoke_callbacks(HT_IDP, msgid, va);
  6.     if (result == 0) {
  7.         result = 1; //default success
  8.         switch (msgid) {
  9.      ..................................      
  10.     }
  11.     va_end(va);
  12.     return result;
  13. }

Оно вроде и понятно, но может кто-нибудь что-нибудь добавит "по-простому" без особенной формальности?


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

Создано: 17 декабря 2019 08:47 · Поправил: f13nd New!
Цитата · Личное сообщение · #8

notify() это коллбек самого плугина, указатель на него лежит в processor_t (в экспорте под именем LPH). Если поставить в него бряк, окажется, что вызывает его ida.dll. Тут наверное нечему удивляться.

invoke_callbacks() вызывает коллбеки, зарегистрированные (нет) register_post_event_visitor() и hook_to_notification_point() (а эти регистрирует куча плугинов включая лучи). Результат, который invoke_callbacks() возвращает, это результат исполнения последнего коллбека, либо 0, если их нет. То есть это процессорному модулю зачем-то нужно решать, информировать ли о событиях HT_IDP плугины. И если последний из них (не все, а последний) это событие не обработал, процессорный модуль должен как-нибудь зачем-то сам это сделать.
Code:
  1. hook_to_notification_point(HT_IDP, my_event_handler, your_data);
  2.  
  3. int idaapi my_event_handler(void *your_data,
  4.                             int notification_code,
  5.                             va_list va)
  6. {
  7.   if ( notification_code == processor_t::make_code )
  8.   {
  9. // take care of instruction creation...
  10.   }
  11.   return 0; // pass on the event further
  12. }


ЗЫ: кстати не так уж и много дефолтных процессорных модулей вообще используют invoke_callbacks(). Видимо это настолько необязательно, что даже фирменная продукция себя не очень этим нагружает.

| Сообщение посчитали полезным: plutos



Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 17 декабря 2019 09:28 New!
Цитата · Личное сообщение · #9

f13nd пишет:
Если поставить в него бряк


Вот, кстати, еще вопрос, который я уже когда-то задавал, но ответа толком не получил:
Как лучше всего / легче всего debug ida processor module?
То ли в составе самой ИДЫ, когда он уже загружен, то ли как-нибудь отдельно.
У меня тут опыта совсем нет, так что если можно, то опиши пошагово весь setup.


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

Создано: 17 декабря 2019 09:36 New!
Цитата · Личное сообщение · #10

plutos пишет:
У меня тут опыта совсем нет

У меня тоже опыта написания отладочных модулей нет, есть только задумки, но они уже с идой не связаны.


Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 18 декабря 2019 01:44 New!
Цитата · Личное сообщение · #11

Вопрос про ida processor module debugging остается открытым.
Я понимаю, вопрос специфический, надежды немного, но все же, может чего покажется...


Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 20 декабря 2019 02:50 New!
Цитата · Личное сообщение · #12

К вопросу создания IDA MODULES. Может кому-нибудь пригодится:

IDA 7.x VisualStudio 2017 --> Sample Project <-- for IDA and HexRays plugins (works with Community Edition)

This is a sample Visual Studio 2017 (Community Edition) project for IDA 7.x plugins on Windows.

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

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

Дебажу бинарник arm, запуская в qemu vexpress armv7 под gdbserver, на 7.0 при пошаговой отладке часто перескакивает до следующего бряка, как будто f9 нажал, как это лечится ? Еще часто при f8 появляется окошко runing, тоже не понятно как лечить.


Ранг: 322.8 (мудрец)
Статус: Участник

Создано: 20 декабря 2019 16:28 · Поправил: DenCoder New!
Цитата · Личное сообщение · #14

mazaxaker пишет:
как это лечится ?


У IDA вечно проблемы были с дебагом. В 7.0 хоть немного x64 отладку поправили. Попробуй связку gdb + gdbserver. Лично я unicorn использую. Много чего не хватает, периферийных устройств нет, непонятно как обрабатывать svc, но управлением кодом на текущий момент чего-то добился. Мысль сейчас приделать интерфейс отладчика для удобства.

Ранг: 33.8 (посетитель)
Статус: Участник

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

ida 7.4 sdk + hexrays_sdk не пробегали?
Буду премного благодарен

| Сообщение посчитали полезным: mak



Ранг: 1031.1 (!!!!)
Статус: Участник

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

реверса хексрея ни на паблике ни в привате не видно за все эти годы
так какой смысл ?


Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 23 декабря 2019 03:38 · Поправил: plutos New!
Цитата · Личное сообщение · #17

have you ever wished to have interactive buttons in your IDA Pro comments?
Well, now you CAN!

Не знаю, насколько это полезная штука, но вот --> clicker.py <--, который позволяет это делать.


Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 25 декабря 2019 00:53 · Поправил: plutos New!
Цитата · Личное сообщение · #18

fn_fuzzy.py - IDAPython --> script <-- for fast multiple binary diffing triage

how to use:
Code:
  1. fn_fuzzy.pyIDAPython script to export/compare fuzzy hashes of the samplecli_export.pypython 
  2. wrapper script to export fuzzy hashes of multiple samples
  3. The typical usage is to run cli_export.py to make a database for large idbs 
  4. then compare on IDA by executing fn_fuzzy.py.

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

Создано: 28 декабря 2019 03:07 New!
Цитата · Личное сообщение · #19

Ида не ловит хард-бряки при отладке через gdbserver на qemu платформе. Полагаю надо ядро как-то собирать с их поддержкой. Может кто подсказать какие галки в menuconfig там надо поставить для этого ?


Ранг: 322.8 (мудрец)
Статус: Участник

Создано: 29 декабря 2019 06:41 New!
Цитата · Личное сообщение · #20

Нет для иды плагинов для отладки прошивок для ARM?


Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 29 декабря 2019 06:53 · Поправил: plutos New!
Цитата · Личное сообщение · #21

DenCoder пишет:
Нет для иды плагинов для отладки прошивок для ARM?


IDA Pro ARM debugger plugin

не --> оно <--?

| Сообщение посчитали полезным: DenCoder



Ранг: 322.8 (мудрец)
Статус: Участник

Создано: 29 декабря 2019 07:22 New!
Цитата · Личное сообщение · #22

plutos пишет:
DA Pro ARM debugger plugin

не --> оно <--?

Похоже, но Pre-Alpha

Можно попробовать и подправить, если что. Thanks!


Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 30 декабря 2019 01:21 · Поправил: plutos New!
Цитата · Личное сообщение · #23

DenCoder пишет:
но Pre-Alpha


Да, штука старовата, Last Update: 2013-11-04

искал update, но пока не нашел. если найду, кину в личку

UPDATE:

может это как-то пригодится:

BinCAT plugin is: a static Binary Code Analysis Toolkit, designed to help reverse engineers, directly from IDA.
The interpreter parses the input file and has the logic to understand the semantics of ARM and x86 instructions.
It converts the instructions into an intermediate language for analysis.

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

Создано: 30 декабря 2019 22:55 New!
Цитата · Личное сообщение · #24

DenCoder пишет:
Нет для иды плагинов для отладки прошивок для ARM?


QEMU?

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

Создано: 31 декабря 2019 01:39 New!
Цитата · Личное сообщение · #25

Integrate Ghidra's decompiler as an Ida plugin

| Сообщение посчитали полезным: Hugo Chaves



Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 1 января 2020 01:12 · Поправил: plutos New!
Цитата · Личное сообщение · #26

Dart Raiden пишет:
Integrate Ghidra's decompiler as an Ida plugin


Note from cseagle (the author):
"It is the Bastard love child of Ghidra's decompiler with Ida Pro"

Case of Cyber incest?


Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 3 января 2020 06:01 New!
Цитата · Личное сообщение · #27

--> BNIDA <--Description:
bnida is a suite of plugins that provide the ability to transfer analysis data between IDA Pro and Binary Ninja databases.

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

Создано: 3 января 2020 17:35 · Поправил: mazaxaker New!
Цитата · Личное сообщение · #28

Может кто подскажет, отлаживаю в qemu vexpress платформе arm бинарник, в ида не срабатывают аппаратные бряки. Полагаю надо при сборке ядра какие-то галки в menuconfig поставить. Собирал так https://balau82.wordpress.com/2010/08/17/debugging-arm-programs-inside-qemu/ там советуют EABI галку ставить. Может кто знает для бряков аппаратных какие галки поставить ?

Ранг: 29.9 (посетитель)
Статус: Участник

Создано: 5 января 2020 17:08 New!
Цитата · Личное сообщение · #29

Ребятушки, а ida 7.2 под вайном у всех работает? А то обновился, похерив старую 7.0, а новая под виндой работает как часы, а в линуксе говорит, что ключ "expired or corrupted". Кто-нибудь сталкивался с таким?


Ранг: 667.3 (! !)
Статус: Участник
CyberMonk

Создано: 7 января 2020 15:36 New!
Цитата · Личное сообщение · #30

IDA Evaluation Version 7.4.191125 for Windows

The evaluation version has the following limitations

it supports only the 80x86 family : IDA supports a large number of other processors.
it will load only files of PE/ELF/Macho-O formats. The full version of IDA will accept virtually any file, from Atmel ROMs to iPhone executables. See our disassembly gallery for information about the additional processors, operating systems and file formats we support.
the only compiler signatures included are the ones that can be used to produce Windows 32 PE files; the only type information included is for Visual C++ 6 and Borland C++ Builder.
The MS Windows version contains a demo version of the Bochs debugger. Please note that the full version support Bochs debugger on all platforms.
Check the debugger tutorial
you will not be able to save your work, it will time out after some use, it will not disassemble itself.
IDAPython, the set of powerful Python bindings for IDA is not available.
The demo version of IDA comes with the x64 decompiler.

--> Link <--
--> Link <--
--> Link <--
--> Link <--

| Сообщение посчитали полезным: plutos



Ранг: 582.3 (!)
Статус: Участник
_Вечный_Студент_

Создано: 8 января 2020 08:03 New!
Цитата · Личное сообщение · #31

понимаю, вопрос тупой, но прежде чем качать, хочу уточнить:
А custom processor modules demo version будет поддерживать? Если к ним свой custom loaders?
<< 1 ... 9 . 10 . 11 . 12 . 13 . 14 . 15 . 16 . 17 . 18 . 19 . >>
 eXeL@B —› Основной форум —› Использование IDA Pro (part 2)

Видеокурс ВЗЛОМ