codeexec-audit

Detect Android code-execution sinks fed by attacker-controlled data in decompiled APKs.

48|27|Updated Jul 30, 2026
One-click install
npx skills add https://github.com/abisheikM1/Tribunal --skill codeexec-audit-abisheikm1
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: codeexec-audit
Source: https://github.com/abisheikM1/Tribunal/tree/main/legacy-harness/skills/codeexec-audit
Command: npx skills add https://github.com/abisheikM1/Tribunal --skill codeexec-audit-abisheikm1

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? Android apps that load DEX files, native libraries, or deserialize objects from attacker-controlled sources can yield arbitrary code execution, but finding these bugs requires manually tracing every dangerous sink back to its input source across thousands of decompiled classes. ## Core Features & Use Cases - Sink Triage: Consumes sinks.json and filters to the five code-execution sinks (DexClassLoader, System.load, ObjectInputStream, reflection, Runtime.exec), ranking them by severity and grouping by file. - Source-Tracing Guidance: For each hit, explains why it is risky and gives the exact static follow-up to determine whether the sink argument is attacker-controlled. - TTP Catalog & Chaining: Documents five TTPs (dynamic DEX loading, insecure native library path, insecure deserialization, unsafe reflection, TOCTOU races) with cross-skill attack chains like Zip Slip to code execution and the Play Core CVE-2020-8913 pattern. - Use Case: After decompiling an authorized-test APK and running grep_sinks.py, run the audit script to get a ranked list of dangerous execution sinks with per-finding static analysis steps and observe-only Frida trace hints. ## Quick Start Run the bundled audit script against a target's sinks.json to triage code-execution sinks and get a ranked static follow-up plan.

Frequently Asked Questions about codeexec-audit

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I detect insecure dynamic code loading in an Android APK?

Decompile the APK with jadx, run grep_sinks.py to produce sinks.json, then run audit_codeexec.py to filter DexClassLoader and System.load hits. Trace each sink's path argument back to external storage, HTTP downloads, or intent extras to confirm attacker control.

How to test Android apps for insecure deserialization vulnerabilities?

Look for ObjectInputStream.readObject, getSerializableExtra, and custom Parcelable createFromParcel implementations fed by exported component intents. The skill's T3 covers the Play Core CVE-2020-8913 pattern where an attacker-shaped object drives a file write leading to persistent code execution.

What input does the codeexec-audit script require?

It requires a sinks.json file produced by grep_sinks.py, located at targets/<hash>/sinks.json or passed directly via --sinks. It outputs a severity-ranked triage report in text or JSON format and never executes or loads anything itself.

Does this skill generate exploit payloads for Android code execution?

No. It is detection and methodology only, providing static analysis steps and observe-only Frida hooks that log sink arguments without modifying behavior. For full weaponized PoCs it directs you to cite disclosed reports such as the Oversecured Play Core write-up.

Why does the audit report zero codeexec hits on my target?

Zero hits means grep_sinks.py found no DexClassLoader, System.load, ObjectInputStream, reflection, or Runtime.exec matches. Confirm sinks.json is from the correct target hash and that the jadx decompilation output was populated before the scan ran.