如何分类转储iPad应用程序?

我正在尝试运行class-dump一个iPad应用程序来探索它的架构。 我使用Unarchiver提取了.ipa文件,在Payload文件夹中,我在.app文件上运行了class-dump。 但是,我收到此错误:

/* * Generated by class-dump 3.3.3 (64 bit). * * class-dump is Copyright (C) 1997-1998, 2000-2001, 2004-2010 by Steve Nygard. */ #pragma mark - /* * File: /Users/jason/Desktop/foo/Foo.app/Foo * UUID: 1234567890 * Arch: arm v7 (armv7) * * Objective-C Garbage Collection: Unsupported * This file is encrypted: * cryptid: 0x00000001, cryptoff: 0x00001000, cryptsize: 0x00073000 */ 

有任何想法吗?

谢谢。

这里的问题是您获得的二进制文件已经过签名和加密,可以在App Store上使用。 要对转储或反汇编进行分类,您需要获取未加密的二进制文件。 最简单的方法是使用GDB在可执行文件运行时转储它(因为iPhone解密二进制文件来运行它)。

当然,这将需要一个越狱设备。

我写了一篇文章,介绍如何使用gdb和其他调试工具解密IOS应用程序,以便您可以使用class-dump-z转储类信息

http://timourrashed.com/decrypting-ios-app/

您可以尝试将其拆解,例如使用IDA Pro。 它支持arm。