使用 Xcode 调试第三方应用

要使用 lldb 对应用进行断点调试,首要的前提就是 lldb 能附加到指定的应用上。而要能让 lldb 附加到应用上,就需要 debugserver 工具的帮助。

一直以来,我们都是使用配置过了 task_for_pid 权限的 debugserver 来调试越狱环境下的第三方应用。由于 iOS 上原版的 debugserver 不可写,因此我们无法使用修改过的 debugserver 来对其进行覆盖,而 Xcode 上的 lldb 会直接使用原版的 debugserver 来进行应用的附加。这样导致的结果就是,我们只能在命令行上对第三方应用进行断点调试。

使用 FLEX 调试任意第三方应用

本文章的源码已经上传到 GitHub:https://github.com/buginux/FLEXLoader

最近有一篇文章很火,这篇文章的作者发现了苹果的一个私有方法,可以在应用中调出悬浮的调试窗口。调试工具很强大,可以在运行时查看视图层级,还能查看各个类的属性和实例变量,不得不说,这对开发者来说是一件利器。

但是,其实在这个私有方法被发现之前很久,就已经有一个开源的应用内调试工具可以提供类似甚至更强大的功能了,那就是 Flipboard 公司开源的 FLEX。至于这个调试工具的功能有多逆天,大家可以自行上它的 Github仓库进行查看,这里就不赘述了。

破解 Mac 版 Ulysses 试用

本着“如无必要,勿增实体”的原则,一直以来都是直接使用 vim 或者 sublime 编写 markdown 文档的。但是,作为一个程序员,总有一颗不安分的心,现在市面上有那么多优秀的 markdown 编辑器,不去试用一番,总觉得缺了点什么。

经过一轮试用,最终决定使用 Ulysses。其实,像 MWeb,Bear,MarkEditor 这些在编辑方面都是不相上下的,最终选择 ulysses 只是因为它的一个小功能,那就是文档的数字统计和目标功能。对于字数统计之前就一直想要有这个功能,但是 vim 里的 airline 不支持中文字数的统计,而且在提过 issue 后作者表明没有打算实现中文字数统计的功能,因此一直也是个缺憾。至于目标功能,对于像我这种不能坚持写文章的人也有奇效,实在不想写的时候,就给自己定一个字数,然后在写的过程中看着字数一点点朝着目标前进,也是一种相当有效的自我激励方式。

破解 Mac 迅雷离线下载

最近在刷豆瓣的电影 Top250,因此下载需求大大增加了,之前我一般都是直接使用浏览器直接进行下载,现在不得已还是用到了迅雷。

本来想说买一个月的会员专门用来下载电影,然而我立马又想到,既然一直在逆向 iOS,这次何不试试 Mac 上的逆向,把迅雷给破解了呢。