Objection Tutorial
📌What is Objection?
Objection is a runtime mobile application exploration framework powered by Frida, designed to help security researchers and pentesters analyze and modify the behavior of iOS and Android applications.
It allows you to interact with a mobile app during runtime without needing to modify the app's source code or recompile it.
📍Key Features of Objection
Bypass SSL Pinning
Dumping Data (e.g., dump databases, shared preferences)
Hooking and Modifying App Behavior
Exploit Discovery
Runtime Analysis
📍Installation
pip3 install objection📍Connection
Make a regular ADB connection and start the Frida server on the device
Start Objection:
objection --gadget <app_package_name> explore
📍Basic Actions
Environment: Some interesting information (like passwords or paths) could be found inside the environment.
Import frida script
Bypass SSL Pinning
Root detection
Static analysis made Dynamic
List activities, receivers, and services
Getting the current activity
List all classes in our app
Search Methods of a class
List declared Methods of a class with their parameters
Hooking (watching) a method
Hooking (watching) an entire class
Changing boolean return value of a function
List all modules
List exports that exist in the module
📍When to Use Objection Instead of Frida?
Ease of Use:
Objection is more user-friendly, offering ready-to-use commands for common tasks like SSL pinning bypass and dumping data.
Frida is more flexible but requires custom scripts and a deeper understanding for detailed control.
Pre-built Functions:
Objection includes pre-built functions for common tasks (e.g., dumping keychain data, bypassing SSL pinning).
Frida requires custom scripting for similar tasks.
Exploratory Tasks:
Use Objection for quick exploration and testing of common mobile security issues.
Advanced Customization:
Use Frida for advanced analysis and building custom instrumentation scripts for specific attacks.