Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
hooker — Hookerは、Androidアプリケーションの動的分析のためのオープンソースプロジェクトです。このプロジェクトは、対象となるアプリケーションによって行われるAPI呼び出しを自動的にインターセプトおよび変更するために使用できる、さまざまなツールやアプリケーションを提供します。 | Kitploit
ツール/GitHubGitHub/androidhooker/hooker
Androidセキュリティ動的分析 (サンドボックス)モバイルアプリペンテストAPIセキュリティテスト情報収集ペネトレーションテストArchived
GitHubandroidhooker/hooker

hooker

Hookerは、Androidアプリケーションの動的分析のためのオープンソースプロジェクトです。このプロジェクトは、対象となるアプリケーションによって行われるAPI呼び出しを自動的にインターセプトおよび変更するために使用できる、さまざまなツールやアプリケーションを提供します。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

Hooker: Androidアプリケーションの自動動的解析

Hookerについて

機能説明

Hookerは、Androidアプリケーションの動的解析のためのオープンソースプロジェクトです。このプロジェクトは、対象のアプリケーションによって行われたAPI呼び出しを自動的に傍受および変更するために使用できるさまざまなツールとアプリケーションを提供します。

このプロジェクトは、Android Substrateフレームワークを利用してこれらの呼び出しを傍受し、そのコンテキスト情報(パラメータ、戻り値など)をすべて集約します。収集された情報は、ElasticSearchまたはJSONファイルに保存できます。

また、一連のアプリケーションによって行われたすべてのAPI呼び出しを収集する解析の実行を自動化するためのPythonスクリプトも提供されています。

免責事項

Android-Hookerは、Substrateフレームワークに依存する概念実証です。つまり、お使いのデバイスにSubstrateが正しくインストールされていない場合、Hookerは動作しません。現時点では、作者はAndroid 4.1および4.2のデバイスにSubstrateをインストールすることに成功しています。より上位のバージョンにSubstrateをインストールする方法をご存知の方は、[email protected]までメールでお知らせください。このプロジェクトに統合できれば幸いです。

技術的説明

Hookerは複数のモジュールで構成されています:

  1. APK-instrumenter は、解析の前にAndroidデバイス(例えばエミュレータ)にインストールする必要があるAndroidアプリケーションです。
  2. hooker_xp は、Androidデバイスを制御し、そのデバイス上でのアプリケーションのインストールと刺激をトリガーするために使用できるPythonツールです。
  3. hooker_analysis は、ElasticSearchデータベースに保存された結果を収集するために使用できるPythonスクリプトです。
  4. tools/APK-contactGenerator は、偽の連絡先情報を注入するためにhooker_xpによってAndroidデバイスに自動的にインストールされるAndroidアプリケーションです。
  5. tools/apk_retriever は、さまざまなオンライン公開AndroidマーケットからAPKをダウンロードするために使用できるPythonツールです。
  6. tools/emulatorCreator は、エミュレータを準備するために使用できるスクリプトのコレクションです。

詳細情報

  • ウェブサイト: https://github.com/AndroidHooker/hooker
  • FAQ はこちらで入手できます。
  • バグトラッカー: バグや機能リクエストはGitHub Issuesで管理されています。
  • メール: [email protected]
  • Twitter: 作者のアカウントをフォローしてください(@Tibapbedoum と @Lapeluche)。

はじめに

私たちはDebian 64ビットシステムを使用してHookerを開発しました。そのため、不適切なパスやパラメータにより、他のシステムでは正しく実行できない可能性があります。これらの非互換性を特定するためのご協力をいただければ幸いです。使用中にエラーが発生した場合は、バグトラッカーに問題を報告してください。

Hookerを使用するには、以下をインストールしたサーバーが少なくとも1台必要です:

  • python 2.7,
  • elasticsearch 1.7,
  • kibana 4.1,
  • Android 4.1 and 4.2,
  • androguard 1.9.

ElasticSearchホストのセットアップ

このステップはElasticSearchのインストールに関するものです。ElasticSearchのオンラインドキュメント http://www.elasticsearch.org/overview/elkdownloads/ をダウンロードして参照してください。ElasticSearchを単一ホストにインストールするか、ElasticSearchノードのクラスタをデプロイすることができます。

Android SDKのセットアップ

Androidバンドルはここからダウンロードできます。Hookerのインストールスクリプトを使用するには、次のことを行う必要があります:

  • 環境変数 ANDROID_HOME を設定してください:$ export ANDROID_HOME=/path/to/your/sdk/folder

  • SDKマネージャーからSDK APIをダウンロードします。

インストール

必要な依存関係をすべてビルドおよびインストールするためのインストールスクリプトが提供されています。 このスクリプトを使用する場合は、次の依存関係がインストールされていることを確認してください:

root@kitploit:~
# openjdk-7-jdk, ant, python-setuptools (just apt install them)

