
Androidのセキュリティに関する包括的な洞察。
Androidセキュリティの全スペクトルを可視化
機能 • 検出一覧 • インストール • 使い方 • レポート
Black Hat MEA 2023 および Black Hat ASIA 2024 で紹介されました

APKDeepLensは、Android APKファイル向けのPythonベースの静的解析ツールです。JADXを使ってAPKを逆コンパイルし、OWASP Mobile Top 10(2024)を網羅した多層的なセキュリティスキャンを実行します。各検出項目には重要度(CRITICAL / HIGH / MEDIUM / LOW / INFO)とOWASPカテゴリがタグ付けされ、結果はJSON、HTML、PDF、またはTXT形式で出力されます。
完全なチェックID、正規表現パターン、証拠例については DETECTION.md を参照してください。
要件: Python 3.10以上、Java / OpenJDK
git clone https://github.com/d78ui98/APKDeepLens.git
cd APKDeepLens
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python APKDeepLens.py --help
git clone https://github.com/d78ui98/APKDeepLens.git
cd APKDeepLens
python3 -m venv venv
.\venv\Scripts\activate
pip install -r requirements.txt
python APKDeepLens.py --help
docker build -t apkdeeplens .
docker run --rm -v /path/to/apk/files:/apk apkdeeplens -apk /apk/file.apk
# 基本スキャン - JSONレポートを出力
python APKDeepLens.py -apk app.apk
# ソースが既に展開されている場合は逆コンパイルをスキップ
python APKDeepLens.py -apk app.apk -source_code_path /path/to/source
# HTMLレポートを生成
python APKDeepLens.py -apk app.apk -report html
# PDFレポートを生成
python APKDeepLens.py -apk app.apk -report pdf
# プレーンテキストレポートを生成
python APKDeepLens.py -apk app.apk -report txt
# 出力ディレクトリを指定
python APKDeepLens.py -apk app.apk -report json -o /path/to/output/
# 仮想環境チェックをスキップ(CI/CD向け)
python APKDeepLens.py -apk app.apk --ignore_virtualenv
すべてのレポートは出力パスの reports/ サブディレクトリに保存されます。
完全なJSON出力スキーマについては DETECTION.md を参照してください。
APKDeepLens/
├── APKDeepLens.py # メインエントリポイント
├── report_gen.py # レポート生成(JSON、HTML、PDF、TXT)
├── report_template.html # HTMLレポートテンプレート
├── requirements.txt
└── static_tools/
├── code_scanner.py # 深いコードパターンセキュリティスキャナ(40以上のチェック)
├── scan_android_manifest.py # マニフェストパーサー + セキュリティチェッカー
├── sensitive_info_extractor.py # ハードコードされた秘密 + 安全でないURLスキャナ
├── known_false_positives.txt # 厳選された誤検出フィルターリスト
└── utility/
└── utility_class.py # 共有定数(DANGEROUS_PERMISSIONS、ユーティリティ)
機能リクエスト、バグ報告、プルリクエストは github.com/d78ui98/APKDeepLens/issues で受け付けています。
| カテゴリ | チェック数 | 重要度範囲 | OWASP |
|---|
| マニフェストセキュリティ | 10 | CRITICAL → MEDIUM | M3–M9 |
| 暗号 | 7 | CRITICAL → MEDIUM | M1、M10 |
| WebViewセキュリティ | 6 | CRITICAL → HIGH | M4、M5、M7、M9 |
| SSL / TLS | 5 | CRITICAL → MEDIUM | M5 |
| 動的コード実行 | 4 | HIGH → MEDIUM | M4、M7 |
| 安全でないデータ保存 | 6 | HIGH → LOW | M4、M6、M9 |
| ログ / プライバシー | 3 | MEDIUM → LOW | M6 |
| Intentセキュリティ | 2 | HIGH → MEDIUM | M4 |
| Zipパストラバーサル | 1 | HIGH | M4 |
| ハードコードされた秘密 | 16+ | — | M1 |
| 安全でない通信 | — | — | M5 |
| 形式 | 説明 |
|---|
| JSON(デフォルト) | 機械可読。すべての検出項目に id、severity、owasp、description、evidence が含まれます。パイプライン統合に最適。 |
| HTML / PDF | 色分けされた重要度テーブル - CRITICALは赤、HIGHはオレンジ、MEDIUMは琥珀色。 |
| TXT | 人間が読みやすい形式で、重要度順に並べられた検出項目とファイルの場所、説明が含まれます。 |