Сейчас на форуме: tyns777, Lohmaty (+6 невидимых)

 eXeL@B —› Вопросы новичков —› Вопрос по инструменту (ссылки из файла в код и обратно)
Посл.ответ Сообщение

Ранг: 4.6 (гость)
Активность: 0.040
Статус: Участник

Создано: 28 июня 2018 12:35 · Поправил: inkermann
· Личное сообщение · #1

Прошу прощения, что создаю столь быстро еще одну тему.
Понадобилась возможность из дизассемблера 64 с указанного места делать переход на соответствующий ему код в hex редакторе, и, что особенно важно, обратно - тоже. В 64dbg есть такая возможность с дампом, но с файлом нету. В DnSpy нечто подобное есть, но только если предварительно сделать линк с декомпилированного кода, и то на ограниченном участке. А Хотелось бы так именно из дизассемблера, и с почти любого участка файла. Это было бы просто изумительно! Возможно я слишком многого хочу , или не знаю подходящего инструмента (плагина, связки и т.п.) Иду разе, что вплотную не тестил... Буду признателен за подсказку.




Ранг: 271.2 (наставник), 331thx
Активность: 0.321.49
Статус: Участник

Создано: 28 июня 2018 15:10 · Поправил: f13nd
· Личное сообщение · #2

Тебе нужно преобразование RVA-VA-FileOffset, это много что умеет делать, stud_pe например, hiew (не уверен насчет х64).
По x64dbg вроде это:
Selected RVA in disassembly is available in the infobox (little box under
disassembly) it also shows the section and some other info.

You can navigate to an rva using "module:$rva" (use ":$rva" for the current
module). Replace the $ with a # for file offset.


https://github.com/x64dbg/x64dbg/issues/428

-----
2 оттенка серого


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

Ранг: 4.6 (гость)
Активность: 0.040
Статус: Участник

Создано: 28 июня 2018 15:53 · Поправил: inkermann
· Личное сообщение · #3

f13nd пишет:
stud_pe например

Оно похоже для x32 - вылетает.




Ранг: 271.2 (наставник), 331thx
Активность: 0.321.49
Статус: Участник

Создано: 28 июня 2018 16:11
· Личное сообщение · #4

inkermann пишет:
Оно похоже для x32 - вылетает.

Не знаю почему он у тебя вылетает, у меня работает с х64 (но не по той базе )

Вобщем переведя пост выше:
--> Link <--

-----
2 оттенка серого




Ранг: 4.6 (гость)
Активность: 0.040
Статус: Участник

Создано: 28 июня 2018 17:19 · Поправил: inkermann
· Личное сообщение · #5

Пробую версию Stud_PE.v2.6.0.5. Причем вылетает не на всем, а на длл-ке с длинными именами в коде. Видимо не переваривает. С другими файлами не проверил, решив, что это под x32. Да.. А было бы классно.. Все равно спасибо! Полезный инструмент.
f13nd пишет:
но не по той базе
Вы догадались над чем я работаю?




Ранг: 271.2 (наставник), 331thx
Активность: 0.321.49
Статус: Участник

Создано: 28 июня 2018 18:05 · Поправил: f13nd
· Личное сообщение · #6

inkermann пишет:
Вы догадались над чем я работаю?

Нет, я о своем. VA=RVA+BASE, где BASE - базовый адрес модуля, винда может его выбирать сама, если в модуле есть релоки. А в 7зфм.ехе они зачем-то есть и студ пе выбрал не тот базовый адрес. Вобщем удобней через отладчик file offset получать.

-----
2 оттенка серого




Ранг: 35.1 (посетитель), 32thx
Активность: 0.040.01
Статус: Участник

Создано: 29 июня 2018 12:25
· Личное сообщение · #7

Может не так понял хотелку, а что, HIEW уже не катит для таких вещей? Был бы переход из дебаггера, тады да, но дизасм и хекс-редактор по отдельности?




