mcpField
F
frida-gadget-injection

frida-gadget-injection

github.com/rudra-raviSecurity7111 installsUpdated 25w ago
Repository

About frida-gadget-injection

A skill for embedding Frida Gadget in Android or iOS apps when ordinary attach is unavailable or instrumentation must load from within the app. It guides mode selection, packaging, signing, and verification.

Key features

  1. 01Gadget listen, connect, and script modes
  2. 02Android library and config placement
  3. 03iOS embedding and app re-signing
  4. 04Device and process verification
  5. 05Configuration troubleshooting

Use cases

  1. 01Instrumenting an app without root or jailbreak
  2. 02Loading instrumentation before target behavior
  3. 03Running an embedded script without an interactive host

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/rudra-ravi/frida-skills --skill frida-gadget-injection

After installing, type/frida-gadget-injectionin Claude Code to confirm it loaded.

Bundled filesagents/openai.yamlreferences/gadget-patterns.md

Details

From the project README

Frida Gadget Injection

Use this skill when normal attach is blocked, root or jailbreak is unavailable, or instrumentation must load from inside the target app.

Decide Gadget Mode

  • Use listen mode when a host should attach after the app starts.
  • Use connect mode when Gadget should call back to a host.
  • Use script mode for an embedded script that must run without an interactive host.
  • On jailed iOS, account for code-signing policy before relying on Interceptor.

Android Shape

  1. Match Gadget architecture to APK ABI.
  2. Place the Gadget .so where the app will load it.
  3. Add the matching .config file beside Gadget.
  4. Load the library early enough for the target behavior.
  5. Rebuild, sign, install, and run the app.

Example config:

{
  "interaction": {
    "type": "listen",
    "address": "127.0.0.1",
    "port": 27042
  }
}

iOS Shape

  1. Match Gadget to device architecture and Frida version.
  2. Embed Gadget in the app bundle or dynamic library load path.
  3. Add the .config file named exactly like the Gadget binary plus .config.
  4. Re-sign the app with the required entitlements.
  5. Launch the app and connect with Frida tools.

Verify

frida-ls-devices
frida-ps -Uai
frida -U Gadget

If Gadget does not appear, verify library load, config filename, app signing, architecture, and logs before editing hooks.

References

Read references/gadget-patterns.md for configuration examples and troubleshooting.

Comments

Markdown supported