It’s built on top of PyQt5 and can be started with ease on any OS. Uses frida in the backend which support almost any arch.
Allows to perform dynamic instrumentation with a kickass UI. Our frida agent is loaded into the target which allows to set breakpoints (on the JVM as well for Android target) and watchpoints. It allows to break at module constructors to instrument initialization functions. Tracers, registers with telescope and various panels are available to reduce the pain of debugging.
The problem in debugging and analysis is always figuring out a way to make the things faster. Dwarf provide some ways to accelerate the process.
- Can be started with a mix of command line arguments to spawn and inject our agent in the target:
python3 dwarf.py -t android -sp -p com.android.target -s myagent.js
- There are api which allows to control the target from the ui and the ui from the target