AndroidのDex、APKなどを読みやすいJavaソースコードに変換するCLIツールとGUI。
Col-E/Recaf
IDEのようなインターフェースで、コンパイル済みアプリを逆コンパイル、編集、難読化解除、エクスポートできるJava/Androidバイトコードエディター。
- スター
- 7,455
- フォーク
- 548
- 未解決の Issue
- 61
- 最終コミット
- 4 日前
これは何?
Recafは、コンパイル済みのJavaおよびAndroidアプリケーション向けのバイトコードエディターです。元のソースコードがなくてもJARを開き、使い慣れたIDEのようなインターフェースでクラスを閲覧できます。また、逆コンパイルしたソースコードまたはバイトコードアセンブラーのレベルでコードを編集し、変更したアプリケーションをエクスポートできます。
逆コンパイルビューではCFR、Procyon、Fernflowerを利用でき、検索機能では文字列、定数、クラス参照、メソッド、バイトコード命令のパターンを検索できます。Recafには、オペーク定数や述語に対するバイトコード変換、パターンに基づく一括リネーム、他のツールで使うマッピングのエクスポートなど、難読化されたコードの解析ツールも含まれています。
このプロジェクトは、分析ワークフローを自動化するためのスクリプトAPIとヘッドレスCLIモードを提供しており、GradleでビルドすることもIDEで開くこともできます。
主な機能
- 01CFR、Procyon、Fernflowerで逆コンパイルし、生成されたJavaソースを直接編集できます。
- 02変数名、構文フィードバック、制御フローの可視化に対応したバイトコードアセンブラーを利用できます。
- 03文字列、定数、クラス参照、メソッド、命令パターンを検索できます。
- 04バイトコード変換とパターンベースのリネームを適用して、アプリケーションの難読化を解除できます。
- 05コマンドラインから実行するスクリプトでワークフローを自動化できます。
ユースケース
- ソースコードがないJavaまたはAndroidアプリを調査する。
- スケルトンコードを生成して、JARに含まれていないライブラリクラスにパッチを適用する。
- 保護されたJavaアプリケーションや難読化されたJavaアプリケーションを解析し、難読化を解除する。
- ヘッドレスモードで、繰り返し行うリバースエンジニアリング作業をスクリプト化する。
クイックスタート
- 1
リポジトリをクローンする
git clone https://github.com/Col-E/Recaf.git - 2
Gradleでプロジェクトをビルドする
gradlew build - 3
ビルドしたjarをrecaf-ui/build/libsから実行する
使う前に知っておきたいこと
- 開発環境をセットアップするには、GradleまたはIDEを使ってソースからビルドする必要があります。
収録されている特集
トピック
よくある質問
- Recaf とは?
- IDEのようなインターフェースで、コンパイル済みアプリを逆コンパイル、編集、難読化解除、エクスポートできるJava/Androidバイトコードエディター。 Recafは、コンパイル済みのJavaおよびAndroidアプリケーション向けのバイトコードエディターです。元のソースコードがなくてもJARを開き、使い慣れたIDEのようなインターフェースでクラスを閲覧できます。また、逆コンパイルしたソースコードまたはバイトコードアセンブラーのレベルでコードを編集し、変更したアプリケーションをエクスポートできます。
- Recaf は無料で使えますか?ライセンスは?
- Recaf は MIT ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
- Recaf は今もメンテナンスされていますか?
- 活発にメンテナンス中。Recaf の最終コミットは 2026年11月2日 です。
- Recaf は何に使えますか?
- ソースコードがないJavaまたはAndroidアプリを調査する。 スケルトンコードを生成して、JARに含まれていないライブラリクラスにパッチを適用する。 保護されたJavaアプリケーションや難読化されたJavaアプリケーションを解析し、難読化を解除する。 ヘッドレスモードで、繰り返し行うリバースエンジニアリング作業をスクリプト化する。
- Recaf のインストール方法は?
- リポジトリをクローンする: git clone https://github.com/Col-E/Recaf.git Gradleでプロジェクトをビルドする: gradlew build ビルドしたjarをrecaf-ui/build/libsから実行する
- Recaf はどこで入手できますか?
- ソースコードとインストール手順は GitHub にあります:https://github.com/Col-E/Recaf
概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。
関連プロジェクト
クローズドなAndroid APKをリバースエンジニアリングするCLIツール。リソースをほぼ元の形にデコードし、変更後に再ビルドできます。
JADXプラグインとPython製MCPサーバーを組み合わせ、ClaudeなどのLLMがJADX GUI上で逆コンパイル済みAndroid APKをリアルタイムに解析できます。
jarを展開せずに、内部のクラスファイルやリソースファイルを直接編集できるIntelliJ IDEAプラグイン。
コンパイル済みの.NETバイナリを読みやすいC#に戻す、オープンソースのクロスプラットフォーム.NETアセンブリブラウザー兼逆コンパイラー。
ソースコードなしで.NETやUnityのアセンブリをデバッグ・編集できる、dnSpyの非公式継続プロジェクト。