2016-06-29 7 views
3

Я использую IDA Pro для демонстрации файла DLL Windows. В какой-то момент у меня есть строка кода, говорящийIDA Pro разборка, как увидеть .data часть в простой ascii?

mov esi, dword_xxxxxxxx 

Мне нужно знать, что DWORD есть, но дважды щелкнув его подводит меня к .data странице и все в вопросительных знаков. Как получить простой текст, который должен быть там?

ответ

5

Если вы видите вопросительные знаки в IDA, это означает, что в этом месте в файле (на вашем диске) нет физических данных.

Разделы в файлах PE имеют физический размер (задается полем SizeOfRawData заголовка секции). Этот физический размер (на диске) может отличаться от размера раздела после его сопоставления с памятью процесса загрузчиком Windows (этот размер задается полем VirtualSize заголовка раздела).

Итак, если поле VirtualSize больше, чем поле SizeOfRawData, часть раздела не имеет физического существования и существует только в памяти (как только файл отображается в адресное пространство процесса).

В большинстве случаев, в точке ввода программы вы можете предположить, что эта память заполнена 0 (но некоторые части памяти могут быть записаны загрузчиком окон).

Чтобы получить места, где данные записываются, читаются или загружаются, вы можете использовать перекрестные ссылки (xref). Вот пример:

enter image description here

Нажмите на имя данных, из которого вы хотите внешнюю ссылку:

enter image description here

Затем нажмите «х», вы будете показаны все известные (Ида) место, где используются данные:

enter image description here

вторым колонке указывает на то, как используется данные:

  • г означает, что она считывается
  • ш означает, что написано
  • о означает, что он будет загружен как указатель
+0

Так как отслеживать, где находится память dword, или где записывается эта часть памяти? – bernlim

+1

@bernlim «Итак, как я могу отслеживать, где находится память dword»: вы имеете в виду статически или в адресном пространстве процесса? Во второй части вашего вопроса я обновил свой ответ. – Neitsa

+0

Это именно то, что мне нужно – bernlim