Вибираємо hex редактор російською. Hex редактори vs. malware: Вибираємо шістнадцятковий редактор для аналізу бінарників. Асемблювання та асемблерний пошук

20.11.2019 Програми

Після закінчення циклу статтею « Найкращі інструментипентестера» до редакції надійшло чимало листів із проханням зробити добірку hex-редакторів. Інтерес, звісно, ​​представляє можливість редагувати бінарні дані, а додаткові фічі на кшталт автоматичного розпізнавання структур даних і дизассемблирования коду. Щоб зробити огляд, ми з'ясували думки людей, яким найчастіше доводиться копирсатися з такими інструментами – вірусних аналітиків. І ось, що вони нам розповіли.

Будь-який hex-редактор дозволяє досліджувати та модифікувати файл на низькому рівні, оперуючи з бітами та байтами. Зміст файлу представляється у шістнадцятковій формі. Це базовий функціонал. Однак деякі редактори пропонують користувачам набагато більше, дозволяючи розібратися, що є що в тому незрозумілому наборі символів, який з'являється при відкритті файлу. Для цього автоматично витягуються ASCII та Unicode рядки, здійснюється пошук відомих патернів, виконується розпізнавання основних структур даних та багато іншого. Шістнадцяткових редакторів досить багато, але якщо ми вирішили розглянути їх у контексті дослідження зразків малварі, то легко виділити деякі з них. Лише деякі виявляються реально корисними для аналізу шкідливого коду та дослідження заражених документів (скажімо, PDF).

McAfee FileInsight

FileInsight – це безкоштовний hex редактор для Windows від компанії McAfee Labs. Продукт, само собою, виконує весь стандартний функціонал, що супроводжує подібний софт, пропонуючи зручний інтерфейс для перегляду та редагування файлів у шістнадцятковому та текстовому режимах. Але це лише крапля у морі, якщо подивитися на весь його функціонал. Почати варто з того, що FileInsight здатний парсувати структуру виконуваних бінарників для Windows (PE файлів), а також OLE-об'єктів Microsoft Office. Мало цього, користувачеві пропонується вбудований x86 дизассемблер. Достатньо вибрати частину файлу, яку хочеш переглянути у вигляді коду, що читається, і FileInsight покаже цей фрагмент як лістинг асемблерних інструкцій. Дизассемблер особливо корисний, коли шукаєш шовк у шкідливих файлах. Серед інших опцій, які припадуть до душі реверсерам, – можливість імпортувати оголошення структур. Для цього програмі достатньо вказати заголовний файл з оголошеннями на кшталт:

struct ANIHeader (
DWORD cbSizeOf; // Num bytes in AniHeader
DWORD cFrames; // Number of unique Icons
DWORD cSteps; // Number of Blits
};

У цьому випадку програма сама буде ширяти подібні конструкції. Втім, і за промовчанням пропонується чимало інтуїтивних алгоритмів для обробки коду. Йдеться, насамперед, про декодування багатьох методів обфускації (xor, add, shift, Base64 і т.д.) – вбудовані скрипти клацають подібний криптозахист на раз-два. Тут слід зазначити, що як об'єкт дослідження необов'язково має бути бінарник, це може бути і звичайна веб-сторінка, що викликає підозри. Багато дій програма дозволяє автоматизувати за допомогою простих сценаріїв JavaScript або модулів на Python, яких написано вже чимало. На жаль, за всіх переваг, у FileInsight є і серйозний недолік, що виражається в неможливості обробляти великі файли. Наприклад, якщо спробуєш згодувати утиліті файл розміром 400-500 Мб, вилітає помилка «Failed to open document».

Hex Editor Neo

Існує дві версії цього шістнадцяткового редактора від компанії HDD Software – проста безкоштовна та просунута комерційна версія. Freeware-варіант – це добротний, але мало чим примітний HEX-редактор, що має класний інтерфейс, що настроюється, з підтримкою різних колірних схем. Не більше того. А ось професійна версія Hex Editor Neo надає кілька корисних опцій, які можуть бути надзвичайно корисними при аналізі бінарників. Наприклад, користувач має можливість декодування коду, закриптованого за допомогою найбільш загальних алгоритмів. Крім цього з'являється можливість перегляду та редагування локальних ресурсів типу NTFS-потоків, локальних дисків, пам'яті процесу та оперативності. У самій повної версіїз'являється і підтримка скриптової мови, що дозволяє автоматизувати багато процесів за допомогою сценаріїв на VBScript та JavaScript. Але найсмачніше в тому, що до твоїх послуг надається вбудований дизассемблер, який працює і з x86, і з x64, і з .NET-бінарниками! Ще одна фіча - швидке створенняпатчів, заснований на порівнянні двох бінарників. Звучить вражаюче, але чи краще він, ніж FileInsight? Скоріше немає. FileInsight загалом виглядає більш функціонально. З іншого боку, будь-яка навіть безкоштовна версія Hex Editor Neo відмінно працює навіть з дуже великими файлами і дозволяє шукати ASCII і Unicode-рядки. Дизассемблер тут не обмежується лише x86 платформою, а вбудований редактор ресурсів дуже зручний. Є над чим подумати.

