Dynamic instrumentation using Frida
This section shows the usage of a tool called Frida to perform dynamic instrumentation of Android applications.
What is Frida?
Frida is an open source dynamic instrumentation toolkit that enables reverse engineers and programmers to debug a running process. It's a client-server model that uses Frida core and Google v8 engine to hook a process.
Unlike the Xposed framework, it's very easy to use and doesn't need extensive programming and there is no need to restart the device either. With a wide range of platform support on Android, iOS, Linux, Mac, and Windows and powerful APIs, it's one of the best tools to create reverse engineering tools during penetration testing. Frida currently has API bindings for Python, node.js, and .NET and provides them if you would like to create bindings for other programming languages.
Prerequisites
As discussed in Chapter 1, Setting Up the Lab, we need the following to get Frida working with our test app:
A rooted Android phone...