设备: iPhone8p 13.3.1
环境: xcode10.2 MonkeyDev
需求: 绕过越狱检测 (kernbypass已搞定)
本人: 菜得一批
最近发现了一个应用"BDO Personal", 我发现使用类似 AppleTrace, VVAppTrace, AppTrace, 都无法勾到msgSend. 但是写的Demo又能看到. 所以比较奇怪, 这种是怎么做到绕过的?
1.发现它在越狱和非越狱状态下, 使用不同的delegate. DummyDelegate/VMDellegate. 自行hook main函数替换了, 无效;
2. 发现一个C函数updateJailbreakDeviceFlag(). IDA和Hopper伪代码如下图; 直接用了hopper把里面的内容nop掉, 无效;
3. 想到AppleTrace看下调用记录, 发现生成的trace.appletrace文件内容大小确定, 和其他正常的一样16M+, 但是这个解析不出来…
此App解压结构如图:
网上查了下这个KonMain.framework, 感觉像是有点像ReactNative的路子.
上面的其实都是伪命题, 其实我想问, 这种结构的应用, 有什么方式可以快速分析它;