iOS 14.3 以后就不能通过动态修改代码段权限实现inlineHook了,注入Cydia也是不行的。用FishHook能实现部分功能
越狱插件调用的函数MSHookMessageEx来自Cydia Substrate,非越狱环境没有这个函数当然会失效
感谢大佬回复,我打包集成ipa的时候也一起注入了Substrate,但还是不行,是Substrate不支持高版本iOS吗(测试14.5.1和15.4都是不行)?
如果想让它运行的话,有什么办法呢
1 个赞
iOS 14.3 以后就不能通过动态修改代码段权限实现inlineHook了,除非是在调试模式下,或者曾经在调试模式下,比如frida 的spawn模式注入script然后continue。所以我好奇注入Substrate后没有crash?
没有,也可能是目标插件做了特殊的处理,非越狱环境下不生效所以不会Crash
一开始我用MSHOOK写的插件,非越狱环境下打开会直接Crash,后来换了FishHook以后就没有Crash了。应该是注入Substrate但不调用的话是没事的
是的,调用到了才会崩溃
我现在的猜测是目标插件可能做了什么处理,如果是非越狱环境就不继续了,但是不知道是用什么方式去检测的。
目前发现起码目标插件是会检测包名的,这个已经解决了。
但是如果目标插件的核心功能使用了MSHookMessageEx的话可能就没什么办法了