Ранг: 271.2 (наставник), 331thx
Активность: 0.321.49
Статус: Участник

Создано: 29 июня 2018 12:44 · Поправил: f13nd
· Личное сообщение · #8

GMAP пишет:
HIEW уже не катит для таких вещей?

x64dbg реально сразу выдает смещение в файле и нету смысла страдать фигней. Сам бы я конечно выбрал хью (демоверсию ) А хотелка по-моему самая типичная для новичков: пропатчил процесс в отладчике, хочу закрепить это в файле.

-----
2 оттенка серого





Ранг: 337.5 (мудрец), 348thx
Активность: 2.112.42
Статус: Участник

Создано: 29 июня 2018 16:36
· Личное сообщение · #9

inkermann

Выполнить адресную трансляцию вы можете за десяток строк в компилере. Это вызов пары штатных апи(интерфейсов). Но зачем такое нужно и почему вы это не можете сделать сами остаётся вопросом.

-----
vx


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

Ранг: 4.6 (гость)
Активность: 0.040
Статус: Участник

Создано: 29 июня 2018 22:56 · Поправил: inkermann
· Личное сообщение · #10

Это может быть полезно для быстрого понимания. что натворили с файлом если есть оригинал и патченный,
и еще кое для чего.f13nd пишет:
А хотелка по-моему самая типичная для новичков

Товарищ прав! Я новичек, мне многое непонятно, а такой инструмент был бы мне очень полезен в приобретении навыков.
Заинтересовал еще CmpDisAsm, частично могло бы помочь: в описании красиво, но у меня не работает..



Ранг: 431.7 (мудрец), 390thx
Активность: 0.730.32
Статус: Участник

Создано: 30 июня 2018 04:24
· Личное сообщение · #11

Так что, вся проблема в ASLR'е?



Ранг: 4.6 (гость)
Активность: 0.040
Статус: Участник

Создано: 30 июня 2018 09:23
· Личное сообщение · #12

В общем да.. Да и не только, я ж в основном для изучения.



Ранг: 431.7 (мудрец), 390thx
Активность: 0.730.32
Статус: Участник

Создано: 30 июня 2018 11:08
· Личное сообщение · #13

Ну, ASLR-то можно и отключить, насильственно.



Ранг: 4.6 (гость)
Активность: 0.040
Статус: Участник

Создано: 30 июня 2018 17:48
· Личное сообщение · #14

Так вы по ету коноплю? [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Contro l\Session Manager\Memory Management]
"MoveImages"=dword:00000000



Ранг: 431.7 (мудрец), 390thx
Активность: 0.730.32
Статус: Участник

Создано: 30 июня 2018 19:22
· Личное сообщение · #15

Либо так, либо в заголовке файла PE установить бит PECharacteristics.RelocationsStripped.

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

Ранг: 431.7 (мудрец), 390thx
Активность: 0.730.32
Статус: Участник

Создано: 01 июля 2018 04:00 · Поправил: dosprog
· Личное сообщение · #16

Вопрос поставлен вполне корректно.
Но желаемый функционал недоступен в hiew,
и, как я понял, только частично доступен в отладчиках.
Этому просто не уделялось внимания. Лишний головняк.

В принципе, теоретически такое можно приделать к hiew в виде hem-плагина.
Но вряд ли кто-то будет заморачиваться.




 eXeL@B —› Вопросы новичков —› Вопрос по инструменту (ссылки из файла в код и обратно)
:: Ваш ответ
Жирный  Курсив  Подчеркнутый  Перечеркнутый  {mpf5}  Код  Вставить ссылку 
:s1: :s2: :s3: :s4: :s5: :s6: :s7: :s8: :s9: :s10: :s11: :s12: :s13: :s14: :s15: :s16:


Максимальный размер аттача: 500KB.
Ваш логин: german1505 » Выход » ЛС
   Для печати Для печати