FlexHex

FlexHex – це потужний комерційний hex-редактор від компанії Heaventools Software, який включає багато функцій, доступних у Hex Editor Neo. Єдине, чого тут немає – це, мабуть, підтримка скриптів. Зате цей повнофункціональний редактор однаково добре обробляє бінарники, OLE-файли, фізичні дискита альтернативні NTFS-потоки. Останнє особливо важливо, тому що FlexHex дозволяє редагувати дані, які інші редактори можуть навіть не побачити. До того ж відразу відчувається орієнтованість на роботу з великими масивами інформації: який би розмір не був у файлу, навігація по ньому здійснюється без будь-яких лагів та гальм. Для більшої зручності працює система зручних закладок. При цьому FlexHex безперервно веде історію всіх операцій – можна скасувати будь-яку дію, просто вибравши її зі списку змін (undo-list не обмежений)! У FlexHex підтримуються всі необхідні операції з бінарними даними, пошук ASCII та Unicode-рядків. Якщо необхідно обробляти структуру із заздалегідь відомим форматом, задати її параметри не складе труднощів за допомогою спеціальних інструментів. В результаті отримуємо відмінний hex-редактор, але все-таки сильно поступається тому ж FileInsight. Єдина чудова опція - це обробка OLE-файлів, але і тут є проблеми. Кілька разів при спробі відкрити заражений OLE програма вилітала з помилкою "The docfile has been corrupted".

010 Editor

010 Editor – відомий комерційний продукт розроблений SweetScape Software. Якщо порівнювати його з попередніми трьома інструментами, то він вміє все: підтримує роботу з дуже великими файлами, надає класні можливості по оперуванню з даними, дозволяє редагувати локальні ресурси, має систему скриптингу для автоматизації рутинних дій (понад 140 функцій до твоїх послуг). А ще у 010 Editor є особливість, унікальна фішка. Редактор приділяє всім завдяки можливості парсити різні формати файлів, використовуючи власну бібліотеку шаблонів (так звані Binary Templates). Отут йому немає рівних. Над шаблонами працюють безліч ентузіастів у всьому світі, забиваючи різні структури форматів та даних. В результаті процес навігації за різними форматами файлів стає прозорим та зрозумілим. Це стосується також обробки бінарників для вінди (PE файлів), файлів-ярликів Windows (LNK), Zip-архівів, файлів Java-класів та багато іншого. Всю красу цієї фішки багато хто зміг усвідомити, коли відомий фахівець з безпеки Didier Stevens створив для 010 Editor шаблон для парсингу PDF-файлів. Разом з іншими утилітами це серйозно спростило аналіз заражених PDF-документів, які останні півроку не перестають дивувати кількістю місць, звідки можна експлуатувати програму-читалку. Додаємо сюди класний інструмент для порівняння бінарників, калькулятор з C-подібним синтаксисом, конвертування даних між ASCII, EBCDIC, Unicode-форматами та отримуємо дуже привабливий інструмент з унікальними фішками.

Hiew

Hiew, у плані способу поширення, мало чим відрізняється від своїх колег – це також комерційний продукт, який розробив наш співвітчизник Євген Сусликов. Програма, що має довгу історію, сильно полюбилася багатьом фахівцям з інформаційної безпеки. Тому є цілком очевидні причини – потужні можливості для дослідження та редагування структури та змісту виконуваних файлівяк вінди (PE), і бінарників для Linux (ELF). Інша дуже корисна фіча для реверсингу – вбудований x86-64 асемблер та дизассемблер. Останній навіть підтримує інструкції ARM. Не треба говорити, що редактор відмінно перетравлює великі файли та дозволяє редагувати логічні та фізичні диски. Багато завдань легко автоматизуються з допомогою системи клавіатурних макросів, скриптів і навіть API розробки розширень (Hiew Extrenal Modules). Але перш ніж рватися в бій, врахуй – інтерфейс Hiew є DOS-подібним вікном, працювати з яким з незвички досить незручно. Зате можеш відчути на собі всю красу олдскула.

Radare

