Retour au classement

iGio90/Dwarf

Python

Full featured multi arch/os debugger built on top of PyQt5 and frida

fridapyqt5reverse-engineeringcrackingunicorn-emulatorcapstone-enginekeystone-engineandroidioswindowslinux
Croissance des étoiles
Étoiles
1.3k
Forks
175
Croissance hebdomadaire
Issues
5
5001k
déc. 2018juin 2021janv. 2024juil. 2026
ArtefactsPyPIpip install dwarf
README

Dwarf

PyPI pyversions PyPI version shields.io GitHub license GitHub issues

A debugger for reverse engineers, crackers and security analyst. Or you can call it damn, why are raspberries so fluffy or yet, duck warriors are rich as fuck. Whatever you like! Built on top of pyqt5, frida and some terrible code.

Known Issues

  • JavaTraceView is distorted
  • JavaTraceView shows weakref/handle instead of value

We are working on Dwarf 2.0 release

Installation

pip3 install dwarf-debugger

Development

pip3 install https://github.com/iGio90/Dwarf/archive/master.zip

Usage

Debugging UI (attach wizard)

dwarf

Debugging UI (straightforward)

dwarf -t android com.facebook.katana
dwarf -t android 2145
dwarf -t ios 2145
dwarf -t local /usr/bin/cat /etc/shadow

Debugging UI (own agent)

dwarf -t android -s /path/to/agent.js com.facebook.katana
dwarf -t local -s /path/to/agent.js /usr/bin/cat /etc/shadow

Dwarf typings + injector

$ dwarf-creator
project path (/home/igio90/test):
> 
project name (test):
> 
Session type (local)
[*] L (local)
[*] A (android)
[*] I (iOS)
[*] R (remote)

append i to use dwarf-injector (ai | android inject)
> ai
target package (com.whatsapp)
> com.whatsapp

$ (./intelliJ || ./vsCode).open(/home/igio90/test)
    .echo('enjoy scripting with frida and dwarf api autocompletition and in-line doc')

$ ./dwarf if myOs == 'unix' else 'dwarf.bat'

Dwarf trace

dwarf-trace -t android --java java.io.File.$init com.facebook.katana

* Trying to spawn com.facebook.katana
* Dwarf attached to 19337
java.io.File $init
    /data  - java.io.File
    misc

java.io.File $init
    /data/misc  - java.io.File
    user

...
dwarf-trace -t android --native --native-registers x0,x1,sp open+0x32
dwarf-trace -t android --native --native-registers x0,x1,sp targetModule@0x1234
dwarf-trace -t android --native --native-registers x0,x1,sp 0xdc00d0d0
dwarf-trace -t android --native --native-registers x0,x1,sp popen

DwarfCore (source of core.js)

Core for the Python version of dwarf https://github.com/iGio90/DwarfCore/tree/core1





Javascript | License | Become a patron | Slack

Dépôts similaires
frida/frida

Clone this repo to build Frida

MesonOtherfridainstrumentation
frida.re
21.4k2.2k
sensepost/objection

📱 objection - runtime mobile exploration

PythonPyPIGNU General Public License v3.0mobilepentest
9.3k989
firerpa/lamda

Android Full-Stack Device Control Platform: WebRTC/H.264 remote desktop, UI/OCR/image-matching automation, one-click MITM, built-in Frida, proxy/VPN/frp/P2P networking, MCP/Agent, 160+ APIs, designed for multi-device clusters and engineered deployments.

PythonPyPIMIT Licenseadbandroid
device-farm.com
7.9k1.1k
CreditTone/hooker

🔥🔥 hooker is a Frida-based reverse engineering toolkit for Android. It offers a user-friendly CLI, universal scripts, auto hook generation, memory roaming to detect activities/services, one-click SOCKS5 proxy setup, Frida JustTrustMe, and BoringSSL unpinning for all apps.

JavaScriptnpmfridaandroid
5.2k1.3k
alphaSeclab/awesome-reverse-engineering

Reverse Engineering Resources About All Platforms(Windows/Linux/macOS/Android/iOS/IoT) And Every Aspect! (More than 3500 open source tools and 2300 posts&videos)

reverse-engineeringidapro
5k901
ax/apk.sh

Makes reverse engineering Android apps easier, automating repetitive tasks like pulling, decoding, rebuilding and patching an APK.

ShellGNU General Public License v3.0androidapk
3.8k225
dweinstein/awesome-frida

Awesome Frida - A curated list of Frida resources http://www.frida.re/ (https://github.com/frida/frida)

Creative Commons Zero v1.0 Universalfridaawesome
3.5k367
hookmaster/frida-all-in-one

《FRIDA操作手册》by @hluwa @r0ysue

HTMLfridaawesome
3.1k616
m0bilesecurity/RMS-Runtime-Mobile-Security

Runtime Mobile Security (RMS) 📱🔥 - is a powerful web interface that helps you to manipulate Android and iOS Apps at Runtime

JavaScriptnpmGNU General Public License v3.0mobile-securityandroid-security
twitter.com/mobilesecurity_
3k411
AFLplusplus/LibAFL

Advanced Fuzzing Library - Slot your Fuzzer together in Rust! Scales across cores and machines. For Windows, Android, MacOS, Linux, no_std, ...

Rustcrates.ioOtheraflafl-fuzz
2.6k476
iddoeldor/frida-snippets

Hand-crafted Frida examples

JavaScriptnpmfridahooking
2.5k439
Ch0pin/medusa

Mobile Edge-Dynamic Unified Security Analysis

JavaScriptnpmGNU General Public License v3.0malwaredynamic-analysis
github.com/Ch0pin/medusa/wiki
2.3k318