バイナリ、アプリ、ファームウェア、フォーマット、プロトコル向けに厳選されたリバースエンジニアリングツールと学習リソース。
注目: REA — アプリケーションの挙動からネイティブバイナリまでを対象とする、エージェント指向のリバースエンジニアリングツール。awesome-reverse-engineering の作者によるものです。
バイナリ、アプリケーション、ファームウェア、ファイルフォーマット、プロトコルを理解するための厳選された出発点です。
必要な作業内容からツールを探せます。各項目にはその目的が記載されています。商用ツールには commercial と表示されています。これは初期の選定であり、追加や修正を受け付けています。
| あなたの作業 | まずはこれから |
|---|---|
| アセンブリとリバースエンジニアリングの基礎を学ぶ | 学習 |
| 実行ファイルとその機能を特定する | ファイルの識別とトリアージ |
| ネイティブコードを読む、またはステップ実行する | ネイティブ解析 と デバッガ |
| 呼び出しをトレースする、または実行中のプログラムを計測する | 動的計測とトレーシング |
| アンチデバッグを回避する、アンパックする、またはインポートを再構築する | 難読化解除とアンチ解析 |
| 不審なファイル、プロセス、またはメモリイメージを調査する | マルウェア解析 |
| APK、.NET アセンブリ、または Java プログラムを検査する | Android とマネージドコード |
| iOS アプリ、macOS バイナリ、または Apple ファームウェアを検査する | iOS と macOS |
| Python、Go、Flutter、または Hermes バイナリをアンパックする | 言語ランタイムとパッケージャ |
| ブラウザの挙動や未公開のプロトコルを理解する | Web とプロトコル |
| ファームウェアを抽出する、またはバイナリフォーマットを検査する | ファームウェアとハードウェア と ファイルフォーマット |
| ゲームのメモリ構造、アセット、またはバイトコードを再構築する | ゲームリバースエンジニアリング |
| ビルドを比較する、またはバイナリ差分を監査する | バイナリ差分とパッチ解析 |
| 制約を解く、状態を探索する、またはセマンティクスを持ち上げる | シンボリック実行と形式解析 と 命令リフティングとセマンティクス |
| AI エージェントで調査を加速する | AI 支援解析 |


