sensepost

objection: Explore Mobile Apps at Runtime with Frida

objection is a Frida-powered runtime exploration toolkit for assessing Android and iOS app security without requiring a jailbreak. It gives mobile security testers command-line access to app internals, including filesystems, memory, keychains and runtime objects.

ActivePythonGPL-3.0SecurityAndroidCLI
View on GitHub Compare
Stars
9.5k
Forks
1k
Last commit
9 days ago
Contributors
66
Releases, 12 months
6

Our take

Activerecent releases

Health score

57/100

How it is scored
Activity
49
Community
51
Issues
83
Pull requests
46
  • Closes issues faster than 81% of the projects we track

objection is an actively maintained Frida-based toolkit with recent releases and broad contributor participation, though most contributions come from one person.

Good fit if

  • You assess Android or iOS apps and want runtime exploration built on Frida.
  • You need command-line access to app files, memory, keychains, or runtime objects.
  • You can work with Python 3.11 or newer and the GPL-3.0 license.

Look elsewhere if

  • You need a general-purpose mobile development or device-management tool rather than a security assessment toolkit.
  • Your project cannot meet GPL-3.0 licensing obligations.
  • Your workflow depends on a project whose contributions are not concentrated among a small number of maintainers.
All health signals
Last commit2026-10-27 (9 days ago)
Commits, last 90 days2
Releases, last 12 months6 (latest 1.12.5, 2026-06-02)
Contributors66 (top contributor: 86% of commits)
Issues closed, last 90 days12 (typically closed in 0 days)
Pull requests merged, last 90 days2
Project age9 years

Checked on 2026-11-06 with the GitHub API.

Project history

Daily GitHub snapshots since Nov 7, 2026. History covers stars and forks; health signals are not tracked historically.

Selected snapshot

Stars

9,487

Forks

1,011

More snapshots will appear as the daily collection continues.

Overview

objection is a runtime mobile exploration toolkit built on Frida, the instrumentation framework it uses to inspect and interact with apps. It helps security testers assess Android and iOS applications at runtime, including in situations where they do not have a jailbroken device.

The project packages common mobile assessment tasks behind an objection command, so testers can explore app containers and runtime state without writing each interaction from scratch. It is aimed at mobile application security work, rather than general app development or end-user device management.

Key Features

  • Supports runtime exploration of both Android and iOS applications.
  • Inspects and interacts with application container filesystems.
  • Provides SSL pinning bypass capabilities for testing app network behavior.
  • Dumps keychains on supported targets.
  • Supports memory-related tasks, including dumping and patching.
  • Explores and manipulates objects on the heap.

Use Cases

  • A mobile penetration tester can inspect an app's runtime behavior during an Android or iOS assessment.
  • A security reviewer can examine files stored in an app container and look for sensitive data exposure.
  • A tester can bypass SSL pinning in a controlled assessment to inspect application network traffic.
  • A researcher can inspect keychains, process memory, or heap objects while investigating how an app handles secrets and data.

What you need

Detected in the repository

  • Python >=3.11 (from pyproject.toml)
  • A test suite and automated checks on GitHub Actions

License in plain words

GPL-3.0strong copyleft

  • Commercial use: yes
  • Modify and redistribute: yes
  • You must keep: the license notice
  • Share your changes: yes, the full source of anything you distribute that includes it, under the GPL
  • Includes an explicit patent grant from the contributors:

A summary, not legal advice: the LICENSE file is what applies.

Getting Started

Install with Python's package manager:

pip3 install objection

This installs the objection command. See the README and installation wiki for setup and usage details.

Considerations

The project is active, with recent commits and multiple releases in the past year, but its contribution history is concentrated: one contributor accounts for most of the code. It has a Python 3.11-or-newer requirement and is licensed under GPL-3.0, which teams should review before incorporating it into a workflow. The repository describes it as powered by Frida, so adoption also means working within Frida-based instrumentation workflows.

Found this useful?

Share it with someone who would like objection.