iOS逆向之fishHook怎么通过符号找字符串
2018-05-27 本文已影响1人
WinJayQ
在fishhook中原本就有怎么通过符号查找字符串的说明,如下图:
现在以上一篇iOS逆向之fishHook原理探究中的NSLog为例来说明一下:
1、通过懒加载表Lazy Symbol Pointers找到动态表Dynamic Symbol Table->Indirect Symbols
懒加载表Lazy Symbol Pointers与动态表Dynamic Symbol Table是一一对应的关系
image.png
image.png
2、动态表的Data值找到Symbol Table->Symbols
在Indirect Symbols中找到Data值 0x7A,换成10进制是122。Data值其实就是一个下标,是一个真正符号表的下标。
image.png
在Symbols表中找到偏移量Offset为122的值_NSLog
_是函数的开始 .是分隔符
image.png
3、根据Symbols的偏移值Data,在String Table找到字符串
-
Symbols的偏移为:0x9B
image.png -
String Table的起始值是:0x4EFC
image.png -
字符串的位置:0x4EFC + 0x9B = 0x4F97
_是函数的开始 .是分隔符
根据0x4F97可以找到: _NSLog.
image.png