介紹
Interface Inspector 本身是一個逆向的輔助工具,可以attach到正在執(zhí)行的應(yīng)用上寄锐,查看界面元素在內(nèi)存中的地址。
其中用到了第三方的框架mach_inject
破解
這個程序本身很好繞過License驗證機制辨萍。只需要修改兩個地方即可谜嫉。
第一個地方便是需要繞過applicationWillFinishLaunching中的codeSignState的驗證,只要將返回值的判斷從0x2修改為0x1即可镶蹋。
第二個地方是繞過注冊registerLicenseWithName函數(shù)中的邏輯成艘。將原來的je修改為jne就可以了。
修改完成后通過Hopper生成新的二進制程序贺归,代碼簽名清除掉就可以了淆两。
Bug修復(fù)
修復(fù)完成后就可以直接運行了,只不過在Attach程序的時候會報錯牧氮。原因就是因為這個軟件使用了mach_inject_bundle.framework框架琼腔,macOS 10.12上__pthread_set_self函數(shù)修改為了_pthread_set_self,不過作者已經(jīng)修復(fù)了這個bug踱葛。所以只需要重新安裝一下這個框架到/Library/Frameworks目錄中就可以了丹莲。
后續(xù)
可以參考網(wǎng)上其他公開的方法來破解。
本文只作記錄逆向?qū)W習(xí)使用尸诽,破解完成后切勿公開甥材,支持正版軟件。