Closed asLody closed 7 years ago
大部分模块啥 没什么问题, 指令修复模块
和 指令写模块
, 可能要参考 frida-gum
做适配.
希望近期可以照着frida-gum先适配一下Arm/Thumb
,我的项目: VirtualApp 会用到你的HookZz。
支持Android不需要熟悉dex,做好ios的,只需要少量改动就可以移植过来
我的需求是,Hook所有IO有关的syscall,然后将路径重定向。
嗯, 很早关注过 VirtualApp, 很厉害(我之前在做 so 注入的时候, 在对于利用 .gnu.hash
进行 find_symbol
时花了很长时间搞定, 之后发现在 VirtualApp 很早就有实现 ).
是要模拟 sandbox?
好, 近期会搞下, 希望与大佬多多交流.
有联系方式吗?QQ/Wechat?
WeChat: winter1ife
QQ: 858982985 (只不过比较少用)
我也有这想法, 因为SubstrateModule似乎不支持arm64, 目前也没发现好用的64位hook框架. 不过有个潜在的问题是, 引入capstone会使得bin比较大。
另外, VirtualApp的IO重定向似乎漏了对/storage/emulated/0/Android/data/的重定向
@rrrfff 实际上用 capstone
只解析了几条指令, 在 arm/arm64
指令长度是可以判断. 在 x86/x64
上指令长度的判断可能比较难. 这个在指令修复时要用到. 之后(arm/arm64)可能加上一个编译选项是否启用 capstone
?
@jmpews x86/x64上有许多更为轻量的disassembler可用来计算指令长度, 比如Hacker Disassembler Engine, LDasm等等, 所以最好是能直接脱离capstone
但是目前来说更稳定/更健壮还是 capstone
, 大部分的 disassembler
几乎都没啥更新了(虽然本身可能都不需要啥更新).
已经支持 arm/arm64/ios/android, 并移除 capstone, 关闭这个 issue 了.
因为我之前关注在 ios 上, 觉得的 ios 上的 ARM/Thumb 很少了, 会入不敷出. 然后问了一个朋友, 好像 android 上大多数还是 32 位.
所以有想过支持 android 的, 可最近 一两个周没有太多时间, 而且如果支持也可能是 so 等多些工作, 对 dex 不熟, 对 ELF 层次比较熟.