как разобрать файл arm64 elf? - PullRequest
0 голосов
/ 20 апреля 2020

enter image description here

Я хочу проанализировать elf64-битный файл. Адрес этого символа 0x25008, но на самом деле этот адрес не существует. Как показано на рисунке ниже, максимальный адрес файла составляет 0x1a900. Очевидно, что 0x25008 больше, чем 0x1a900. Как мне разобрать этот файл эльфа, чтобы получить правильный адрес

Эта проблема не существует в arm32, как решить ее под arm64

enter image description here

1 Ответ

1 голос
/ 21 апреля 2020

Адрес этого символа 0x25008, но на самом деле этот адрес не существует

Секция , к которой принадлежит этот символ, имеет значение (секция 31 здесь).

Символ, скорее всего, находится в разделе .bss, который гарантированно инициализируется нулями и не сохраняется в файле (нет смысла хранить в файле группу нулей). - вы можете просто заполнить раздел нулями во время выполнения).

...