Radare – це набір безкоштовних утилітдля Unix-платформи, які надають класні можливості для редагування файлів у режимі HEX. У нього входить безпосередньо сам hex-редактор (radare) з можливістю відкриття локальних і віддалених файлів. Програма аналізує виконувані файли різних форматів, як лінуксових (ELF), так і віндових (PE). Крім редагування в пакеті Radare є інструмент для порівняння бінарних файлів (radiff) та вбудований асемблер/дизассемблер. А особисто мені кілька разів став у нагоді інструмент для генерації шелкодів (rasc). Будь-які операції легко можна автоматизувати та підігнати під себе за рахунок скриптової системи. З мінусів, знову ж таки, можна відзначити відсутність GUI-інтерфейсу - всі дії здійснюються з командного рядка, а повноцінно працювати з утилітами вийде лише прочитавши документацію. З іншого боку на сайті є наочні скринкасти, які демонструють як основні моменти, так і маленькі секрети (на зразок підключення Python-плагіну).

То що ж вибрати?

Ми розглянули кілька потужних hex-редакторів, які включають корисні опції для аналізу підозрілих файлів. З усіх продуктів серйозно виділяється FileInsight, який при всьому своєму функціоналі (а він справді вражає) залишається безкоштовним. 010 Editor надає велику кількість шаблонів для обробки самих різних файлів, у тому числі PDF-документів. Це мега-фішка, яку не можна нехтувати. Ці два редактори я використовую постійно; Для роботи аналітика, мабуть, вони підходять найкраще. Якщо говорити про роботу під Unix-платформою, то, звісно, ​​не можна забувати про Radare. Пакет пропонує дуже потужні можливості, хоч і складний у використанні через те, що працює з командного рядка. Не дуже доброзичливий і Hiew, хоча його можливості, безумовно, дозволяють виконувати різні операції з бінарниками. До того ж, Hiew - це вибір великої кількості справжніх профі, а це дорогого коштує (і багато що означає). Що стосується Hex Editor Neo, то його варто взяти на озброєння, якщо тебе цікавить можливість дизасемблювати x86, x64 та .NET код.

Іноді виникає потреба внести зміни до двійкового файлу. Для цього використовують так звані hex-редактори. Мета даного керівництва - описати основні методи роботи з ними і відповісти на питання, що найбільш часто задаються.

Вибір редактора

Найпершим зазвичай постає питання: який редактор із усього різноманіття існуючих вибрати. Для зміни кількох байт можна сміливо використовувати будь-який, але при частому або тривалому використанні програма повинна підтримувати всі необхідні функції, бути зручною, швидкою та надійною. Виходячи з цього, можна рекомендувати до використання, наприклад, QView. Крім перерахованих вище властивостей, він має такі:

  • Працює в DOS та Windows
  • Містить вбудовані асемблер і дизассемблер
  • Підтримує кодування тексту DOS-866, Win-1251, KOI-8r та визначені користувачем
  • Має широкі можливостіналаштування
  • Є безкоштовним з відкритими кодами

Завантажити його можна на домашній сторінціпроекту: http://www.agcproduct.com/ukr/products/qview/ .

Основне вікно QView складається з заголовка (вгорі), робочої області та панелі функціональних клавіш(Внизу). Для керування використовуються клавіатура та миша. QView дозволяє працювати з даними в текстовому режимі, режимі шістнадцяткового дампа та режимі дизасемблера. Режими послідовно перемикаються натисканням Enter або F4 (або натисканням лівої кнопки миші по заголовку в області розташування символів AV/HV/00). Режими перегляду та редагування перемикаються натисканням Alt-F3 (у текстовому режимі просто F3). Режими, що встановлюються після запуску, залежать від налаштувань, які зберігаються у файлах qview.ini, qview.fmg, qview.ehl і для зміни яких у складі пакета є спеціальна програма- Q-Setup. Контекстна довідка по клавішах викликається натисканням F1.

Відкрити файл у редакторі можна передавши його ім'я як параметр командного рядка: qview.exe (у Windows довгі іменафайлів необхідно укладати в подвійні лапки) або через файлову панель, яка викликається натисканням Alt-F6 або клацанням миші на ім'я файлу в заголовку. Щоб вийти з редактора, натисніть Escape.

Найпростіше редагування

Найпростіше завдання при редагуванні двійкових файлів: замінити значення байта зі зміщення XXXXХХХХ значенням YY Для цього після відкриття файлу в редакторі необхідно натисканням Enter переключити вигляд у режим дампа. У робочій області в лівій колонці зазначено значення зсуву, в центральній частині - значення байт у шістнадцятковому вигляді, праворуч - ті ж значення у вигляді символів ASCII.

