背景与思路:
本文严重参照《如何定位 Obj-C 野指针随机 Crash ( 三篇 ) 》
橙其第一篇,提高野指针的出现 crash 的概率
因为野指针引起的崩溃,不是必现
已经分配的内存,与指向他的指针,存在 1 对多的关系
分配的内存,被标记回收了,随时可能被写入
写入的内容的随机的,体现出野指针, 崩不崩溃,啥时候崩溃的随机性质
这个时候,使用苟活的指针,很可能取出错误的内容,再去执行原来类的方法
一般出现这个错误,EXC_BAD_ACCESS
思路
第一篇采用手动代码,内存污染的形式,
通过 fishhook
, hook 对象的 free 方法,
拿到 free 的对象指针,涂改为 0x55
memset(obj, 0x55, memSiziee);
将随机问题,确定化。只要 free 掉,就不是原来的了
第 2 篇,极限提高野指针的出现 crash 的概率
该释放的内存,有可能我们代码涂成了 0x55,
苹果的操作系统,又分配了同样类型的对象,
<