Как изменить машинный код в radare2 под курсором, увеличивая и уменьшая отдельные байты? - PullRequest
0 голосов
/ 26 мая 2020

В Radare2 должна быть возможность в визуальном режиме с активным курсором (нажмите c), увеличивать и уменьшать один байт необработанного машинного кода. При этом он должен обновлять в реальном времени новый собранный машинный код, например, увеличивая 0x50 до 0x51, 0x52 и т.д. c. должен привести к различным кодам операций PU SH.

Я думал, что это было сделано нажатием + и - для увеличения и уменьшения соответственно, но я обнаружил, что это не работает. Мне также трудно найти эту конкретную информацию в руководстве.

Помню ли я ее неправильно, из предыдущих версий, или она изменилась с тех пор?

Примечание, я не спрашиваю о том, как это сделать, используя «wa» или аналогичные команды для сборки новых операторов сборки, я просто хочу увеличивать и уменьшать отдельные байты как удобный способ мгновенно изменять машинный код на лету.

1 Ответ

2 голосов
/ 26 мая 2020

СРЕДА

  • Radare2: 4.5.0- git 24843 @ darwin-x86-64 git .4.4.0-125-g561989265 фиксация: 5619892652d7dce87458d77962777331c28275a6 сборка: 2020-05-04__09: 53: 49
  • Система: macOS Catalina Версия 10.15.4

РЕШЕНИЕ

  • Запуск radare2 с флагом «-w», который «открывает файл (ы) в режиме записи»
user@host:~$ r2 -w /file/to/analyze.x
  • Проанализировать файл:
[0x100001060]> aaaa
  • Перейти в визуальный режим с помощью курсора:
[0x100001060]> Vpc
  • Плюс / Минус для увеличения / уменьшения опкодов:
+
-

ПРИМЕР

enter image description here enter image description here enter image description here enter image description here

...