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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
Obfuscapk — Androidアプリ向けの自動難読化ツールで、ブラックボックス方式で動作し、高度な難読化機能をサポートし、新しい技術で容易に拡張可能なモジュラーアーキテクチャを備えています。 | Kitploit
ツール/GitHubGitHub/claudiugeorgiu/obfuscapk
Androidセキュリティ静的分析動的分析 (サンドボックス)リバースエンジニアリングモバイルセキュリティ論文と研究学習と教育Archived
GitHubclaudiugeorgiu/obfuscapk

Obfuscapk

Androidアプリ向けの自動難読化ツールで、ブラックボックス方式で動作し、高度な難読化機能をサポートし、新しい技術で容易に拡張可能なモジュラーアーキテクチャを備えています。

リポジトリを見る
1.3k323602年前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有

[!IMPORTANT] このプロジェクトはアーカイブされ、メンテナンスは終了しました。

よくある質問はこちらで回答しています: FAQ および トラブルシューティング。

Logo

Androidアプリのためのブラックボックス難読化ツール。

Codacy Code Coverage Python Version License

Obfuscapk は、ソースコードを必要とせずにAndroidアプリを難読化するためのモジュール式Pythonツールです。元のapkファイルを逆コンパイルし、逆コンパイルされたsmaliコード、リソース、マニフェストにいくつかの難読化技術を適用した後、apktoolを使用して新しいアプリケーションをビルドします。難読化されたアプリは元のアプリと同一の機能を保持しますが、内部の違いにより、新しいアプリケーションが元のアプリとは大きく異なる場合があります(例:シグネチャベースのアンチウイルスソフトウェアにとって)。

🆕 Android App Bundle サポート 🆕

