+ Reply to Thread
Results 1 to 9 of 9

Thread: Как записать блок кодов в файл в radare2 (r2)?

  1. #1

    Exclamation Как записать блок кодов в файл в radare2 (r2)?

    Добрый день.

    Не могу никак записать файл в radare2.

    Нахожусь на адресе 0x00000000
    Пишу wt hello 0x0000000f,
    где wt - команда write to file
    где hello - название файла (кстати какое расширение/контейнер
    поддерживает radare2?)
    где 0x0000000f - размер файла

    Radare2 пишет: Cannot open 'hello' for writing
    Dumped 15 bytes from 0x00000000 into hello

    Помогите, заранее спасибо.

  2. #2
    Darwin's Avatar

    Default Re: Как записать блок кодов в файл в radare2 (r2)?

    Видимо у тебя нет прав на запись в папку куда пишет радар. Напиши что-нибудь такое:

    wt ~/hello 0x0000000f

    Создаст файл hello в твоей папке юзера.
    Счастлив кто отдал, а не взял. (с) Inception

  3. Пользователь сказал cпасибо:
  4. #3
    dukeBarman's Avatar

    Default Re: Как записать блок кодов в файл в radare2 (r2)?

    PseudoMaster, возможно Darwin прав.

    Если у вас стоит задача сдампить (от текущего положения, менять положение командой s, в открытом файле до размера указанного в команде) некоторое количество байт из открытого файла, то:

    Code:
    ~ $ r2 hello
    [0x00000000]> wt hello2 0xf
    dumped 0xf bytes
    Dumped 15 bytes from 0x00000000 into hello2
    [0x00000000]> q
    ~ $ hexdump hello2
    0000000 940c 0035 940c 005d 940c 005d 940c 005d
    000000f
    Если же вы хотите переписать байты в открытом файле, то надо открывать в режиме записи:
    Code:
    ~ $ r2 -w hello
    [0x00000000]> w?
    Переоткрыть текущий файл в режиме записи:
    Code:
    [0x00000000]> oo+

    Под расширением / контейнером, что подразумеваете?
    Last edited by dukeBarman; 20-10-2015 at 12:45.
    A hacker without a cat is not a hacker!

  5. Пользователь сказал cпасибо:
  6. #4

    Default Re: Как записать блок кодов в файл в radare2 (r2)?

    Ещё раз - добрый день.

    К сожалению не работает. Нет прав, я это понимаю, как нет root-прав. Поставил KingRoot.apk - теперь есть root-права.
    В Terminal.apk появилась команда su (superuser). Делаю команду su и вместо $ в командной строке появляется # решётка.
    Я обрадовался - теперь должна пройти команда r2 - , а затем wt hello2 0xf.
    Не тут-то было. Теперь в superuser режиме terminal не понимает (r2 not found) r2 - запуск radare2.
    Может в KingRoot надо (там Terminal уже присутствует) и Radare2 прописать. Как - не знаю?
    Terminal там тоже случайно прописался - просто выскачило окно о том, что Terminal хочет Root-права. Я это подтвердил и всё.

    Извините, что так долго описываю. Просто на планшете Android 4.2.2 я пол года. До этого был на Windows. Сейчал мигрирую
    с Windows на x86/Ubuntu и ARM/Android. А расширение/extension - это *.exe, *.jpg, *.apk, *.mp3/mp4. Вот я и спросил в прошлый раз - какое *.???
    расширение/extension распознаёт Radare2.

    Жду снетерпением ответа.

  7. Пользователь сказал cпасибо:
  8. #5
    dukeBarman's Avatar

    Default Re: Как записать блок кодов в файл в radare2 (r2)?

    Надо было сразу сказать, что это Android. Там своя система разграничение прав между приложениями, потому и такие проблемы. Все новые файлы сохраняйте лучше на /sdcard. Т.е. будет примерно так (скрин сделан на устройстве с Android 5+ не рутованном, открывал через пункт "console" в открытом radare2 приложении):


    В окне у радара (при запуске Radare2 installer) есть опции для прописывания пути на рутованном устройстве.
    Есть ли возможность обновить Андроид? Так как походу на версии ниже 4.4 еще новый инсталлер в гугл плей не пришёл и зальют сегодня/завтра. Или если срочно надо, то есть хак:
    • Загрузить apk
    • Исправить xml
    • adb install


    Расширения apk (у android типа есть несколько возможностей https://radare.gitbooks.io/radare2bo...t/plugins.html) и exe, как форматы исполняемых файлов видит. Для остальных можно подгрузить C headers () командой:

    Code:
    to filename.h
    Возможно в скором времени появится поддержка шаблонов от 010 Editor для облегчения анализа таких форматов
    Last edited by dukeBarman; 20-10-2015 at 17:47.
    A hacker without a cat is not a hacker!

  9. Пользователь сказал cпасибо:
  10. #6

    Default Re: Как записать блок кодов в файл в radare2 (r2)?

    Ну вы асс. Всё работает. Сохраняет свободно на sdcard любой файл.

    Хорошо. Тогда ещё одна загвоздка. Trace Into/Over One Step т.е. трассировка кода пошагово и запуск программы
    до выхода из подпрограммы. Конец программы толи обычный RET, толи новый для меня код BX LR или BX R14.
    Ну да ладно, нажимаю V и перехожу в Visual Mode. Нажимаю s и начинаю Tracing Step by Step. Всё хорошо, только
    ничего хорошего. Во-первых, трассировка идёт в один конец. Visual Mode в данном случае никак не связан с адресом,
    который можно в console-режиме менять командой s. Как сделать трассировку и запуск программы из консоли?
    Как делать трассироаву в Visual Mode правильно? Нажимаем p несколько раз, пока не появится не hex, а code.
    Как вернуть курсор на место 0x0 в Visual Mode? Не могу найти <TAB>, чтобы в Visual Mode переключаться с code на
    hex, c hex на ascii и обратно. Это даст что-нибудь? Смогу ли я вводить code в Visual Mode? А то я приноровился использовать
    console wa mov r0, 2 для ввода кода. Вообщем, как сделать это удобнее из console и Visual Mode?

    Спасибо.

  11. Пользователь сказал cпасибо:
  12. #7
    dukeBarman's Avatar

    Default Re: Как записать блок кодов в файл в radare2 (r2)?

    PseudoMaster, походу Вы нашли баг в Visual Mode. Сможете написать тоже самое по-английски в github issue проекта https://github.com/radare/radare2/issues?
    A hacker without a cat is not a hacker!

  13. Пользователь сказал cпасибо:
  14. #8

    Default Re: Как записать блок кодов в файл в radare2 (r2)?

    руку я вообщем набил на Radare2... Да надо бы написать, но я думаю там не дураки сидят. В новой версии всё будет поправлено.

    Ладно, я тут покапался и нашёл Texas Instruments Code Composer Studio v5/v6 и, как у меня обычно бывает, не запускается
    Installlation Setup. Это хорошая программа для работы с ARM Cortex-M, Cortex-A.

    Вопрос - как запустить *.bin файл на Ubuntu Linux amd64 v14.04.3 ? Всё должно запускаться щелчком мыши, как я понимаю.

    Спасибо.

  15. Пользователь сказал cпасибо:
  16. #9

    Default Re: Как записать блок кодов в файл в radare2 (r2)?

    Ой ладно, вернёмся на Windows и загрузим Keil RealView c Legacy Support и Keil uVision c поддержкой ассемблера для x51/Cortex...

  17. Пользователь сказал cпасибо:
+ Reply to Thread

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
All times are GMT. The time now is 01:24
vBulletin® Copyright ©2000 - 2018
www.reverse4you.org