ELF、PE、Mach-O、Androidの実行ファイル形式を解析・変更・抽象化する、PythonおよびRustバインディングを備えたクロスプラットフォームのC++ライブラリ。
zodiacon/TotalPE2
EXE、DLL、SYS、静的ライブラリ、COFFオブジェクト、ELFファイルに対応し、逆アセンブルとデコンパイルも行えるWindows向けPEビューア・解析ツールです。
代替できる製品:PE Explorer
CFF Explorer
- スター
- 377
- フォーク
- 44
- 未解決の Issue
- 3
- 最終コミット
- 12 日前
これは何?
Total PE 2は、バイナリファイルの内部を閲覧するためのツールです。WindowsのPE実行ファイル、DLL、ドライバー、静的ライブラリ、COFFオブジェクトファイル、ELFファイルを開けるほか、拡張子ではなくファイルの内容から種類を判別します。ヘッダー、エントロピー付きのセクション、データディレクトリ、インポートとエクスポート、リソース、Authenticode署名、Control Flow Guardテーブル、CLRメタデータ、オーバーレイデータを、それぞれ閲覧できるビューで表示します。
コード解析では、シンボル名と相互参照を含めてx86、x64、ARM64のコードを逆アセンブルし、フローグラフを描画します。また、Ghidraのデコンパイラを統合し、変数名と型を変更したCコードを出力できます。PDBファイルからシンボルを読み込めるほか、シンボルのないバイナリ内のライブラリ関数を、Visual C++およびWDKの静的ライブラリのシグネチャと照合できます。さらに、hexビュー、ファイル比較機能、Search All機能、VirusTotal検索も備えています。
このプロジェクトはC++で書かれており、Visual Studio 2026とvcpkgの依存関係を使ってビルドします。ライセンスはMITで、作者は開発中のプロジェクトと説明しています。
主な機能
- 01PE、COFF、静的ライブラリ、ELFファイルを開き、内容に基づいて種類を判別します。
- 02ヘッダー、エントロピー付きのセクション、インポート、エクスポート、データディレクトリを表示します。
- 03相互参照とフローグラフを含めて、x86、x64、ARM64のコードを逆アセンブルします。
- 04Ghidraのデコンパイラを使って関数をCコードにデコンパイルし、名前の変更やコメントの追加を行えます。
- 05PDBシンボルを読み込み、静的ライブラリのシグネチャを使ってライブラリ関数に名前を付けます。
- 062つのPEファイルを比較し、インポート、エクスポート、文字列、シンボルをまとめて検索します。
ユースケース
- 不審なWindows実行ファイルやDLLを実行前に調査する。
- ドライバーやバイナリのインポート、証明書、CFGデータを確認する。
- Visual C++でビルドされたELFバイナリやオブジェクトファイルをリバースエンジニアリングする。
- PEファイルの2つのビルドを比較し、変更点を確認する。
使う前に知っておきたいこと
- READMEでは、このプロジェクトは開発中と説明されています。
- READMEにはビルドやインストールの手順が記載されていません。
収録されている特集
トピック
よくある質問
- TotalPE2 とは?
- EXE、DLL、SYS、静的ライブラリ、COFFオブジェクト、ELFファイルに対応し、逆アセンブルとデコンパイルも行えるWindows向けPEビューア・解析ツールです。 Total PE 2は、バイナリファイルの内部を閲覧するためのツールです。WindowsのPE実行ファイル、DLL、ドライバー、静的ライブラリ、COFFオブジェクトファイル、ELFファイルを開けるほか、拡張子ではなくファイルの内容から種類を判別します。ヘッダー、エントロピー付きのセクション、データディレクトリ、インポートとエクスポート、リソース、Authenticode署名、Control Flow Guardテーブル、CLRメタデータ、オーバーレイデータを、それぞれ閲覧できるビューで表示します。
- TotalPE2 は無料で使えますか?ライセンスは?
- TotalPE2 は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- TotalPE2 は今もメンテナンスされていますか?
- 活発にメンテナンス中。TotalPE2 の最終コミットは 2026年10月26日 です。
- TotalPE2 は何に使えますか?
- 不審なWindows実行ファイルやDLLを実行前に調査する。 ドライバーやバイナリのインポート、証明書、CFGデータを確認する。 Visual C++でビルドされたELFバイナリやオブジェクトファイルをリバースエンジニアリングする。 PEファイルの2つのビルドを比較し、変更点を確認する。
- TotalPE2 はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/zodiacon/TotalPE2
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
Ghidraは、NSAが開発したオープンソースのソフトウェアリバースエンジニアリングフレームワークです。
バイナリの解析、逆アセンブル、デバッグに使える、UNIX系のリバースエンジニアリングフレームワークとコマンドラインツール群。
バイナリ、アプリ、ファームウェア、ファイル形式、プロトコルを対象とする、注釈付きの厳選リバースエンジニアリングツール・学習リソース集。
x64dbgをHTTP経由で操作し、ブレークポイントの設定、ステップ実行、メモリ読み取りなどをAIアシスタントから行えるMCPプラグインです。
実行せずにファイル形式や実行ファイルのコンパイラ、パッカー、保護機能を特定する、クロスプラットフォーム対応の識別・静的解析ツール。