Для встановлення курсора за необхідним зміщенням потрібно натиснути клавішу F5 (або клацнути в заголовку мишею по ряду цифр, виділеному червоним кольором), ввести значення зсуву і натиснути Enter. Якщо режим редагування не був увімкнений, слід натиснути Alt-F3 (при цьому в панелі клавіш з'явиться напис "Edit ON"). Після цього можна вносити зміни до файлу, набираючи значення байт у шістнадцятковому вигляді або, перемістивши курсор у праву колонку натисканням TAB, у вигляді символів. Курсор позиціонується за допомогою звичайних клавіш керування або мишею.

Для скасування зроблених змін слід встановити курсор у місці помилки та кілька разів натиснути F3. Зберегти зміни можна при виході, натиснувши W або примусово, натиснувши Alt-F9.

Пошук та заміна

QView підтримує пошук у файлі певних байт або рядків та пошук по масці. Діалогове вікно пошуку викликається натисканням F7. У полі ASCII можна ввести рядок у вигляді символів, а в полі HEX ​​- у шістнадцятковому вигляді. Натисканням миші можна вказати напрямок пошуку ("Forward/Backward"), увімкнути опції розрізнення регістру символів для символьного пошуку ("Sensitive") або пошук по масці ("Masking"). У разі символ "?" маскує відповідний байт у рядку. Наприклад, при пошуку "w?r?" будуть знайдені слова worm, warm, were тощо. При натисканні Shift-F7 виконується пошук наступного збігу.

Для пошуку з заміною необхідно натиснути Ctrl-F7. У верхній частині вікна вводиться рядок або шаблон для пошуку, у нижній - рядок, що замінює.

Створення та використання crack-файлів

Crack-файли є найпоширенішим способом запису змін у двійкових файлах. У стандартному форматі вони складаються з трьох колонок: зміщення щодо початку файлу, що редагується, значення байта до зміни і його значення після зміни:

00000150: 89 B8 00000151: 1E 03 00000152: F6 00 00000153: 10 CD 00000154: 83 10

Іноді до початку додається коментар, що починається із символу "#".

У QView для збереження внесених у файл змін у вигляді crack-файла необхідно натиснути Shift-F9, ввести у вікні ім'я файлу і натиснути Enter. Для внесення змін з готового crack-файлу слід натиснути Ctrl-F8, пропустити вікно, натиснувши Enter (в ньому можна задати додаткове зміщення, що використовується рідко), в наступному вікні ввести ім'я crack-файла і знову натиснути Enter. Важливе зауваження: одразу після цієї зміни будуть записані у файл і він буде автоматично збережений. Перемикати програму на режим редагування не обов'язково. Якщо при внесенні змін виводиться повідомлення про помилку, це означає, що формат файлу не відповідає стандартному, або патч не підходить до файлу (байти "до зміни" не збігаються).

Робота з блоками

Іноді виникає потреба зберегти частину двійкового файлу, наприклад, скопіювати з нього текстові рядки. Для роботи з блоками редактор повинен бути в режимі дампа або дизассемблера. Для виділення необхідного блоку слід встановити курсор на його початок, натиснути клавішу Insert, потім встановити курсор у кінець блоку і знову натиснути Insert. При цьому блок виділяється жовтим кольором.

Для збереження блоку у файл необхідно натиснути Shift-F2, у вікні вказати ім'я і формат файлу, що зберігається (у вигляді коду - "як є", дампа або асемблерного тексту) і натиснути Enter.

При вставці блоку з файлу слід аналогічним чином виділити блок, натиснути Shift-F3 і у вікні вказати ім'я файлу-джерела. При цьому розмір виділеного блоку повинен дорівнювати або менше розміру файлу. Альтернативний варіант: встановити курсор у позицію, починаючи з якої повинна бути зроблена вставка, натиснути Shift-F5 і у вікні вказати ім'я файлу-джерела, зсув і довжину блоку всередині нього, звідки потрібно взяти дані.

Щоб видалити блок слід відзначити його і натиснути Shift-F4 або встановити курсор у потрібну позицію, натиснути Ctrl-F5 і вказати кількість байт, що видаляються. Для вставки заповненого нулями блоку в поточну позицію слід натиснути Ctrl-F4 і вказати розмір блоку. Видалити файл до кінця з поточної позиції можна натиснувши Alt-F10.

При вставці блоку, як і у випадку з crack-файлами, зміни зберігаються відразу після внесення.

Асемблювання та асемблерний пошук

Асемблювання використовується для внесення змін до алгоритму роботи файлів, що виконуються. QView підтримує всі команди процесорів Intel 486 і 487. У режимі асемблера і дизассемблера в робочій області редактора в першій колонці вказано зміщення щодо початку файлу, у другій - байти інструкції, в третій - ee мнемонічне позначення. Для включення режиму асемблювання слід перевести редактор у режим дизасемблера, натиснувши кілька разів Enter, увімкнути режим редагування, натиснувши Alt-F3, та натиснути TAB для переміщення курсору до третьої колонки. Після цього можна вводити інструкції, завершуючи введення кожного натискання Enter.

При необхідності можна, як і в режимі дампа, безпосередньо змінювати байти в другій колонці. Розрядність коду 16/32 перемикається натисканням F2. Скасувати зміни можна, встановивши курсор на рядок з помилкою і кілька разів натиснувши F3.

Для пошуку конкретних інструкцій асемблерів слід натиснути F6, ввести інструкцію і натиснути Enter. Пошук наступного збігу здійснюється натисканням Shift-F6. Для пошуку за шаблоном можна використовувати такі спеціальні символи:

"?" - будь-який один символ
"*" - будь-яке підстроювання до коми або до кінця рядка
"$" - пошук числових констант (ставиться перед числом)
"%" - перепустка одного слова
"@" - будь-який підрядок

Наприклад, "sub bx,*" - пошук усіх інструкцій віднімання з регістра BX.

Додаткові функції

З корисних додаткових функцій QView можна назвати наявність вбудованого калькулятора, який викликається при натисканні Ctrl-F6. Він підтримує основні арифметичні та логічні порозрядні операції, дужки для вказівки пріоритету операцій, введення аргументів та виведення результату у системах числення з основою 2, 8, 10, 16.

Переглянути інформацію з заголовка файлу можна натиснувши F8 в режимі дампа або дизассемблера. Підтримуються файли форматів MZ, PE, NE, LX, LE.

Як блокнот Windows. Більше того, якщо ви відкриєте двійковий файл текстовим редакторомі збережіть його на диск, то, як правило, такий файл буде пошкоджений і не запуститься. Для внесення коректних правок необхідно використовувати шістнадцяткові редактори (hex), які іноді ще називають двійковими редакторами.

Більшість звичайних користувачів, навряд чи виникнуть завдання чи потреби у використанні шістнадцяткових редакторів. Проте, для технічно підкованих користувачів такі редактори можуть бути незамінними інструментами.

ПриміткаЯк факт, але свого часу для виправлення стандартних інсталяторів asp.net 1.1 доводилося коригувати двійковий код Наприклад, щоб зробити один з елементів управління полем для введення пароля.

У даному оглядізібрані одні з найкращих безкоштовних hex-редакторів під різні потреби.

Огляд безкоштовних шістнадцяткових редакторів

Існує кілька відмінних безкоштовних шістнадцяткових редакторів, що варіюються від невеликих і простих до складних продуктів, які можна порівняти з комерційними рішеннями. Тим не менш, категорія hex-редакторів - це одна з тих категорій, де особисті потреби та переваги настільки важливі, що порівнювати продукти не тільки складно, а й безглуздо. Тому не варто вважати, що продукти скомпоновані в порядку зменшення.

HxD чудовий шістнадцятковий hex-редактор

Одною з кращих утилітдля редагування двійкового коду . По-перше, програма портативна і не потребує встановлення, що особливо важливо, за частої необхідності в редагуванні виконуваних файлів. По-друге, вона має приємний інтерфейс. По-третє, HxD обробляє великі файли без затримок та "завмирань екрана". Крім того, додайте до цього можливості необмеженої історії правок, швидкого пошукута заміни, порівняння бінарних файлів, повну підтримку ANSI, DOS/IBM-ASCII та EBCDIC. І ще десяток можливостей, деякі з яких будуть наведені нижче. HxD також дозволяє редагувати як диск, а й оперативну пам'ять. Як факт, але такий набір можливостей робить програму небезпечною іграшкою в руках користувачів-початківців. Крім того, програми безпеки можуть також реагувати на його дії, але досвідчені користувачірозуміють, що це відбувається через специфіку звернення до даних та використання потенційно небезпечних функцій.

Загалом HxD відмінно підійде тим, хто часто має справу з різним двійковим кодом.

Інші можливості та характеристики:

  • Безпечний доступ до файлів, які використовують інші програми
  • Генератор контрольних сум: Checksum, CRCs, Custom CRC, SHA-1, SHA-512, MD5, ...
  • Експорт даних у різні формати
  • Вставка шаблонів кодів
  • Можливість безпечного видаленняфайлів.
  • Поділ або об'єднання файлів
  • Різні види угруповань у стовпцях (1,2,4,8,16 байт)
  • Підсвічування змінених даних
  • Швидкий перехід до адреси
  • Підтримка копіювання даних буфера обміну з інших програм: Visual Studio / Visual C ++, WinHex, HexWorkshop, ...
  • Закладки
  • І багато іншого...

Hex-редактор Hexplorer аналог HxD з можливістю перегляду зображень при аналізі стеганографії

Ще одним чудовим hex-редактором є з відкритим вихідним кодом. Програма має низку унікальних особливостей, які роблять його ще й потужним редактором зображень у двійковому вигляді. Це означає, що ви можете подивитися на все графічні файлияк з погляду їх візуального подання, а й їх бінарного коду. Звичайно, складно уявити редагування картинок у шістнадцятковому вигляді у повсякденному житті. Однак його можна застосовувати для таких цілей, як стеганографія.

Загалом Hexplorer підійде не тільки тим, хто часто редагує бінарний код, але й тим, хто використовує нестандартні способивикористовувати двійковий код.

Основні можливості та характеристики:

  • Шість колірних схем інтерфейсу під різні завдання.
  • Необмежена історія команд
  • x86 дизассемблер
  • Імпорт та експорт у 20 різних форматів двійкових файлів, включаючи Intel Hex, Motorola S-Record, стандарт Atmel і т.д.
  • Можливість знайти повторювані закономірності в даних
  • Перегляд зображень
  • Фільтрування тексту із двійкових даних
  • Пошуковий алгоритм Бойєра-Мура
  • Швидка навігація за адресами
  • Дозволяє створювати структури простих типів даних, наприклад цілих чисел чи чисел з плаваючою точкою
  • Генератор псевдовипадкових чисел
  • Дозволяє записувати макроси (сценарії) для автоматизації завдань

Інші hex-редактори

Існують і інші hex-редактори, які так само заслуговують на увагу і можуть стати в нагоді.

Шістнадцятковий редактор XVI32 простий і зручний

XVI32 - це безкоштовний шістнадцятковий редактор, назва якого походить від римської цифри XVI (16).

  • Підтримує скрипти для автоматизації завдань.
  • Пошук за шаблоном
  • ASCII/ANSI
  • Конвертація символів на основі визначень для користувача
  • Запис окремих блоків у файл
  • І інші можливості...
  • Зберігає відкритий файлу пам'яті, так що з великими файлами будуть проблеми.
  • Як такої немає історії команд. Це означає, що всі зміни, що вносяться, вносяться "як є" і вам доведеться їх записувати або запам'ятовувати

Підтримує Windows 9x/NT/2000/XP/Vista/7

Hex-редактор HexEdit зі спеціалізованим калькулятором

HexEdit – ще один безкоштовний двійковий редактор від MiTeC.

  • Не потрібно встановлювати (портативна)
  • Редактор оперативної пам'ятіта диска
  • Спеціалізований калькулятор
  • Вміє порівнювати файли
  • Може скидати дані з оперативної пам'яті на диск (створювати дамп)
  • Та інші...
  • Зберігає відкриті файли у пам'яті

Підтримує Windows 2000 - Windows 7

Cygnus Free простий hex-редактор

Cygnus Free - це безкоштовний шістнадцятковий редактор, який є однією зі старих версій комерційного редактора. Тому функціональність обмежена.

  • Швидка та проста у використанні
  • Швидкий пошук та заміни
  • Drag & drop
  • І інші можливості...
  • Зберігає в оперативній пам'яті відкритий файл з усіма проблемами.
  • Технічної підтримки у безкоштовної версіїні
  • Обрізана за функціональністю

Підтримує Windows

Посібник з швидкого вибору (посилання на завантаження безкоштовних шістнадцяткових hex-редакторів)

HxD

Підтримка безлічі мов, включаючи російську. Редактор диска та оперативної пам'яті. Швидко редагує файли великих розмірів. Дозволяє генерувати контрольні суми. Вміє порівнювати файли. Вміє безпечно видаляти, склеювати та розділяти файли.
Усі зміни негайно зберігаються на диску. Тому, перед редагуванням завжди створюйте резервні копіїфайлів.
http://mh-nexus.de/en/hxd/
http://mh-nexus.de/en/downloads.php?product=HxD
850 KB 1.7.7.0 Unrestricted freeware Windows 95 - 7

Hexplorer

Редактор оперативної пам'яті та диска. Додаткові функції, такі як перетворення Фур'є. Перегляд зображень. Вміє розпізнавати заголовки NTFS/FAT, BMP тощо. Підтримує макроси для автоматизації завдань
Тримає відкритий файл повністю у пам'яті, через що великі файли важко редагувати. За промовчанням налаштування шрифтів та відображення вибрано не дуже вдало.

Hex Редактор Інструкція

  • Програма дуже корисна особливо для любителів присвоювати чуже- собі) Посилання на скачування (в низу теми).
  • Hex – редактор (англ. hex – editor), шістнадцятковий редактор – додаток для редагування даних, в якому дані представлені в «сиром.
  • У цій статті буде розказано про роботу в безкоштовному hex - редакторі Free Hex Editor Neo, на прикладі редагування файлу BkEnd.dll.
  • У першій частині циклу статей ми розглянули приклад дослідження файлу в hex - редакторі (з мінімальною аналітикою) і.
  • Для цього використовуються так звані hex-редактори. Найпершим зазвичай виникає питання: який редактор із усього. файлу, у другій - байти інструкції, у третій - ee мнемонічне позначення.

