Skip to content
/ unidbg Public
forked from zhkl0228/unidbg

Allows you to emulate an Android ARM32 and/or ARM64 native library, and an experimental iOS emulation

License

Notifications You must be signed in to change notification settings

Driving/unidbg

 
 

Repository files navigation

unidbg

Allows you to emulate an Android native library, and an experimental iOS emulation.

This is an educational project to learn more about the ELF/MachO file format and ARM assembly.

Use it at your own risk !

License

Simple tests under src/test directory





More tests

Features

  • Emulation of the JNI Invocation API so JNI_OnLoad can be called.
  • Support JavaVM, JNIEnv.
  • Emulation of syscalls instruction.
  • Support ARM32 and ARM64.
  • Inline hook, thanks to Dobby.
  • Android import hook, thanks to xHook.
  • iOS fishhook and substrate and whale hook.
  • unicorn backend support simple console debugger, gdb stub, instruction trace, memory read/write trace.
  • Support iOS objc and swift runtime.
  • Support dynarmic fast backend.
  • Support Apple M1 hypervisor, the fastest ARM64 backend.
  • Support Linux KVM backend with Raspberry Pi B4.

Thanks

One-time Donation

We accept donations via WeChatPay:

WeChat Pay

About

Allows you to emulate an Android ARM32 and/or ARM64 native library, and an experimental iOS emulation

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 83.7%
  • C 9.0%
  • Objective-C 2.7%
  • C++ 2.5%
  • Kaitai Struct 1.2%
  • Shell 0.5%
  • Other 0.4%