mcpField
F
frida-script-review

frida-script-review

github.com/rudra-raviTesting & quality7107 installsUpdated 25w ago
Repository

About frida-script-review

frida-script-review is a review skill for people preparing to run public, generated, or mutation-heavy Frida scripts. It checks platform assumptions, hook timing, mutation risks, and script safety, then suggests focused changes and verification.

Key features

  1. 01Identify platform assumptions
  2. 02Inspect mutation points and timing
  3. 03Check pointers, overloads, and lifetimes
  4. 04Flag risky hooks and logging
  5. 05Recommend edits and verification

Use cases

  1. 01Reviewing a generated Frida script before execution
  2. 02Reducing broad hooks to target behavior
  3. 03Checking pointer and string handling risks

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/rudra-ravi/frida-skills --skill frida-script-review

After installing, type/frida-script-reviewin Claude Code to confirm it loaded.

Bundled filesagents/openai.yaml

Details

From the project README

Frida Script Review

Use this skill before running public, generated, or mutation-heavy Frida scripts.

Review Pass

  1. Identify platform assumptions: Android, iOS, native, desktop, Gadget.
  2. Identify mutation points: return replacement, argument rewrite, file writes, process control, network changes.
  3. Check timing: spawn vs attach, module load, class loader, ObjC availability.
  4. Check safety: null pointers, overloads, string lifetimes, retval copies, recursion, noisy hooks.
  5. Reduce broad bundles to the hooks relevant to the target behavior.

Red Flags

  • Blind universal bypass without proof of which hook fired.
  • Native pointer reads without null or length checks.
  • String replacement into fixed buffers without proving buffer size.
  • Java method hook without explicit overload where overloads exist.
  • ObjC selector assumed without checking ObjC.available and class/method presence.
  • retval or argument wrappers stored for later use instead of copied.
  • Logs that print secrets unnecessarily.

Hardening Pattern

Before mutation:

console.log("hook fired", targetName);
console.log(Thread.backtrace(this.context, Backtracer.ACCURATE)
  .map(DebugSymbol.fromAddress).join("\n"));

After proof:

if (shouldPatchThisCall()) {
  retval.replace(1);
}

Output

Return:

  • Risk summary.
  • Exact lines or hook blocks to keep, remove, or change.
  • Safer reviewed script or patch.
  • Verification command and expected proof.

References

Comments

Markdown supported