iOS逆向之fishHook怎么通过符号找字符串

fishhook中原本就有怎么通过符号查找字符串的说明,如下图:
image.png

现在以上一篇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

猜你喜欢

转载自www.cnblogs.com/WinJayQ/p/9098143.html