frida-gadget-injection について
通常のアタッチがブロックされる場合や、アプリ内から計測を読み込む場合に、Android または iOS アプリへ Frida Gadget を組み込む手順を案内するスキルです。モード選択、パッケージ化、署名、検証を扱います。
主な機能
- 01Gadget の listen、connect、script モード
- 02Android ライブラリと設定ファイルの配置
- 03iOS への組み込みとアプリの再署名
- 04デバイスとプロセスの確認
- 05設定のトラブルシューティング
活用シーン
- 01root や脱獄なしでのアプリ計測
- 02対象の動作前に計測を読み込む場合
- 03対話型ホストなしでの埋め込みスクリプト実行
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ rudra-ravi/ frida-skills --skill frida-gadget-injectionインストール後、Claude Code で/frida-gadget-injectionを入力して読み込まれたか確認します。
同梱ファイルagents/openai.yamlreferences/gadget-patterns.md
詳細
Frida Gadget のインジェクション
通常のアタッチがブロックされている場合、root 化またはジェイルブレイクが利用できない場合、あるいは対象アプリ内から計測を読み込む必要がある場合に、このスキルを使用してください。
Gadget のモードを選択する
- アプリの起動後にホストからアタッチする場合は、
listenモードを使用してください。 - Gadget からホストにコールバックさせる場合は、
connectモードを使用してください。 - 対話型ホストなしで実行する必要がある埋め込みスクリプトには、
scriptモードを使用してください。 - ジェイルブレイクされていない iOS では、
Interceptorに依存する前にコード署名ポリシーを考慮してください。
Android の構成
- Gadget のアーキテクチャを APK の ABI に合わせます。
- アプリが読み込む場所に Gadget の
.soを配置します。 - 対応する
.configファイルを Gadget の隣に配置します。 - 対象の動作に間に合うように、ライブラリを早期に読み込みます。
- アプリを再ビルドして署名し、インストールして実行します。
設定の例:
{
"interaction": {
"type": "listen",
"address": "127.0.0.1",
"port": 27042
}
}
iOS の構成
- Gadget をデバイスのアーキテクチャと Frida のバージョンに合わせます。
- Gadget をアプリバンドルまたは動的ライブラリの読み込みパスに埋め込みます。
- Gadget バイナリと同じ名前に
.configを付けた名前の.configファイルを追加します。 - 必要なエンタイトルメントを付与してアプリに再署名します。
- アプリを起動し、Frida ツールで接続します。
確認
frida-ls-devices
frida-ps -Uai
frida -U Gadget
Gadget が表示されない場合は、フックを編集する前に、ライブラリの読み込み、設定ファイル名、アプリの署名、アーキテクチャ、ログを確認してください。
参考資料
設定例とトラブルシューティングについては、references/gadget-patterns.md を参照してください。
コメント
Markdown 対応