準備ができたら、Hookerのルートディレクトリでインストールスクリプトを実行します:

root@kitploit:~
$ ./install.sh

リファレンスAndroid仮想デバイス(AVD)の構築

  • 利用可能なターゲットがあることを確認します:$ $ANDROID_HOME/tools/android list target。
  • 簡単なインストールのために自動スクリプトを実行します:cd tools/emulatorCreator && python HookerInstaller.py -s SDK_PATH -a Hooker_test -t ANDROID_TARGET -d AVD_DIRECTORY、
  • Pythonのログが指示したら:
    • SuperSUアプリを開き、"Continue"をクリックしてSUバイナリを更新し、"Normal"インストールモードを選択し、しばらく待ちます。"OK"をクリックし("Reboot"ではありません!)、アプリを終了します。
    • Substrateアプリを開き、"Link Substrate Files"をクリックし、Substrateを許可して、再度"Link Substrate Files"をクリックします。
    • ADBを使用してAPK-instrumenter APKをインストールします。
    • Substrateアプリケーションがポップアップしたら、"Restart System (Soft)"をクリックします。
    • システムの再起動を待ち、ロック画面のセキュリティを無効にします:Menu > System Settings > Security > Screen lock > None
    • エミュレータを閉じます。
  • 自動スクリプトを使用したくない場合は、次の点を覚えておく必要があります:
    • Hookerが正しく動作するにはSDカードが必要です。
    • Hookerはスナップショットが有効である必要があります。android-studioを使用してAVDを作成する場合は注意してください:スナップショットの使用を困難にするバグ(または機能、わかりません)があります...

参考までに、エミュレータの準備方法のビデオをこちらで見ることができます。

Hookerを実行するホストの設定

elasticsearchホストがAndroidエミュレータとは別のホストにある場合は、ネットワーク経由でトラフィックをリダイレクトする必要があります。これを行うには、socatを使用できます:

root@kitploit:~
$ socat -s -v TCP4-LISTEN:9200,fork,ignoreeof,reuseaddr TCP4:192.168.98.11:9200,ignoreeof

OpenGLESエミュレーションに関するエラー(Could not load OpenGLES emulation library)が発生した場合は、ldconfigを(rootとして)編集する必要があります:

root@kitploit:~
# echo "/path/to/your/sdk/tools/lib" > /etc/ld.so.conf.d/android.conf
# ldconfig

HOOKERを実行する

1つの特定のアプリケーションを解析する手動実験の実行方法に関するデモを、このビデオで見ることができます。

実機での利用

実機でHookerを使用したい場合は、まず専用のREADMEをお読みください。

設定ファイルのセットアップ

  • 手動解析を行いたい場合は、ファイル hooker_xp/sampleManualAnalysis.conf をコピーします。
  • 自動解析を行いたい場合は、ファイル hooker_xp/sampleAutomaticAnalysis.conf をコピーします。
  • 実機で解析を行いたい場合は、*RealDevice* 設定ファイルのいずれかをコピーします。
  • システム設定に応じて、採用した設定ファイルで宣言されているさまざまなパラメータをカスタマイズします。サンプル設定ファイルはverbose++なので、コメントを読んでください。
  • 前の手順に関連して、構築したリファレンスAVDへのパスを指定する必要があります。コメントで説明されているように、AVDのパス+名前を入力します。つまり、.avd拡張子は付けません。

ElasticSearchとKibanaの起動

Hookerはイベントを保存するためにElasticSearchを、それらを解析するためのフロントエンドとしてKibanaを使用します。アプリケーションの解析を支援するために、tools/kibana-dashboard ディレクトリにKibanaダッシュボードの例を用意しました。これを使用するには、最初の実験を実行してから、filekibana-export.jsonをインポートする必要があります。ダッシュボードをインポートするには、URL http://localhost:5601 にアクセスして、次の操作を行います:

  • Settings -> Objects に移動します。
  • Import をクリックします。
  • 利用可能なダッシュボードを選択します。

実験の実行

Python実験スクリプトは hooker_xp ディレクトリにあります:

root@kitploit:~
$ cd hooker_xp && python hooker_xp.py -c yourAnalysisConfigurationFile.conf 

何が行われているかを説明するPythonログが表示されるはずです。

貢献

この作業の改善にご協力いただければ幸いです。 バグ修正や改善はGitHubの機能を使用して提供してください。

作者とスポンサー

Hookerプロジェクトは、Georges BossertとDimitri Kirchnerによって開始されました。 2人ともフランスのITセキュリティ企業であるAMOSSYS http://www.amossys.fr に勤めています。

ライセンス

このソフトウェアはGPLv3ライセンスの下でライセンスされています。完全なライセンス文書については、配布ディレクトリの最上位にある LICENSE ファイルを参照してください。

ツールをダウンロード