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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
androidqf — androidqf(Android Quick Forensics)は、Androidデバイスから迅速にフォレンジック証拠を収集し、侵害の痕跡を特定するのに役立ちます。 | Kitploit
ツール/GitHubGitHub/mvt-project/androidqf
Androidセキュリティフォレンジックモバイルフォレンジックデータ復旧デジタルフォレンジック脅威インテリジェンスインシデントレスポンス
GitHubmvt-project/androidqf

androidqf

androidqf(Android Quick Forensics)は、Androidデバイスから迅速にフォレンジック証拠を収集し、侵害の痕跡を特定するのに役立ちます。

リポジトリを見る
2304116日前Kitploit レビュー済み

人気

すべて見る →

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

すべてのツールを探索

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

すべてのツールを見る →
共有
ウェブサイト

androidqf

Go Report Card

androidqf(Android Quick Forensics)は、Android端末から関連するフォレンジックデータの取得を簡素化するポータブルツールです。

androidqfは、Android端末からデータを迅速に取得するためのシンプルでポータブルなクロスプラットフォームユーティリティを提供することを目的としています。機能的にはmvt-androidに似ていますが、MVTとは異なり、androidqfは技術に詳しくないユーザーでも簡単に実行できるように設計されています。androidqfで抽出されたデータはMVTで分析できます。

このリポジトリは、Amnesty InternationalのSecurity Labがメンテナンスしているandroidqfのフォークです。androidqfツールは元々Claudio Guarnieriによって開発されました。

androidqfをダウンロード

ビルド

Linux、Windows、Mac用の実行可能バイナリは、最新のリリースで入手可能です。バイナリの実行に問題がある場合は、自分でビルドすることもできます。

GoReleaserを使用したビルド(推奨)

このプロジェクトは、自動ビルドとリリースにGoReleaserを使用しています。ローカルでビルドするには:

  1. GoReleaserをインストール:

    root@kitploit:~
    go install github.com/goreleaser/goreleaser@latest
    
  2. スナップショットビルドを実行(公開なし):

    root@kitploit:~
    ./build_locally.sh
    

これにより、dist/ディレクトリにすべてのプラットフォーム用のバイナリが作成されます。これには、IntelとApple Siliconの両方で動作するmacOS用のユニバーサルバイナリが含まれます。

Makeを使用したビルド(レガシー)

従来のMakefileアプローチも引き続き使用できます。Go 1.23+ がインストールされている必要があり、さらに make、git、unzip、wget が必要です。AndroidQFには、ターゲットデバイスで実行され、フォレンジック関連情報をより確実に抽出するためにクロスコンパイルされた collector が含まれています。

まず collector モジュールをビルド:

root@kitploit:~
make collector

次に、AndroidQFを選択したプラットフォーム用にコンパイル:

root@kitploit:~
make linux
make darwin
make windows

これらのコマンドは、build/ フォルダにバイナリを生成します。

バンドルアセットなしの配布パッケージ用ビルド

配布パッケージは、unbundle ビルドタグを使用してビルドすることで、バンドルされたADBおよびcollectorバイナリの埋め込みをオプトアウトできます:

root@kitploit:~
go build -tags unbundle -o build/

このタグが有効な場合、androidqfは以下を期待します:

  • adb がシステムの PATH から利用可能であること。
  • collectorバイナリが、androidqfが期待する名前(collector_arm や collector_arm64 など)で /usr/lib/androidqf/android-collector/ の下にインストールされていること。

パッケージャーは、ビルド前に assets/ からバンドルされたバイナリアセットを削除してもかまいませんが、assets/ パッケージディレクトリとそのGoソースファイルは存在している必要があります。unbundle ビルドは依然として assets パッケージをインポートするため、assets/ ディレクトリ全体が削除されるとビルドは失敗します。

コンテナイメージ

リリースコンテナイメージはGitHub Container Registryに公開されています:

root@kitploit:~
docker pull ghcr.io/mvt-project/androidqf:latest

LinuxでUSB接続されたAndroidデバイスから収集するには、USBバスを通過させ、出力ディレクトリをマウントします:

root@kitploit:~
docker run --rm -it --privileged \
  -v /dev/bus/usb:/dev/bus/usb \
  -v "$(pwd)/output:/output" \
  ghcr.io/mvt-project/androidqf:latest -fast -output /output

リリースバージョン用にローカルでイメージをビルドすることもできます:

root@kitploit:~
docker build --build-arg VERSION=1.8.3 -t androidqf .

使い方

[!TIP] アーカイブ形式、整合性ハッシュ、暗号化、大規模ファイルの処理については、収集アーカイブを参照してください。収集されたファイルの辞書については、サードパーティのSocialTIC AndroidQF出力ファイル辞書を参照してください。

androidqfを起動する前に、ターゲットのAndroidデバイスをUSB経由でコンピュータに接続し、USBデバッグを有効にしておく必要があります。これを行う方法については、公式ドキュメントを参照してください。ただし、メーカーによっては、デフォルトとは異なるナビゲーション手順が必要な場合があることに注意してください。

USBデバッグが有効になったら、androidqfを起動できます。最初にUSBブリッジ経由でデバイスへの接続を試みます。これにより、Android端末がホストキーの手動認証を求めるプロンプトを表示します。必ず認証してください。理想的には永続的に認証し、プロンプトが再表示されないようにしてください。

androidqfが実行され、現在の作業ディレクトリ、または -output で指定されたディレクトリに収集zipアーカイブが作成されます。実行中、androidqfがいくつかの選択肢をプロンプト表示します。これらのプロンプトは、選択が行われるまで収集を一時停止するため、注意してください。

以下のデータを抽出できます:

すべての収集には、acquisition.json、ログ出力が生成された場合は command.log、および hashes.csv も含まれます。ハッシュリストは、各先行プレーンテキストアーカイブエントリのSHA-256ダイジェストを記録し、それ自体は含みません。失敗したデバイスからのプルはアーカイブエントリとしてコミットされません。詳細は収集アーカイブを参照してください。

オプションデータ収集について

バックアップ

androidqf 収集を実行すると、以下のオプションが表示されます:

root@kitploit:~
Would you like to take a backup of the device?
...
? Backup:
  ▸ Only SMS
    Everything
    No backup

これらのオプションは、バックグラウンドで adb backup コマンドを実行してデバイスから収集するデータを指します。No backup が選択された場合、adb backup コマンドは実行されません。

オプション説明
Only SMSadb backup com.android.providers.telephony が実行されます。com.android.providers.telephony からのデータのみが収集されます。これにはSMSデータベースが含まれます。

アプリのコピーのダウンロード

root@kitploit:~
Would you like to download copies of all apps or only non-system ones?

? Download:
  ▸ All
    Only non-system packages
    Do not download any
オプション説明
Allインストールされているすべてのパッケージが端末から取得されます
Only non-system packagesadb pm list packages -s にリストされているパッケージはダウンロードしません
Do not download anyパッケージをダウンロードしません

侵入ログ

root@kitploit:~
Would you like to take the Intrusion Logs of the device?

? Intrusion Logs:
  ▸ Yes
    No
オプション説明
Yes侵入ログが端末から取得されます。
No侵入ログの収集はスキップされます。

暗号化と潜在的な脅威

androidqfの収集データを暗号化されていないドライブに持ち運ぶと、自分自身、さらにはデータを取得した相手を重大なリスクにさらす可能性があります。例えば、問題のある国境で止められ、androidqfドライブが押収される可能性があります。生データは旅行の目的を明らかにするだけでなく、非常に機密性の高いデータ(インストールされているアプリのリストやSMSメッセージなど)を含んでいる可能性があります。

