手把手教你如何破解付费MacApp 2
2019-08-05 本文已影响0人
pengweijun
1.打开正版reveal体验效果
有第三方devMateKit那个挡板
![](https://img.haomeiwen.com/i1001389/1e6e276dba27c0a8.png)
2.开个xcode,attach
看到以下弹窗
![](https://img.haomeiwen.com/i1001389/d839b4f8bb4742ee.png)
开了反调试,拖 Reveal.app 进hopper
搜ptr,找到 imp_stubsptrace 把实现改成ret了,替换excu文件,xcode-attach结果看到以下弹窗
![](https://img.haomeiwen.com/i1001389/210a300b7fca73fa.png)
简单看下没啥线索,回头继续看看hopper,记录下看到的线索This copy of Reveal is damaged",
3.hopper搜索 “f Reveal is damaged”
![](https://img.haomeiwen.com/i1001389/6d9b375141c0a1e6.png)
然后一路X看梦境来源
![](https://img.haomeiwen.com/i1001389/6bc7c545f12f0d63.png)
X了3次之后看到一个嫌疑函数,又是一路光明大道,另一路非常坎坷,试试把下图的jne改成jmp强行走光明大道。
![](https://img.haomeiwen.com/i1001389/1d7cf8503bbfa276.png)
观察弹框
xcode 设置symbol breakpoint 看看 windowwillload
(lldb) po $rdi
<Reveal.ActivationWindowController: 0x608000175240>
4.找到线索&结局
runActivationWindowInMode:initialActivationInfo:withCompletionHandler:
结合 第三方devMateKit demo看看发现里面也有这玩意
接着解题就大概有两种思路
1.把这个方法干掉。
【进去Reveal.app 找到第三方DevMateKit.framework Version-A-DevMateKit 把上面的线索方法ret了,然后保存新的excu文件丢到老地方重新打开,可以用了Reveal了】
2.把前置条件进入这方法的逻辑出改成不进入此方法(说的有点绕,实际就是看哪调,如果调的不多,一般不会多,就把判断调这方法的地方改了)
【不建议走这条路】