数据分析师的日常Mac优雅用程序员

macOS Interface Inspector逆向破解

2017-10-19  本文已影响88人  采菊东篱下

介绍

Interface Inspector 本身是一个逆向的辅助工具,可以attach到正在执行的应用上,查看界面元素在内存中的地址。

其中用到了第三方的框架mach_inject

破解

这个程序本身很好绕过License验证机制。只需要修改两个地方即可。

第一个地方便是需要绕过applicationWillFinishLaunching中的codeSignState的验证,只要将返回值的判断从0x2修改为0x1即可。


第二个地方是绕过注册registerLicenseWithName函数中的逻辑。将原来的je修改为jne就可以了。

修改完成后通过Hopper生成新的二进制程序,代码签名清除掉就可以了。

Bug修复

修复完成后就可以直接运行了,只不过在Attach程序的时候会报错。原因就是因为这个软件使用了mach_inject_bundle.framework框架,macOS 10.12上__pthread_set_self函数修改为了_pthread_set_self,不过作者已经修复了这个bug。所以只需要重新安装一下这个框架到/Library/Frameworks目录中就可以了。

后续

可以参考网上其他公开的方法来破解。
本文只作记录逆向学习使用,破解完成后切勿公开,支持正版软件。

上一篇下一篇

猜你喜欢

热点阅读