У меня есть двоичный образ для встроенного процессора, где область памяти содержит несколько указателей на точки входа в двоичный файл. Это таблица векторов прерываний в двоичном формате, используемом ЦП. Как намекнуть IDA, что это за память, чтобы она использовала точки входа для своего анализа?
Сообщите IDA Pro, что область памяти содержит таблицу указателей
Ответы (1)
Я предполагаю, что у вас уже есть настройка IDB с использованием правильного процессора для загруженного двоичного образа.
Если файл изображения является необработанным файлом (т. е. без заголовка), вы можете определить нижний/высокий пределы подозрительности адреса на вкладке Разборка в Параметры->Общие.
С этим набором вы можете установить первый элемент в этом векторе как смещение, поместив текстовый курсор на первый байт и нажав «O» или «Ctrl + O». Вы также можете нажать «Ctrl + R» для «определенного пользователем» смещения (открывает диалоговое окно с несколькими вариантами). Все различные смещения можно просмотреть в меню Правка->Тип операнда->Смещение->...
С первым набором элементов и текстовым курсором на нем вы можете нажать клавишу «*» на цифровой клавиатуре, чтобы создать фактический массив (при условии, что вы знаете, сколько элементов находится в векторе). Это должно применить одну и ту же информацию о типе операнда ко всем элементам в массиве. Так как в этом случае операнд является смещением, IDA должна (автоматически) попытаться дизассемблировать байты, на которые ссылаются.
Примечание: если значение элемента выходит за пределы подозрительности, оно не будет преобразовано в смещение.
Если это необработанное изображение, вы можете настроить некоторую информацию о сегментах (Shift + F7), если вы знаете, что двоичный файл содержит разделы чистого кода или чистых данных. Я не уверен, что упомянутая выше «автоматическая разборка» выполняется только тогда, когда класс сегмента определен как «КОД» или если это вообще имеет значение.
Примечание: вы всегда можете повторно запустить анализ, нажав значок цветного круга на панели инструментов (он должен быть зеленым, иначе IDA чем-то занят) или нажав «Повторный анализ программы» на вкладке «Анализ» в меню «Общие» -> «Параметры».