
Apkx-Hunter v2.6.0
CベースのAndroid静的解析フレームワーク。逆コンパイル、シークレット検出、エンドポイント発見、権限解析、ネイティブライブラリスキャンに加え、ML支援によるシークレット分類を提供します。
APKX-Hunter v3.0.0 -- Debian パッケージ
Black Hat Arsenal Europe 2026 における APKX-Hunter
Black Hat Europe Arsenal で APKX-Hunter を見る
APKX-Hunter は、完全に C で書かれたオープンソースの Android 静的解析フレームワークであり、Android セキュリティ評価、リバースエンジニアリング、マルウェア解析、OWASP MASVS コンプライアンススキャン、バグバウンティハンティング、APK テスト、ペネトレーションテストのために専用に設計されています。
このフレームワークは、APK、APKS、APKM、XAPK、ZIP アーカイブを含むサポート対象の Android パッケージ形式を自動的に抽出・解析することで、単一アプリケーションの解析と大規模な Android アプリケーションの解析の両方をサポートします。再帰的マルチ APK スキャン、サイレントバッチモード、整理されたスキャン出力を備えた APKX-Hunter は、個々のアプリケーションだけでなく大規模な Android アプリケーションコレクションも効率的に処理し、クリーンで構造化された実用的な結果を生成するように設計されています。
APKX-Hunter は、デコンパイル、AndroidManifest 解析、パーミッション解析、エクスポートされたコンポーネントの検出、エンドポイント探索、ハードコードされたシークレットの検出、クラウド設定の探索、ネイティブライブラリの検出、OWASP MASVS セキュリティチェックなど、複数の静的解析手法を組み合わせて、Android アプリケーション内のセキュリティに関連する情報を明らかにします。
APKX-Hunter はまた、統合されたインタラクティブなコマンドラインシェルを提供し、研究者に解析操作の実行、スキャンモードの設定、プロジェクトワークフローのナビゲート、ターミナルから直接 APKX-Hunter と対話するための専用フレームワークインターフェースを提供します。シェルの機能には、コマンド履歴、インタラクティブなコマンド処理、スキャン制御、および繰り返しの解析ワークフローをより高速かつ効率的にするために設計されたフレームワークレベルのコマンドが含まれます。
このフレームワークには、デコンパイルおよび抽出されたアプリケーションのソースコードを解析するためのコード検索・調査エンジンが含まれています。研究者はプロジェクトディレクトリを再帰的に検索して特定のコードパターンや文字列を探すことができ、これにより疑わしい実装の調査、セキュリティ上重要な機能の追跡、脆弱なパターンの特定、大規模なデコンパイル済みコードベースの迅速なナビゲートが容易になります。
APKX-Hunter はまた、完全に C で書かれた軽量な機械学習ベースのシークレット分類エンジンを統合しており、検出されたシークレットを信頼度と重大度に基づいて自動的に分類します。これにより、誤検知を減らし、脆弱性のトリアージを加速するのに役立ちます。
このフレームワークは解析プロセス全体を通じて整理された構造化出力ファイルを生成し、関連する検出結果とセキュリティ結果を明確なカテゴリに分けて、調査、レポート作成、さらなる解析を容易にします。すべてのスキャンの最後に、APKX-Hunter はスキャンされた APK の数、解析されたファイル、検出されたシークレット、検出されたパターン、MASVS の検出結果など、詳細なスキャン統計を生成し、研究者にセキュリティ評価全体の包括的な概要を提供します。
APKX-Hunter は、アプリケーションの抽出と自動検出から手動のコード調査およびセキュリティトリアージに至るまで、完全な Android 静的解析ワークフローとして設計されています。
- GitHub: https://github.com/SyscallX-18113/Apkx-Hunter
- 開発者: SyscallX-18113
- バージョン: v3.0.0

