4 poin oleh GN⁺ 2024-06-30 | 1 komentar | Bagikan ke WhatsApp

Editor Hex untuk reverse engineer, programmer, dan orang-orang yang bekerja pukul 3 pagi

Dukungan

  • Dukungan tersedia melalui GitHub Sponsors, Patreon, dan PayPal

Tangkapan layar

  • Menyediakan tangkapan layar tambahan

Fitur

Tampilan hex yang kaya

  • Patching byte, manajemen patch, Undo/Redo tanpa batas
  • Menyalin byte dalam berbagai format
  • Pencarian string dan hex yang sederhana
  • Pindah ke awal, akhir, atau posisi kursor saat ini
  • Highlighting yang beragam
  • Ditampilkan sebagai berbagai tipe data
  • Mendekode data dalam ASCII dan encoding kustom
  • Melihat data halaman

Bahasa pola mirip C++

  • Pemuatan otomatis berbasis tipe MIME dan nilai magic
  • Mendukung visualisasi berbagai tipe data
  • Pesan kesalahan yang berguna, penyorotan sintaks, dan penanda error

Dukungan tema

  • Mode malam sebagai default, dengan dukungan warna dan gaya kustom
  • Dukungan font kustom

Impor dan ekspor data

  • File Base64, patch IPS dan IPS32, laporan Markdown

Inspektor data

  • Menafsirkan data sebagai berbagai tipe
  • Menyalin dan memodifikasi byte
  • Mendukung penambahan tipe data baru

Preprocessor data berbasis node

  • Modifikasi data, dekripsi, dan decoding
  • Mendukung penambahan node kustom

Memuat berbagai sumber data

  • File lokal, disk raw, server GDB, data Intel Hex dan Motorola SREC, memori proses

Pencarian data

  • Mencari di seluruh file atau area yang dipilih
  • Ekstraksi string, pencarian urutan, pencarian ekspresi reguler, pola biner, pencarian nilai numerik

Dukungan hashing data

  • Berbagai algoritma tersedia
  • Hashing untuk area tertentu dan string arbitrer

Dukungan diffing

  • Membandingkan sumber data yang berbeda
  • Highlighting perbedaan dan tampilan tabel

Disassembler terintegrasi

  • Mendukung semua arsitektur yang didukung Capstone

Bookmark

  • Mendukung nama dan warna kustom
  • Highlighting area bookmark dan lompat ke bookmark

Analyzer data dan alat visualisasi

  • Parser file berbasis file magic dan basis data tipe MIME
  • Grafik distribusi tipe byte, grafik entropi

Dukungan aturan YARA

  • Memindai file dengan aturan YARA resmi
  • Highlighting hasil cocok dan lompat ke hasil cocok

Alat yang berguna

  • Berbagai demangler, tabel ASCII, pengganti ekspresi reguler, evaluator ekspresi matematika, kalkulator grafik, pemilih warna, konverter basis, byte swabber, kalkulator izin UNIX, pencari definisi istilah Wikipedia, utilitas file, visualizer Float IEEE754, klien/server TCP, kalkulator algoritma Euclid

Pembaruan konten bawaan

  • Mengunduh file dari basis data

Antarmuka modern

  • Mendukung banyak workspace dan layout kustom
  • Jendela yang dapat dilepas

Mudah untuk memulai

  • Mendukung berbagai bahasa, mode sederhana untuk pemula, dokumentasi yang luas, banyak contoh file di basis data, tutorial interaktif

Bahasa pola

  • Mendefinisikan struktur dan tipe data dengan sintaks mirip C
  • Mem-parsing dan me-highlight isi file

Basis data

  • Pola format, pustaka, file magic, dan file konstanta

Persyaratan

  • Memerlukan GPU dan dukungan OpenGL 3.0
  • Mendukung Windows, macOS, dan Linux

Instalasi

  • Lihat panduan instalasi

Kompilasi

  • Memerlukan GCC atau Clang, dengan dukungan C++23 atau lebih baru

Kontribusi

  • Lihat panduan kontribusi

Pengembangan plugin

  • Gunakan proyek template

Kredit

  • Terima kasih kepada kontributor utama dan pustaka yang digunakan

Lisensi

  • Sebagian besar berlisensi GPLv2-only, sebagian berlisensi LGPLv2.1

