Как найти расположение строки в памяти (иметь физическое смещение)? - PullRequest
1 голос
/ 09 июня 2009

Мне нужно найти str[possibly n]cmp из враждебного двоичного файла. Проблема в том, что в разборке есть миллиард.

Я знаю, что это из-за помощи от строк. Я разбираю двоичный файл, у которого нет 'otx' (дизассемблер, который вставляет строки для вас.

Мне нужно знать, как найти смещение в памяти этой строки после загрузки программы, чтобы я мог использовать GDB и т. Д.

Если бы вы могли дать мне алгоритм (я обычно помнил другой путь: phys off = virtual off * segment adress + segment offset - или что-то в этом роде) (ps это правильно ??

Или, если бы вы могли сказать мне, как это намного проще в ida pro, я был бы очень признателен

спасибо:)

1 Ответ

3 голосов
/ 09 июня 2009

В IDA просто загрузите файл и выполните двоичный поиск (нажмите Alt + B), а затем посмотрите на адрес. Вы также можете проверить наличие перекрестных ссылок на строку, нажав x.

...