Як відомо, будь-який файл, зберігаючись на жорсткому диску комп'ютера, є послідовністю машинних слів - байтів. Байт, у свою чергу, складається з 8 бітів, кожен з яких може набувати значення «0» або «1», а це означає, що один байт може набувати 28=256 значень в діапазоні від 0 до 255. Число 25610, записане в шістнадцятковій системі, є круглим трицифровим числом - 10016, тобто для представлення будь-якого числа з діапазону 0-255 потрібно не більше 2 розрядів. А це означає, що значення кожного байта дуже зручно записати двоцифровим числом у шістнадцятковій системі числення. Hex-редактор (англ. hex-editor) показує нам файл, оскільки його «бачить» машина, саме, послідовністю байтів. Наприклад, відкривши файл у редакторі, ми побачимо матрицю, що складається з 16 колонок та числа рядків залежить від розміру файлу. Кожне значення матриці відповідає одному байту, записаному двозначним шістнадцятковим числом. Змінюючи значення потрібного байта, ми можемо, відповідно, змінити файл. Крім того, поруч з таблицею можемо побачити: Зліва від матриці відображається лінійка з чисел: кожному рядку відповідає число, що означає адресу/зміщення першого байта цього рядка. Крок адрес при цьому дорівнює кількості колонок. Зверху від матриці відображається інша лінійка: над кожною колонкою відображається зміщення байта, що стоїть у цій колонці, щодо першого байта відповідного рядка. Сума числа, що відповідає i-му рядку, і числа, що відповідає j-му колонці є адресою/зміщенням байта (i;j), що стоїть на перетині взятого рядка і взятого стовпця. Праворуч від матриці відображаються ті ж дані, але в іншій інтерпретації. Найчастіше використовується альтернативне відображення даних як тексту кодування ASCII , при цьому байти, значення яких відповідають недрукованим символам, відображаються як точки (·). Редагувати значення можна і в цій галузі. 2. Установка Free Hex Editor Neo Завантажуємо Free Hex Editor Neo з офіційного сайту. Програма безкоштовна, на момент написання статті останньою була версія 5.14. Встановлюємо, дотримуючись інструкцій інсталятора, не змінюючи стандартних налаштувань. Під час першого запуску програма запропонує вибрати режим інтерфейсу. Вибираємо "Novice user", цього більш ніж достатньо. 3. Робота з файлом hex-редактор Тепер відкриємо файл, який нам необхідно «підправити» вибравши «File» - «Open» - «Open File» в меню Free Hex Editor Neo. У моєму випадку це файл BkEnd.dll, що знаходиться в папці з встановленою 1С:Підприємство 7.7 (За замовчуванням «C:Program Files1Cv77BIN») для статті Установка 1С:Підприємство 7.7 на Microsoft SQL Server 2008 R2. Наприклад, мені потрібно у байт зі зміщенням 000d9cca записати значення eb. Для цього я знаходжу рядок «000d9cco» і стовпець «0a», двічі клацаю по потрібному осередку і забиваю нове значення. Діючи аналогічно, я вношу такі зміни: Для виправлення помилки «Потрібна MS SQL Server 6.5 + Service Pack 5a або старша версія!» змінюємо поля: по зміщенню 000d9cca значення 83 змінюємо на eb по зміщенню 000d9ccb значення e8 змінюємо на 15 по зміщенню 000db130 значення 83 змінюємо на eb по зміщенню 000db131 значення e8 змінюється на 10 Для виправлення помилки »: зі зміщенням 0018a79d значення 75 змінюємо на eb Для виправлення помилки «Неправильний синтаксис навколо ключового слова«TRANSACTION» Фразу DUMP TRANSACTION %s WITH TRUNCATE_ONLY , яка знаходиться по зміщенню 002856B0 замінюємо на фразу ALTER DATABASE %s SET RECOVERY SIMPLE Для виправлення помилки «База даних не може бути відкрита в однокористувальному режимі»2 змінюємо поля4 на 6b за зміщенням 0028549d значення 62 змінюємо на 70