OWASP MASVS スキャンサポート
Apkx-Hunter は現在、15 カテゴリと 100 の検出パターンを備えた OWASP MASVS セキュリティスキャンを搭載しています:
| # | カテゴリ | パターン数 |
|---|---|---|
| 1 | 弱い暗号化 | 18 |
| 2 | 証明書ピンニング | 6 |
| 3 | ルート検出 | 7 |
| 4 | アンチデバッグ | 6 |
| 5 | アンチタンパー | 4 |
| 6 | SharedPreferences | 9 |
| 7 | SQLite | 3 |
| 8 | 外部ストレージ | 5 |
| 9 | 動的コード読み込み | 3 |
| 10 | リフレクション | 2 |
| 11 | 実行時コマンド実行 | 4 |
| 12 | WebView セキュリティ | 14 |
| 13 | ネットワークセキュリティ | 10 |
| 14 | SSL 検証 | 5 |
| 15 | ネイティブライブラリ読み込み | 4 |
| 合計 | 100 |
OWASP 検証
APKXHunter は OWASP UnCrackable Level 4 アプリケーションに対してテストされています。スキャンは複数のセキュリティ上の問題を正常に検出し、その OWASP MASVS スキャンエンジンと Android 静的解析機能の有効性を実証しました。

機能
- OWASP MASVS サポート — Apkx-Hunter は現在、14 以上のカテゴリと100 の検出パターンを備えた包括的な OWASP MASVS セキュリティスキャンを搭載しています:
- JADX 逆コンパイル — 高速モードと詳細モードの逆コンパイル
- APKTool 逆コンパイル — APKTool ベースの完全な逆コンパイルとスキャン
- アーカイブ展開 — APK、APKM、APKS、XAPK、ZIP 形式をサポート
- 逆コンパイル済みフォルダのスキャン — 逆コンパイル済みの JADX ソースディレクトリをスキャン
- APKTool フォルダのスキャン — 逆コンパイル済みの APKTool ディレクトリをスキャン
- シークレット検出 — API キー、トークン、パスワード、埋め込まれたシークレットを発見
- エンドポイント探索 — URL、エンドポイント、セキュリティに関連するパターンを特定
- Android パーミッション解析 — パーミッションとエクスポートされたアクティビティを解析
- ネイティブ (.so) ライブラリ検出 — アプリにバンドルされたネイティブライブラリを検出
- ファイルインベントリ生成 — 完全なファイルインベントリレポートを生成
- 機械学習ベースのシークレット分類 (注目機能) — 検出されたシークレットに対する ML 支援の信頼度スコアリングにより、トリアージを加速し、シークレット検出における誤検知を削減
- 再帰的な複数 APK スキャン — 大規模な Android アプリケーション解析のために複数の APK を自動的に再帰スキャン
- 自動パッケージ展開 — APKS、APKM、XAPK、ZIP パッケージ形式から APK を自動的に展開して解析
- サイレントバッチモード — 大規模スキャン中のターミナル出力を整理しつつ、解析結果を保持
- スキャン終了時の統計 — スキャンした APK、解析したファイル、検出したシークレット、検出したパターン、MASVS の検出結果を含む詳細なスキャンサマリーを表示
- 強化されたコマンドラインインターフェース — 引数解析、入力検証、ユーザーフレンドリーなエラー報告を改善
- フレームワークの安定性向上 — エラー処理、メモリ管理、フレームワーク全体の信頼性を強化
- シェル統合 — コマンド履歴、スキャン制御、フレームワークレベルのコマンドを備えた統合インタラクティブフレームワークシェルを追加
- コード検索と調査 — ファイルパス、行番号、一致した行、周辺のコードコンテキストを含む再帰的なソースコード検索を追加
- カテゴリ別 MASVS 検出結果 — MASVS のセキュリティ検出結果を専用カテゴリに整理し、解析とレポート作成を容易に
- ターミナルモードでの出力なし - スキャン中にターミナルへ検出結果や出力を表示しません。
機械学習モデル
APKXHunter はオフラインの機械学習分類器を使用します。model.bin には、検出されたシークレットの信頼度スコアを計算するために使用される学習済みの数値重みのみが含まれています。
これは実行可能ファイルではありません。
コードは含まれていません。
バイナリデータとしてのみ読み込まれます。
- オフライン ML 推論 — すべてのモデル推論はローカルで実行され、クラウド API やインターネット接続は不要
- 信頼確率スコアリング — 検出された各シークレットは、学習済みモデルから信頼確率を受け取ります
プロジェクト統計
- 言語: C
- コードベース: 6,700 行以上
- アーキテクチャ: モジュール式
- プラットフォーム: Linux
プラットフォームサポート
- Linux (サポート対象)
- Windows (サポート対象外)
- macOS (サポート対象外)
パフォーマンス
以下の結果は開発中に実施したテストに基づくものです。
| 指標 | テスト値 |
|---|---|
| オペレーティングシステム | Kali Linux |
| テストに使用したRAM | 8 GB |
| CPU | Intel Core i3-2120 |
| 正常にデコンパイルまたはスキャンできた最大APK | 85 MB |
| 平均デコンパイル時間 | 約50~60秒 |
システム要件
最小要件:
- Linux
- 4 GB RAM
- JADX
- APKTool
- unzip
推奨:
- Linux
- 8 GB RAM以上
- クアッドコアCPU
- SSDストレージ
MLシークレット分類
APKXHunterは、シークレット検出ワークフローの一部として、完全にCで記述された軽量な機械学習ベースのシークレット分類エンジンを統合しています。これは統計的機械学習モデルであり、大規模言語モデル、ChatGPT、生成AI、ディープラーニングシステムではありません。
- APKXHunterが検出したシークレットは、統合された機械学習分類エンジンによって分析されます。
- モデルは、検出されたシークレットが有効またはセキュリティ上重要である確率を推定します。
- 検出結果は、信頼度ベースの重大度スコアリングを使用して優先順位付けされます。
- MLエンジンは、研究者が検出結果をより迅速にトリアージするのを支援します。
- MLエンジンは、手動検証を置き換えるのではなく、人間による分析を支援するように設計されています。
仕組み
- 潜在的なシークレットを検出します。
- 統計的特徴(エントロピー、文字分布、長さ、大文字/小文字の比率、数字、記号、その他の統計的トークン特性)を抽出します。
- 学習済みモデル(
model.bin)を読み込みます。 - ML推論を実行します。
- 信頼確率を生成します。
- 手動検証のために結果をユーザーに提示します。
セキュリティに関する注意
すべての機械学習推論は、学習済みのmodel.binファイルを使用してローカルで実行されます。APKXHunterは、スキャンされたデータ、検出されたシークレット、その他の分析出力を外部に送信しません。クラウドAPIは使用されず、ML推論にインターネット接続は必要ありません。
シェルコマンド
| コマンド | 用途 |
|---|---|
help | 利用可能なコマンドを表示 |
run | APKX-Hunter分析を実行 |
clear | ターミナルをクリア |
banner | APKX-Hunterのバナーを表示 |
exit | フレームワークを終了 |
run search <folder> <string> | コードを再帰的に検索・調査 |
run <apk_file/folder> [options] | 分析スキャンを実行 |
インストール
Debian / Kali / Ubuntu
Debianパッケージをインストールします:
sudo dpkg -i apkx-hunter_3.0.0-1_amd64.deb
依存関係管理: JADX、Apktool、Java、その他必要なツールを自動的に確認してインストールします。
run install-dependencies
使用方法
USAGE
run <package/folder> [options] [options]
一般オプション
| フラグ | 説明 |
|---|---|
help | ヘルプメッセージを表示します。 |
スキャンモード
JADX のスキャンモード
| フラグ | 説明 |
|---|---|
fast | 高速な jadx 逆コンパイルを実行し、抽出されたフォルダをスキャンします。 |
deep | 完全な詳細 jadx 逆コンパイルを実行し、抽出されたフォルダをスキャンします。 |
注: これらのフラグは apk ファイル名を指定した後にのみ使用してください
例:
run app.apk fast
APKTool のスキャンモード
| フラグ | 説明 |
|---|---|
apktool | apktool による逆コンパイルを実行し、抽出されたフォルダをスキャンします。 |
注: これらのフラグは apkfile 名を指定した後にのみ使用してください
例:
run app.apk apktool
フォルダからの複数 APK スキャンモード
| フラグ | 説明 |
|---|---|
multi-apk | 複数 APK のデコンパイルを実行し、抽出されたフォルダをスキャンします。 |
注: これらのフラグは、apk_files_folder 名を指定した後にのみ使用してください
例:
run Apks multi-apk
APKパッケージスキャンモード:
| フラグ | 説明 |
|---|---|
extract-multi-apk | パッケージ (APKS/APKM/XAPK/ZIP) を展開し、展開されたすべてのAPKを自動的に解析します。 |
注: これらのフラグは、apk_package_file名を指定した後にのみ使用してください
例:
run test.apkm extract-multi-apk