Skip to content
KitploitKITPLOIT
ツールエクスプロイトブログ
Log in
提出
ツールエクスプロイトブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

フィードお問い合わせプライバシー© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
APKiD — Androidアプリケーションのパッカー、プロテクター、難読化ツール、および変種を識別する - Android向けPEiD | Kitploit
ツール/GitHubGitHub/rednaga/apkid
Androidセキュリティ静的分析モバイルアプリペンテストリバースエンジニアリングマルウェア分析モバイルセキュリティAndroidセキュリティ 第8位モバイルアプリペンテスト 第9位モバイルセキュリティ 第9位
2.6k3428723日前Kitploit レビュー済み

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
GitHub
rednaga/apkid

APKiD

Androidアプリケーションのパッカー、プロテクター、難読化ツール、および変種を識別する - Android向けPEiD

リポジトリを見る

APKiD

Build Status PyPI PyPI - Python Version PyPI - Format PyPI - License

APKiD は、APK がどのように作られたかに関する情報を提供します。多くのコンパイラ、パッカー、難読化ツール、その他の奇妙なものを識別します。Android 版の PEiD です。

Screen Shot 2019-05-07 at 10 55 00 AM

このツールがどのような用途に使えるかの詳細については、以下をご覧ください:

  • Android Compiler Fingerprinting
  • Detecting Pirated and Malicious Android Apps with APKiD
  • APKiD: PEiD for Android Apps (BlackHat EU/UK Arsenal 2018)
  • APKiD: Fast Identification of AppShielding Products
  • APKiD: Fast Identification of Mobile RASP SDKs (BlackHat USA Arsenal 2023)

インストール

pip install apkid

Docker

APKiD を Docker で実行することもできます!もちろん、これには git と Docker がインストールされている必要があります。

Docker の使い方は次のとおりです:

git clone https://github.com/rednaga/APKiD
cd APKiD/
docker build . -t rednaga:apkid
docker/apkid.sh ~/reverse/targets/android/example/example.apk
[+] APKiD 3.1.0 :: from RedNaga :: rednaga.io
[*] example.apk!classes.dex
 |-> compiler : dx

使用方法

usage: apkid [-h] [-v] [-t TIMEOUT] [-r] [--scan-depth SCAN_DEPTH]
             [--entry-max-scan-size ENTRY_MAX_SCAN_SIZE] [--typing {magic,filename,none}] [-st] [-j]
             [-o DIR] [-m] [--print-filter RULES] [--include-types]
             [FILE ...]

APKiD - Android Application Identifier v3.2.0

positional arguments:
  FILE                                       apk, dex, or directory (default: None)

options:
  -h, --help                                 show this help message and exit
  -v, --verbose                              log debug messages (default: False)

scanning:
  -t TIMEOUT, --timeout TIMEOUT              Yara scan timeout (in seconds) (default: 30)
  -r, --recursive                            recurse into subdirectories (default: False)
  --scan-depth SCAN_DEPTH                    how deep to go when scanning nested zips (default: 2)
  --entry-max-scan-size ENTRY_MAX_SCAN_SIZE  max zip entry size to scan in bytes, 0 = no limit
                                             (default: 104857600)
  --typing {magic,filename,none}             method to decide which files to scan (default: magic)
  -st, --scan-trackers                       scans for embedded trackers (default: False)

output:
  -j, --json                                 output scan results in JSON format (default: False)
  -o DIR, --output-dir DIR                   write individual results here (implies --json)
                                             (default: None)
  -m, --print-matches                        print matched rules and strings to stdout (default:
                                             False)
  --print-filter RULES                       filter printed matches: comma-separated rule names to
                                             include ('+' or no prefix) or exclude ('-' prefix).
                                             Implies --print-matches. Use '=' when the value starts
                                             with '-', e.g. --print-filter=-is_apk,-is_signed_apk
                                             (default: )
  --include-types                            include file type info for matched files (default:
                                             False)

新しいパッカー / コンパイラ / 難読化ツールの提出

APKiD が認識しない APK や DEX を見つけた場合は、GitHub issue を作成して以下をお知らせください:

  • それが何だと思われるか -- 難読化、パック、など
  • ファイルハッシュ (MD5、SHA1、SHA256 のいずれか)

「検出するのに興味深いもの」について、どのようなアイデアでも歓迎します。パッカー、コンパイラ、難読化ツールだけに限定する必要はありません。興味深いアンチディスアセンブラ、アンチ VM、アンチ何某のトリックがあれば、issue を作成してください。

プルリクエストも歓迎します。新しいルールを提出する場合は、ルールを確認できるよう、APK / DEX のファイルハッシュを必ず含めてください。

ライセンス

このツールはデュアルライセンスで提供されています: クローズドソースプロジェクトに適した商用ライセンスと、オープンソースソフトウェアで使用できる GPL ライセンスです。

ニーズに応じて、いずれかを選択し、そのポリシーに従う必要があります。各ライセンスタイプのポリシーと契約の詳細は、LICENSE.COMMERCIAL および LICENSE.GPL ファイルに記載されています。

ハッキング

変更を加えたり、独自のルールを開発したりするために最新バージョンをインストールしたい場合は、このリポジトリをクローンし、ルールをコンパイルし、パッケージを編集可能モードでインストールするだけです:

git clone https://github.com/rednaga/APKiD
cd APKiD
python prep-release.py
pip install -e .[dev,test]

上記の python prep-release.py コマンドを実行するには、yara-python と yara-python-dex のパッケージがすでにインストールされている必要があります。

ローカルマシンや Python のインストール場所に依存する権限エラーにより上記が機能しない場合は、--user フラグを指定してみてください。これは仮想環境を使用していない場合に必要となる可能性が高いです:

pip install -e .[dev,test] --user

ルールを更新した場合は、必ず prep-release.py を実行して再コンパイルしてください。

Windows を使用している場合は、コンパイル前に以前のバージョンの Yara をアンインストールし、Yara 3.11.0 と yara-python-dex をインストールしてください

pip uninstall -y yara-python yara-python-dex
pip install yara-python==3.11.0 wheel
pip wheel --wheel-dir=yara-python-dex git+https://github.com/MobSF/yara-python-dex.git
pip install --no-index --find-links=yara-python-dex yara-python-dex

パッケージメンテナ向け

新しいバージョンをリリースする際は、apkid/init.py でバージョンが更新されていることを確認してください。

テストの実行については、.travis.yml を参照して、開発環境とテスト環境のセットアップ方法およびテストの実行方法を確認してください。

コンパイル済みルールと readme を更新し、パッケージをビルドして PyPI にアップロードします:

./prep-release.py readme
rm -f dist/*
python setup.py sdist bdist_wheel
twine upload --repository-url https://upload.pypi.org/legacy/ dist/*

詳細については、Packaging Projects を参照してください。

ツールをダウンロード