Ви зможете не тільки виділяти, а й переглядати, редагувати, замінювати та аналізувати дані, завантажити Free Hex Editor Neo можна нижче.

Використання Hex Editor `а для РВ клієнта. exe-файли можна редагувати вручну для отримання будь-якої користі. Якщо ви.

Відео для програми Free Hex Editor Neo. Тут зібрані деякі відеоролики щодо Free Hex Editor Neo. Як користуватись Free.


HxD для редагування файлів у шістнадцятковому коді. Починаючи писати огляд hex - редактора з короткою назвою HxD, ми і.


Створено 04 лип 2015

У цій статті буде розказано про роботу в безкоштовному hex-редакторі Free Hex Editor Neo, на прикладі редагування файлу BkEnd.dllіз постачання для коректної роботи цієї системи з .

1. Трохи про hex-редакторів та файли

Як відомо, будь-який файл, зберігаючись на жорсткому диску комп'ютера, є послідовністю машинних слів — байтів. Байт, у свою чергу, складається з 8 бітів, кожен з яких може набувати значення «0» або «1», а це означає, що один байт може набувати 2 8 =256 значень в діапазоні від 0 до 255. Число 256 10 , записане в шістнадцятковій системі, є круглим тризначним числом - 100 16 , тобто для подання будь-якого числа з діапазону 0-255 потрібно не більше 2 розрядів. А це означає, що значення кожного байта дуже зручно записати двоцифровим числом у шістнадцятковій системі числення.

Hex-редактор (англ. hex-editor) показує нам файл, оскільки його «бачить» машина, саме, послідовністю байтів. Наприклад, відкривши файл у редакторі, ми побачимо матрицю, що складається з 16 колонок та числа рядків залежить від розміру файлу. Кожне значення матриці відповідає одному байту, записаному двозначним шістнадцятковим числом. Змінюючи значення потрібного байта, ми можемо, відповідно, змінити файл.

Крім того, поруч із таблицею можемо побачити:

  • Зліва від матриці відображається лінійка з чисел: кожному рядку відповідає число, що означає адресу/зміщення першого байта цього рядка. Крок адрес при цьому дорівнює кількості колонок.
  • Зверху від матриці відображається інша лінійка: над кожною колонкою відображається зміщення байта, що стоїть у цій колонці, щодо першого байта відповідного рядка. Сума числа, що відповідає i-тому рядку, і числа, що відповідає j-тій колонці є адресою/зміщенням байта (i;j), що стоїть на перетині взятого рядка та взятого стовпця.
  • Праворуч від матриці відображаються ті ж дані, але в іншій інтерпретації. Найчастіше використовується альтернативне відображення даних як тексту кодування ASCII , при цьому байти, значення яких відповідають недрукованим символам, відображаються як точки (·). Редагувати значення можна і в цій галузі.

2. Установка Free Hex Editor Neo

Наприклад, мені потрібно в байт зі зміщенням 000d9ccaзаписати значення eb. Для цього я знаходжу рядок «000d9cco» і стовпець «0a», двічі клацаю по потрібному осередку і забиваю нове значення.

Діючи аналогічно, я вношу такі зміни:

  1. Для виправлення помилки « Потрібна MS SQL Server 6.5 + Service Pack 5a або старша версія!» змінюємо поля:
    зі зміщення 000d9ccaзначення 83 міняємо на eb
    зі зміщення 000d9ccbзначення e8міняємо на 15
    зі зміщення 000db130значення 83 міняємо на eb
    зі зміщення 000db131значення e8міняємо на 10
  2. Для виправлення помилки « Порядок сортування, встановлений для бази, відрізняється від системного!»:
    зі зміщення 0018a79dзначення 75 міняємо на eb
  3. Для виправлення помилки « Неправильний синтаксис біля ключового слова «TRANSACTION»
    Фразу DUMP TRANSACTION %s WITH TRUNCATE_ONLY, яка знаходиться по зміщенню 002856B0замінюємо на фразу ALTER DATABASE %s SET RECOVERY SIMPLE
  4. Для виправлення помилки « База даних не може бути відкрита в режимі одного користувача», змінюємо поля:
    зі зміщення 0028549cзначення 64 міняємо на 6b
    зі зміщення 0028549dзначення 62 міняємо на 70

Після того, як усі зміни зроблено, збережемо файл, натиснувши « File» — « Save» .

Чи допомогла Вам ця стаття?