ImHex - 🔍 リバース エンジニア、プログラマー、および午前 3 時に作業するときに網膜を重視する人々のための Hex エディター。

(🔍 A Hex Editor for Reverse Engineers, Programmers and people who value their retinas when working at 3 AM.)

Created at: 2020-11-10 22:27:00
Language: C++
License: GPL-2.0

🔍イムヘックス

リバース エンジニア、プログラマー、および午前 3 時に作業するときに網膜を重視する人々のための 16 進エディター。

「ビルド」ワークフローのステータス 不和サーバー 総ダウンロード数

サポート

私の仕事が気に入ったら、GitHub スポンサー、Patreon、または PayPal で私をサポートすることを検討してください。どうもありがとう!

GitHub 寄付ボタン パトロンの寄付ボタン PayPal 寄付ボタン

スクリーンショット

16 進エディタ、パターンおよびデータ情報 ブックマーク、逆アセンブラ、およびデータ プロセッサ

特徴

  • 特徴的なヘックスビュー
    • バイトパッチ
    • パッチ管理
    • 特徴としてバイトをコピー
      • バイト
      • 16 進文字列
      • C、C++、C#、Rust、Python、Java & JavaScript 配列
      • ASCII アート 16 進数ビュー
      • HTML 自己完結型 div
    • 文字列および 16 進検索
    • カラフルなハイライト
    • 開始、終了、現在のカーソル位置から移動
  • ファイルのコンテンツを強調表示する解析用の C++ に似たカスタム パターン言語
    • MIME タイプに基づく自動ロード
    • 配列、ポインター、構造体、共用体、列挙型、ビットフィールド、名前空間、リトルエンディアンとビッグ エンディアンのサポート、条件文などなど!
    • 便利なエラー メッセージ、構文の強調表示、およびエラー マーキング
  • 深夜のセッションで使用しても網膜が燃え尽きることはありません
    • デフォルトではダークモードですが、ライトモードも利用可能です
  • データのインポート
    • Base64 ファイル
    • IPS および IPS32 パッチ
  • データのエクスポート
    • IPS および IPS32 パッチ
  • データをさまざまなタイプ (リトルエンディアンとビッグ エンディアン) として解釈できるデータ インスペクタ
  • 高速で効率的な読み込みによる巨大ファイルのサポート
  • 文字列検索
    • 文字列のコピー
    • デマングル文字列のコピー
  • ファイルハッシュのサポート
    • カスタムの初期値と多項式を使用した CRC16 および CRC32
    • MD4、MD5
    • SHA-1、SHA-224、SHA-256、SHA-384、SHA-512
  • 多くのアーキテクチャをサポートする逆アセンブラー (Capstone のフロントエンド)
    • ARM32 (ARM、親指、Cortex-M、AArch32)
    • ARM64
    • MIPS (MIPS32、MIPS64、MIPS32R6、マイクロ)
    • x86 (16 ビット、32 ビット、64 ビット)
    • PowerPC (32 ビット、64 ビット)
    • スパーク
    • IBM SystemZ
    • xCORE
    • M68K
    • TMS320C64X
    • M680X
    • イーサリアム
    • RISC-V
    • WebAssembly
    • MOS565XX
    • バークレー パケット フィルタ
  • ブックマーク
    • 領域の強調表示
    • コメント
  • データ アナライザー
    • ファイル マジック ベースのファイル パーサーと MIME タイプ データベース
    • バイト分布グラフ
    • エントロピーグラフ
    • 最高および平均エントロピー
    • 暗号化/圧縮ファイルの検出
  • ビルトインコンテンツストア
    • データベースで見つかったすべてのファイルを ImHex 内から直接ダウンロードします
  • ヤラルールのサポート
    • 公式の yara ルールを使用してファイルの脆弱性をすばやくスキャンする
  • 便利なツール
    • Itanium および MSVC デマングラー
    • アスキーテーブル
    • 正規表現の置き換え
    • 数式評価器(電卓)
    • 16 進数のカラー ピッカー
    • ベースコンバーター
    • UNIX パーミッション計算機
    • Anonfiles ファイルアップロードツール
    • ウィキペディアの用語定義ファインダー
    • ファイルユーティリティ
      • ファイルスプリッター
      • ファイルコンバイナー
      • ファイルシュレッダー

パターンランゲージ

ImHex によって開発および使用されている C に似たカスタム パターン言語は、読みやすく、理解しやすく、習得しやすいものです。言語のすべての機能を備えたガイドは、ドキュメント ページにあります。

データベース

フォーマット パターン、ライブラリ、マジック ファイル、および定数ファイルについては、ImHex-Patternsリポジトリを確認してください。

自分のファイルも自由に PR してください。

要件

ImHex を使用するには、次の最小システム要件を満たす必要があります。

  • OS : Windows 10 以降、macOS 11 (Big Sur) 以降、「モダン」Linux (Ubuntu 22.04+、Fedora および Arch Linux が正式にサポートされています)
  • CPU : x86_64 (64ビット)
  • GPU : OpenGL 3.0 以上 (Intel HD グラフィックスではなく、専用 GPU が望ましい)
  • RAM : 512MB、より複雑な分析にはさらに必要になる場合があります
  • ストレージ:100MB

プラグイン開発

ImHex のプラグインを開発するには、次の 2 つのテンプレート プロジェクトのいずれかを使用して開始します。その後、ImHex API とコンテンツ レジストリだけでなく、libimhex 全体にアクセスして、ImHex とやり取りしたり、新しいコンテンツを追加したりできます。

夜間ビルド

Nightlies は、こちらのGitHub Actions から入手できます。

サードパーティのリポジトリ

ImHex は、さまざまなサードパーティのリポジトリで利用できます。

梱包状態

コンパイル中

どのプラットフォームでも ImHex をコンパイルするには、C++23 以降をサポートするバージョンの GCC が必要です。macOS では、一部の ObjC コードをコンパイルするために Clang も必要です。

サブモジュールを使用して多くの依存関係がリポジトリにバンドルされているため、

--recurse-submodules
オプションを使用してクローンを作成してください。バンドルされていないすべての依存関係は、フォルダーにある依存関係インストーラー スクリプトを使用してインストールでき
/dist
ます。

クレジット

寄稿者

  • Maryは、ImHex を MacOS に移植し、開発を支援してくれました。
  • ImHexに MSI インストーラーのサポートを追加するための Roblabla
  • jam1garnerとraytwoは、プラグインに Rust サポートを追加するのを手伝ってくれました
  • ImHexを Flathub に入れるための Mailaender
  • リリース パッケージと GitHub アクション ランナーに関連する多くの改善についてiTrooz 。
  • Discord または GitHub で問題を報告してくれ、私と素晴らしい会話ができた他のすべての人:)

依存関係

  • インターフェース全体を構築するために使用される 素晴らしいDear ImGuiを提供してくれたocornutに感謝します
    • このプロジェクトのベースとして使用される 16 進エディター ビューについても、ocornut に感謝します。
    • パターン言語の構文強調表示に使用された素晴らしいImGuiColorTextEditについて、BalazsJako に感謝します。
  • プロジェクトファイルに使用されたjsonライブラリのnlohmannに感謝します
  • 分解ウィンドウのベースであるcapstone のaquynhに感謝します
  • 書式設定とログ記録を大幅に改善するlibfmtライブラリの vitaut に感謝します。
  • ダウンロードしたストア アセットの抽出に使用されたmicrotarの rxi に感謝します
  • nativefiledialog-extendedの btzy に感謝
  • xdgppのdanyspin97に感謝
  • ImHex でライブラリが使用されている他のすべてのグループと組織に感謝します