linhere20 / unidbg

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

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

unidbg

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

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

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 bit.
  • Inline hook, thanks to HookZz.
  • Android import hook, thanks to xHook.
  • IOS fishhook and substrate hook.
  • Support simple console debugger, gdb stub, experimental IDA android debugger server, instruction trace, memory read/write trace.

TODO

  • Working iOS emulation.
  • Add more iOS syscall.

Thanks

About

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

License:Apache License 2.0


Languages

Language:Java 98.5%Language:Objective-C 0.9%Language:C 0.5%Language:Shell 0.1%Language:Makefile 0.0%Language:Batchfile 0.0%