![]() | |
| 原作者 | ニコラ・ファリエール |
|---|---|
| 開発者 | PNFソフトウェア株式会社 |
| 安定版リリース | 5.21 / 2024年12月9日[1] |
| 書かれた | ジャワ |
| オペレーティング·システム | Microsoft Windows、Mac OS X、Linux |
| プラットフォーム | ジャワ |
| タイプ | リバースエンジニアリング |
| ライセンス | 独自 |
| Webサイト | ホームページ |
JEBはAndroidアプリケーション[2]とネイティブマシンコード用の逆アセンブラおよび逆コンパイラソフトウェアです。DalvikバイトコードをJavaソースコードに、x86、ARM、MIPS、RISC-VマシンコードをCソースコードに逆コンパイルします。アセンブリとソースの出力はインタラクティブで、リファクタリングできます。ユーザーは独自のスクリプトやプラグインを書いてJEBの機能を拡張することもできます。
バージョン2.2では、Dalvikおよびネイティブ(Intel、ARM、MIPS)コード用のAndroidデバッグモジュールが導入されました。ユーザーは、「明示的にデバッグを許可していないアプリも含め、すべてのアプリのDalvikバイトコードとネイティブマシンコードをシームレスにデバッグできます」。[3]
バージョン 2.3 では、ネイティブ コード デコンパイラが導入されました。JEB に同梱された最初のデコンパイラは、MIPS 32 ビット インタラクティブ デコンパイラでした。
JEB 3 には、Intel x86、Intel x86-64、WebAssembly (wasm)、Ethereum (evm)、Diem ブロックチェーン (diemvm) などの追加のデコンパイラが付属しています。
JEB 4 は 2021 年にリリースされました。JEB 4.5 には RISC-V デコンパイラーが追加されました。JEB 4.16 には S7 PLC ブロック デコンパイラーが追加されました。
JEB 5は2023年にリリースされました。
歴史
JEB は、リバース エンジニアが相互参照を調べたり、コメントを挿入したり、クラスやメソッドなどの項目の名前を変更したりできるように、インタラクティブな出力を提供する最初の Dalvik デコンパイラです。可能な限り、バイトコードとデコンパイルされた Java コード間の対応関係にユーザーがアクセスできます。JEB はデコンパイラとしてブランド化されていますが、完全な APK ビュー (マニフェスト、リソース、証明書など) も提供します。APIを使用すると、ユーザーはPythonと Java でスクリプトとプラグインを介してアクションをカスタマイズまたは自動化できます。
この名前は、よく知られているセキュリティ ソフトウェア IDA を参照している可能性があります (「JEB」= rot1 (「IDA」))。
デコンパイラ
JEB には、次の独自およびオープンソースのデコンパイラ プラグインが付属しています。
- Dalvik バイトコードから Java へ
- JavaバイトコードからJavaへ
- Intel x86/x86-64 マシンコードから C へ
- ARM マシンコードから C へ
- MIPS マシンコードから C へ
- RISC-V マシンコードから C
- S7 (MC7)バイトコードから C
- WebAssemblyバイトコードから C へ
- EVM バイトコード(コンパイルされた Ethereum スマート コントラクト) をSolidityのようなソース コードに変換
- Diemバイトコード[4](Diemブロックチェーン上で実行されるコンパイルされたdiemvmモジュール)からmvirのような(Move IR)ソースコード
その他のプラグイン
JEBには多数の逆アセンブラとデバッガプラグインが付属しています。[5]
JEB では、ネイティブまたはサードパーティのプラグインを追加することで、あらゆるファイル形式の解析が可能です。例としては、PDF パーサー プラグイン (独自仕様)、XLS ドキュメント プラグイン (オープンソース) などがあります。
参照
参考文献
- ^ JEB 変更リスト
- ^ Chell 他著「モバイル アプリケーション ハッカー ハンドブック」240-241 ページ。2015
- ^ JEB製品説明ページ
- ^ GitHub リポジトリ
- ^ 機能マトリックス
外部リンク
- 公式サイト

