Hack Cornerstone to load more logs

Cornerstone 每次只能 load 50 条 logs,所以想看 log 的时候,需要频繁点击 load 按钮,非常麻烦。

用 Hopper Disassembler 分析了一下它的代码,发现下面几处被 hardcode 成了 50:

  • [V4LogTableViewController init]

  • [V4LogTableViewController controller]

  • [V4Log init]

  • [V4Log log]

将这些函数里面的 mov edx, 0x32 改成 mov edx, 0xff,这样每次就可以 load 255 条 logs 了。

Comments Share

How to solve codesign issue "signature too large to embed"

最近在更换了苹果开发者证书后,用 codesign 签名时会报错:signature too large to embed。大意就是签名数据太大,超出了限制。

根本原因

通过查看 codesign源代码发现,它会对签名数据的大小进行限制,默认限制是 9000。

state.mCMSSize = 9000;

可以通过 --signature-size 这个私有参数来手动控制该限制的值,而不使用这个默认值。该参数并不是 codesign 的公开参数。

具体用法

codesign --signature-size 10000 -s "XXX"

网上看到有人说利用 --timestamp=none 可以解决该问题,但其实是治标不治本。--timestamp=none 本身会减少签名数据的大小,所以才看似有效果。

Read More

Comments Share

Fix Bug for Interface Inspector on macOS Serria

之前介绍过如何破解 Interface Inspector,近来把系统升级到最新的 macOS Serria 之后,发现 Interface Inspector 不 work 了。启动倒是正常,但每次 attach app 时,总是提示无法 attach,查看 system log,发现有这么一个 error:

log

从 log 中看出,root cause 是 mach_inject_bundle_stub 去 load ___pthread_set_self 时失败了,而这个函数本来应该是在 libSystem.B.dylb 这个系统库里面的。也就是说,macOS Serria 的 libSystem.B.dylb 已经不再有 ___pthread_set_self 这个函数了。于是开始 google,最后在一条 Twitter 上发现了咋回事,是的,___pthread_set_self 已经被替换成了 _pthread_set_self

明白了咋回事,开始考虑怎么解决。

Read More

Comments Share

Swift and Objective-C (Mix and Match)

Swift 与 Objective-C 混编 (to be continued)

Code 直接混编 + Framework 间接混编


< Code 直接混编 >

  • 在 Objective-C code 中使用 Swift code

    Objective-C project: Project_C
    PRODUCT_MODULE_NAME: Project_C_Product

    1. in Project_C’s build settings, set up "Embedded Content Contains Swift Code" to "YES".
    2. in Project_C’s build settings, set up "Objective-C Generated Interface Header Name" to "Project_C_Product-Swift.h".
    3. Swift code should use @objc to mark what you want to expose to Objective-C code.
    4. in Objective-C code, #import "Project_C_Product-Swift.h".

Read More

Comments Share

Hack Interface Inspector

之前在 iOSRE 上看到一篇文章,里面有讲到一个逆向 Mac app UI 的工具 Interface Inspector,扫了一眼,尼玛神器啊,简直就是 Reveal 的 Mac 版。上个图感受一下它的淫威吧:

Interface Inspector

这么好的工具,这么贵的价格,心痒了。好吧,凭借着之前的破解经验,再来搞一次吧。

Read More

Comments Share