Opini GN⁺

  • ImHex adalah alat yang sangat berguna untuk pekerjaan reverse engineering dan pemrograman. Terutama unggul dalam kemampuan memvisualisasikan dan menganalisis berbagai tipe data.
  • Memiliki fitur ramah pengguna seperti mode malam, yang dapat mengurangi kelelahan mata saat bekerja lama.
  • Berkat kompatibilitasnya dengan berbagai sumber data, alat ini dapat dimanfaatkan di banyak lingkungan.
  • Alat lain dengan fungsi serupa antara lain HxD dan 010 Editor.
  • Saat mengadopsi teknologi baru atau open source, kelebihan dan kekurangannya perlu dipertimbangkan dengan matang. Misalnya, untuk ImHex, dukungan GPU adalah persyaratan wajib.

1 komentar

 
GN⁺ 2024-06-30
Komentar Hacker News
  • ImHex adalah editor hex terbaik yang pernah saya gunakan

    • Fitur template file secara otomatis menyorot bagian-bagian dari jenis file yang sudah dikenal
    • Menafsirkan byte yang dipilih sebagai berbagai tipe data sekaligus dan menampilkannya
    • Jauh lebih cepat daripada editor lain saat menangani file berukuran besar
    • Kekurangannya, UI imgui kadang-kadang bermasalah
  • Saya penasaran apakah ada cara agar editor ini menampilkan byte ASCII dengan glif CP437

    • Dulu saya membaca file biner di DOS dengan cara ini, dan saya bisa membaca glif lebih cepat daripada nilai hex
    • Menampilkan karakter yang tidak dapat dicetak sebagai titik tidak memberikan banyak informasi
  • Saya sudah mencoba ImHex, tetapi terasa terlalu rumit

    • Di macOS, saya masih lebih memilih Hex Fiend
    • Sederhana, cepat, dan menyediakan fitur yang saya inginkan
    • Di Windows, saya masih belum menemukan editor hex yang benar-benar "sederhana"
  • Bahasa polanya sangat berguna dan sangat membantu untuk belajar

    • Saya suka sekali dengan program ini
  • ImHex umumnya memerlukan GPU yang mendukung OpenGL 3.0

    • Saya penasaran mengapa editor hex memerlukan OpenGL
    • Saya ingin tahu apakah memang ada alasan perlu OpenGL atau itu hanya demi tampilan yang keren
  • ImHex terlihat bagus

    • Saya menggunakan fitur pencarian wildcard di 010 Editor, dan ImHex juga menyediakan fitur itu
    • Karena menawarkan lebih banyak fitur, saya akan mencobanya
  • Saya sangat menyukai area budaya komputer seperti ini

    • Rekayasa balik, menulis modul kernel, memahami cara kerja sesuatu, dan membuatnya melakukan hal yang tidak dirancang untuknya
    • Namun, jarang ada cara untuk melakukannya secara legal, dan sering kali membutuhkan banyak waktu serta bantuan rekan
  • Proyek ini sangat luar biasa

    • Saya sangat menikmati mengutak-atik ROM jam tangan pintar Philips
    • Ada DSL bawaan mirip Rust, sehingga sangat ringan bahkan tanpa manajemen memori
    • Ini memungkinkan visualisasi dan ekstraksi data terstruktur dari aliran biner
    • Ada juga editor visual untuk melakukan perhitungan sederhana tanpa kode
    • Saat saya mencobanya, terasa agak belum matang
    • Menulis kode dengan DSL terasa lebih intuitif dan mudah
  • Untuk saat ini saya akan tetap menggunakan 010 Editor

    • Ini adalah editor hex paling mengesankan yang pernah saya gunakan
    • Saya tidak menyukai framework GUI yang digunakan di proyek-proyek baru ini (Dear ImGui)
    • Itu ditujukan untuk sistem tertanam dengan layar kecil dan tanpa pengelola jendela, dan di lingkungan desktop memberikan pengalaman yang canggung karena kurangnya integrasi UI
  • Proyek ini tampak cukup keren

    • Saya penasaran apakah mengembangkan editor hex sebagai proyek adalah ide yang bagus
    • Editor hex sederhana tidak terlalu sulit, tetapi ada banyak ruang untuk berlatih seperti mem-parsing format file
    • Ada juga banyak peluang untuk mengembangkan alat rekayasa balik