Obfuscapkは、BundleDecompilerを使用してAndroid App Bundle(aabファイル)のサポートを追加しています(#121を参照)。この新機能を使用するには、こちらから最新のBundleDecompilerをダウンロードし、PATHに含まれるディレクトリ(例:Ubuntuでは/usr/local/binまたは/usr/bin)にBundleDecompiler.jarとして保存し、実行可能フラグが設定されていることを確認してください。

[!IMPORTANT] BundleDecompilerはまだWindowsで動作しないため、WindowsプラットフォームではObfuscapkによるアプリバンドルの難読化はサポートされていません。また、アプリバンドルサポートはまだ初期開発段階にあるため、問題が発生した場合や改善に協力したい場合は、contributingをご覧ください。

❱ 論文

Obfuscapk の詳細は、論文「Obfuscapk: An open-source black-box obfuscation tool for Android apps」にあります。 以下のように引用できます:```BibTeX @article{aonzo2020obfuscapk, title = "Obfuscapk: An open-source black-box obfuscation tool for Android apps", journal = "SoftwareX", volume = "11", pages = "100403", year = "2020", issn = "2352-7110", doi = "https://doi.org/10.1016/j.softx.2020.100403", url = "https://www.sciencedirect.com/science/article/pii/S2352711019302791", author = "Simone Aonzo and Gabriel Claudiu Georgiu and Luca Verderame and Alessio Merlo", keywords = "Android, Obfuscation, Program analysis" }

## ❱ デモ

![Demo](https://assets.kitploit.com/production/public/readmes/3132/632e285a29e53c28a5549c70012673a2761ca3ca4fd7eac3ad89be3d6a9a2a21.gif)



## ❱ アーキテクチャ

![Architecture](https://assets.kitploit.com/production/public/readmes/3132/da41bec35f1c09df38ad201aa1e74f0b1426dba0201162a70b4d5376b3da654e.png)

Obfuscapkはモジュール式で拡張しやすいように設計されており、[プラグインシステム](https://github.com/tibonihoo/yapsy)を使用して構築されています。その結果、すべての難読化ツールは抽象的な[ベースクラス](https://github.com/ClaudiuGeorgiu/Obfuscapk/blob/master/src/obfuscapk/obfuscator_category.py)を継承し、`obfuscate`メソッドを実装する必要があるプラグインとなります。ツールが新しいAndroidアプリケーションファイルの処理を開始すると、必要な情報(例:デコンパイルされた`smali`コードの場所)と操作の内部状態(例:すでに使用された難読化ツールのリスト)を保存するための[難読化オブジェクト](https://github.com/ClaudiuGeorgiu/Obfuscapk/blob/master/src/obfuscapk/obfuscation.py)を作成します。その後、難読化オブジェクトは、すべてのアクティブなプラグイン/難読化ツール(順次)に`obfuscate`メソッドのパラメータとして渡され、処理および変更されます。アクティブなプラグインのリストと順序は、[コマンドラインオプション](#-usage)で指定されます。

このツールは新しい難読化ツールで簡単に拡張できます。難読化技術を実装したソースコードとプラグインメタデータ(`<obfuscator-name>.obfuscator`ファイル)を[`src/obfuscapk/obfuscators`](https://github.com/ClaudiuGeorgiu/Obfuscapk/tree/master/src/obfuscapk/obfuscators)ディレクトリに追加するだけで十分です(簡単な既存の難読化ツール、例えば[`Nop`](https://github.com/ClaudiuGeorgiu/Obfuscapk/blob/master/src/obfuscapk/obfuscators/nop/nop.py)を出発点の例として参照してください)。ツールは自動的に新しいプラグインを検出するため、追加の設定は不要です(新しいプラグインはツールにバンドルされている他のすべてのプラグインと同様に扱われます)。



## ❱ インストール

Obfuscapkの動作するコピーを自分のコンピュータに入手する方法は2つあります。[Dockerを使用する](#docker-image)か、`Python 3`環境で[ソースコードを直接使用する](#from-source)かです。どちらの場合も、最初に行うことはこのリポジトリのローカルコピーを取得することです。プロジェクトを保存したいディレクトリでターミナルを開き、リポジトリをクローンしてください:```Shell
$ git clone https://github.com/ClaudiuGeorgiu/Obfuscapk.git

Dockerイメージ


前提条件

これはObfuscapkの推奨されるインストール方法です。必要なのは、最新バージョンのDockerがインストールされていることだけです。```Shell $ docker --version Docker version 20.10.21, build baeda1f

#### 公式 Docker Hub イメージ

[公式 Obfuscapk Docker イメージ](https://hub.docker.com/r/claudiugeorgiu/obfuscapk)
は Docker Hub で利用可能です(このリポジトリから自動ビルドされています):```Shell
$ # Download the Docker image.
$ docker pull claudiugeorgiu/obfuscapk
$ # Give it a shorter name.
$ docker tag claudiugeorgiu/obfuscapk obfuscapk

Install

Docker Hub から公式イメージをダウンロードした場合は、すぐにツールを使用できますので使用方法をご確認ください。それ以外の場合は、先ほど作成した Obfuscapk/src/ ディレクトリ(Dockerfile を含むフォルダ)で次のコマンドを実行して Docker イメージをビルドしてください:```Shell $ # Make sure to run the command in Obfuscapk/src/ directory. $ # It will take some time to download and install all the dependencies. $ docker build -t obfuscapk .

Dockerイメージの準備ができたら、すべてが正しくインストールされているか簡単なテストを行ってください:```Shell
$ docker run --rm -it obfuscapk --help
usage: python3 -m obfuscapk.cli [-h] -o OBFUSCATOR [-w DIR] [-d OUT_APK_OR_AAB]
...

Obfuscapkは使用可能になりました。詳細は使用手順を参照してください。


ソースから


前提条件

以下のツールの最新バージョンがインストールされ、コマンドラインから利用可能であることを確認してください: apktool、 apksigner、 zipalign。```Shell $ apktool Apktool v2.9.0 - a tool for reengineering Android apk files ...

```Shell
$ apksigner
Usage:  apksigner <command> [options]
        apksigner --version
        apksigner --help
...
$ zipalign
Zip alignment utility
Copyright (C) 2009 The Android Open Source Project
...

アプリバンドルの難読化をサポートするには、BundleDecompilerも必要です。最新バージョンをこちらからダウンロードし、BundleDecompiler.jarとしてPATHに含まれるディレクトリ(例:Ubuntuでは/usr/local/binまたは/usr/bin)に保存し、実行可能フラグが設定されていることを確認してください。

BundleDecompilerとapktoolを使用するには、最新のJavaバージョンも必要です。zipalignとapksignerはAndroid SDKに含まれています。実行可能ファイルの場所は、以下の環境変数を使用して指定することもできます:APKTOOL_PATH、BUNDLE_DECOMPILER_PATH、APKSIGNER_PATH、ZIPALIGN_PATH(例:Ubuntuでは、同じターミナルでObfuscapkを実行する前にexport APKTOOL_PATH=/custom/location/apktoolを実行してください)。

上記のツール以外に、このプロジェクトの必要条件は、動作するPython 3(少なくとも3.7)のインストール(パッケージマネージャーpipと共に)のみです。

インストール

プロジェクトのメインディレクトリ(Obfuscapk/)で以下のコマンドを実行して、必要な依存関係をインストールします。```Shell $ # Make sure to run the commands in Obfuscapk/ directory.

$ # The usage of a virtual environment is highly recommended. $ python3 -m venv venv $ source venv/bin/activate

$ # Install Obfuscapk's requirements. $ python3 -m pip install -r src/requirements.txt

要件がインストールされた後、すべてが正しく動作することを確認するために簡単なテストを行ってください:```Shell
$ cd src/
$ # The following command has to be executed always from Obfuscapk/src/ directory
$ # or by adding Obfuscapk/src/ directory to PYTHONPATH environment variable.
$ python3 -m obfuscapk.cli --help
usage: python3 -m obfuscapk.cli [-h] -o OBFUSCATOR [-w DIR] [-d OUT_APK_OR_AAB]
...

Obfuscapkが使用可能になりました。詳細は使用方法をご覧ください。

❱ 使用方法

以降、Obfuscapkは obfuscapk という実行可能ファイルとして扱われます。ツールのインストール方法に応じてコマンドを適宜変更してください:

ツールをダウンロード