这可能完全没有道理,但我真的很陌生,我真的很感激一些帮助!
基本上我正在尝试修补(又名 nop)iOS 应用程序中的 obj-c 函数。我已经成功解密了它,我可以用 otool 反汇编它。不用说,原始应用程序已被剥离,因此在反汇编中没有结构。
然后我听说class-dump-z哪个是类转储的修改版本,能够为您提供给定函数实现的 VM 地址。
的输出class-dump-z -A:
#import <XXUnknownSuperclass.h> // Unknown library
#import "SomeHeader.h"
@class NSString;
__attribute__((visibility("hidden")))
@interface CensoredClassName : XXUnknownSuperclass <SomeDelegate> {
}
@property(readonly, copy) NSString* debugDescription;
@property(readonly, copy) NSString* description;
@property(readonly, assign) Class superclass;
@property(readonly, assign) unsigned hash;
-(void)showJailbreakAlert; // 0x1498d <--Patch this Method
@end
我的问题:如何将给定的实现 VM 地址转换为我可以修补的二进制文件偏移量?或者更好的是如何在文本反汇编中找到方法?简单地在用otool -tV命令生成的反汇编中搜索偏移量不会返回任何结果。
非常感谢您提前
马耳他
PS 链接到 Class-Dump-Z Google 代码页:这里