GToad / Android_Inline_Hook

Build an so file to automatically do the android_native_hook work. Supports thumb-2/arm32 and ARM64 ! With this, tools like Xposed can do android native hook.
334 stars 95 forks source link

《Android Native Hook工具实践》文章中的疑问 #4

Open GToad opened 6 years ago

GToad commented 6 years ago

《Android Native Hook工具实践》文章里的问题就发这里哈,这样方便我定期从这个issue下面找东西补充文章。

GToad commented 6 years ago

回答bitefoo的问题:默认是thumb模式编译,因此没有“LOCAL_ARM_MODE := arm”的话,就会优先编译成thumb指令集,而本项目中即便是thumb目标的应用,stub和hook_function也需要用arm编译。因此官方默认的thumb优先会影响本项目,所以本项目强制用“LOCAL_ARM_MODE := arm”来保证stub和hook_function部分一定是arm模式。

dreamzgj commented 5 years ago

GToad你好 请问关于NDK限制机制的linker.cpp是如何修改的? 可不可以不使用AOSP,直接修改自己手机系统中的/bin/linker和linker64跳过这个限制?

GToad commented 5 years ago

static bool is_greylisted(const char name, const soinfo needed_by) 我把这整个函数直接return true了。

任何可以注入进进程的方法都可以的,不过别的方法可能会影响本库中attribute((constructor))自动执行,可能需要自己想办法调用这个so库里的hook功能函数。

QiYueColdRain commented 5 years ago

细节一中在确定thumb2要备份指令大小时,为什么不直接从首地址开始向后确定每条指令的类型来决定备份8 字节,10字节 or 12 字节,而是从后向前判断疑似指令来确定?

GToad commented 5 years ago

正向反向都可以的

GToad commented 5 years ago

都可以的~

发送自 Windows 10 版邮件应用

发件人: QiYueLengYu 发送时间: 2019年2月27日 10:36 收件人: GToad/Android_Inline_Hook 抄送: GToad; Author 主题: Re: [GToad/Android_Inline_Hook] 《Android Native Hook工具实践》文章中的疑问 (#4)

细节一中在确定thumb2要备份指令大小时,为什么不直接从首地址开始向后确定每条指令的类型来决定备份8 字节,10字节 or 12 字节,而是从后向前判断疑似指令来确定? — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.