как отредактировать двоичный файл в системах unix
-
22-07-2019 - |
Вопрос
На компьютере с Windows доступно множество сторонних редакторов для редактирования двоичного файла.Я полагаю, что в системах * nix также должно быть что-то похожее.есть идеи, как я могу отредактировать двоичный файл в unix?
Решение
Вы также можете попробовать утилиты ghex2 GNOME. Это даст вам автоматический hex-to-ASCII на стороне, а также различные символьные / целочисленные декодирования внизу.
(источник: googlepages.com )
Другие советы
В vim Вы можете ввести :%! xxd , чтобы превратить его в гекседитор. :%! xxd -r , чтобы вернуться в обычный режим. xxd поставляется в установке vim.
Смотрите здесь некоторые замечания о редактировании двоичных файлов с помощью vim ( сводится к : установите двоичный код , чтобы избежать проблем, используйте только команду «R» или «r» для изменения текста, не удаляйте символы).
Если вы являетесь поклонником Emacs, см. здесь для получения руководства. о том, как редактировать двоичный файл с помощью Emacs.
В Linux / Unix гораздо больше гекседиторов ....
Я использую hexedit в Ubuntu
sudo apt-get install hexedit
Благослови это высококачественный, полнофункциональный шестнадцатеричный редактор.
Он написан на mono / Gtk #, а его основной платформой является GNU / Linux.Однако он должен быть способен работать без проблем на каждой платформе, на которой работают mono и Gtk #.Основные возможности В настоящее время Bless предоставляет следующие функции:
- Эффективное редактирование больших файлов данных и блочных устройств.
- Многоуровневые операции отмены - повтора.
- Настраиваемые представления данных.
- Быстрое отображение данных на экране.
- Несколько вкладок.
- Быстрые операции поиска и замены.
- Таблица преобразования данных.
- Расширенные возможности копирования / вставки.
- Выделение совпадений шаблона выделения в файле.
- Архитектура, основанная на плагинах.
- Экспорт данных в текст и html (другие с помощью плагинов).
- Побитовые операции над данными.
- Подробное руководство пользователя.
Раньше я пользовался британские виргинские острова.
Я развиваюсь шестнадцатый чтобы преодолеть :%!xxd
и bvi
ограничения.
шестнадцатый
Характеристики
- привязки клавиш и команды, похожие на vim
- переход к конкретным смещениям
- вставка, замена, удаление
- поиск материала (регулярные выражения PCRE)
- все является командой и может быть отображено в
hexvirc
- цветовые схемы
- поддержка больших файлов
- поддержка нескольких файлов (с помощью вкладок)
- Python, поэтому начальный уровень для взлома должен быть ниже, чем у C
- CLI насквозь
Минусы
- по состоянию на март 2016 года, это альфа-версия, поэтому функции отсутствуют, но я работаю над ними:
- сохранение файла
- отменить /повтор
- история команд
- визуальный отбор
- справочная страница
- нет автозаполнения
британские виргинские острова
Характеристики
- привязки клавиш и команды, похожие на vim
- переход к конкретным смещениям
- вставка, удаление, замена
- поиск материала (текстового и шестнадцатеричного)
- отменить /повтор
- CLI насквозь
Минусы
- что касается его возможностей vim - к сожалению, он понимает только самые
базовые вещи и определенно нуждается в большей любви в этом отношении (пример:не
понимает
:wq
, но понимает:w
и:q
) - никакой поддержки визуального выбора вообще нет
- нет поддержки вкладок / разделения экрана
- часто выходит из строя
- нет поддержки больших файлов
- нет истории команд
- нет автозаполнения
Мне нравится KHexEdit , который является частью KDE
Его " стиль Windows " Пользовательский интерфейс, вероятно, довольно быстро изучается для большинства людей (в любом случае, по сравнению с Vim или Emacs :)
Есть легкий бинарный редактор, проверьте hexedit. http://www.linux.org/apps/AppId_6968.html . Я попытался использовать его для редактирования бинарных файлов ELF как минимум в Linux.
Я создал wxHexEditor, он с открытым исходным кодом, написан на библиотеках C ++ / wxWidgets с графическим интерфейсом и может открывать даже ваш диск размером с exabyte!
Просто попробуй.
Как вариант, вы можете использовать radare2 :
> r2 -w /usr/bin/ls
[0x004049d0]>V
[0x004049d0 14% 1104 (0x0:-1=1)]> x @ entry0
- offset - | 0 1 2 3 4 5 6 7 8 9 A B C D E F| 0123456789ABCDEF
0x004049d0 |31ed 4989 d15e 4889 e248 83e4 f050 5449| 1.I..^H..H...PTI
0x004049e0 |c7c0 103a 4100 48c7 c1a0 3941 0048 c7c7| ...:A.H...9A.H..
0x004049f0 |202a 4000 e877 dcff fff4 660f 1f44 0000| *@..w....f..D..
0x00404a00 |b807 e661 0055 482d 00e6 6100 4883 f80e| ...a.UH-..a.H...
0x00404a10 |4889 e576 1bb8 0000 0000 4885 c074 115d| H..v......H..t.]
0x00404a20 |bf00 e661 00ff e066 0f1f 8400 0000 0000| ...a...f........
0x00404a30 |5dc3 0f1f 4000 662e 0f1f 8400 0000 0000| ]...@.f.........
0x00404a40 |be00 e661 0055 4881 ee00 e661 0048 c1fe| ...a.UH....a.H..
0x00404a50 |0348 89e5 4889 f048 c1e8 3f48 01c6 48d1| .H..H..H..?H..H.
0x00404a60 |fe74 15b8 0000 0000 4885 c074 0b5d bf00| .t......H..t.]..
0x00404a70 |e661 00ff e00f 1f00 5dc3 660f 1f44 0000| .a......].f..D..
0x00404a80 |803d c19b 2100 0075 1155 4889 e5e8 6eff| .=..!..u.UH...n.
0x00404a90 |ffff 5dc6 05ae 9b21 0001 f3c3 0f1f 4000| ..]....!......@.
0x00404aa0 |bf10 de61 0048 833f 0075 05eb 930f 1f00| ...a.H.?.u......
0x00404ab0 |b800 0000 0048 85c0 74f1 5548 89e5 ffd0| .....H..t.UH....
0x00404ac0 |5de9 7aff ffff 662e 0f1f 8400 0000 0000| ].z...f.........
0x00404ad0 |488b 0731 d248 f7f6 4889 d0c3 0f1f 4000| H..1.H..H.....@.
Подробнее о том, как работать в визуальном режиме, можно прочитать в здесь . р>
Для небольших изменений я использовал hexedit:
http://rigaux.org/hexedit.html
Просто, но быстро и полезно.
У меня был хороший опыт работы с wxHexEditor ... просто убедитесь, что вы редактируете в шестнадцатеричном виде диск вы делаете это через меню
Devices -> Open Disk Device -> SCSI Disk Drive Partition #_N_