理想的にはドライブを完全に暗号化するべきですが、それが常に可能とは限りません。VeraCryptコンテナ内にandroidqfを配置し、マウントするためのVeraCryptのコピーを一緒に持ち運ぶことも検討できます。ただし、VeraCryptコンテナは通常パスワードのみで保護されており、そのパスワードの提供を強制される可能性があります。

代替手段として、androidqfでは提供されたage公開鍵を使用して各収集を暗号化できます。できれば、この公開鍵はエンドユーザーが秘密鍵を所有していない、または少なくとも持ち歩いていないキーペアに属するものにします。これにより、エンドユーザーは強制下でも収集データを復号できなくなります。

androidqfは各収集をzipアーカイブにストリーム出力します。現在の作業ディレクトリに key.txt というファイルを置くと、androidqfはzipストリームをageで暗号化し、<UUID>.zip.age を書き込みます。そうでない場合は、暗号化されていない <UUID>.zip を書き込みます。androidqfは実行可能ファイルと同じフォルダの key.txt もチェックします。両方のファイルが存在する場合、現在の作業ディレクトリが優先されます。

暗号化された収集は平文の収集アーカイブを作成しません。暗号化アーカイブに追加される前に検証が必要なデバイスファイルは、認証付きChaCha20-Poly1305暗号化で一時的にステージングされます。完全なデータフローと大規模APKの動作については、収集アーカイブを参照してください。

暗号化された収集ファイルを取得したら、次のようにageで復号化できます:

root@kitploit:~
$ age --decrypt -i ~/path/to/privatekey.txt -o <UUID>.zip <UUID>.zip.age

ただし、高度なフォレンジック技術により、少なくとも一部の暗号化されていないデータが復元される可能性が常にあることに留意してください。その対策に取り組んでいます。

ライセンス

androidqfの目的は、高度なモバイルスパイウェア攻撃の標的となる可能性のある人々、特に市民社会や疎外されたコミュニティのメンバーのデバイスの同意に基づくフォレンジック分析を容易にすることです。androidqfが同意しない個人のプライバシー侵害を助長することを望んでいません。したがって、このライセンスの目標は、敵対的フォレンジックの目的でのandroidqf(および同じライセンスのソフトウェア)の使用を禁止することです。

これを達成するために、androidqfはMozilla Public License v2.0を改変したMVT License 1.1の下でリリースされています。この修正ライセンスには、新しい条項3.0「Consensual Use Restriction」が含まれており、ライセンスされたソフトウェア(およびそれから派生した「Larger Work」)の使用を、データが抽出および/または分析される人物(「Data Owner」)の明示的な同意がある場合にのみ許可します。

ツールをダウンロード
データオプション?出力パス
SMSおよびMMSメッセージの完全バックアップまたはバックアップ。✅backup.ab
getpropシェルコマンドの出力。ビルド情報と設定パラメータを提供。getprop.txt
すべてのシステム設定settings_*.txt
psシェルコマンドの出力。実行中のすべてのプロセスのリストを提供。processes.txt
システムサービスのリスト。services.txt
システムからのすべてのログのコピー。logs/、logcat.txt
dumpsysシェルコマンドの出力。デバイスに関する診断情報を提供。dumpsys.txt
インストールされているすべてのパッケージと関連する配布ファイルのリスト。packages.json
インストールされているすべてのAPK、またはシステムアプリとしてマークされていないもののみのコピー。✅apks/*
侵入ログのログ。ナビゲーション履歴などのプライベートデータを含む。✅intrusion_logs/*
システム上のファイルのリスト。files.json
一時フォルダで利用可能なファイルのコピー。tmp/*
システムおよびアプリ固有のログを含むバグレポート。プライベートデータは含まれません。bugreport.zip
Everythingadb backup -all が実行されます。この方法でデータのバックアップを明示的に許可したアプリのみのバックアップを要求します。Android 12以降では、この方法はほとんどのアプリに対して何も抽出しません。
No backupadb backup は実行されません