Как сделать дамп приложений для iPad? - PullRequest
8 голосов
/ 24 января 2011

Я пытаюсь запустить приложение класса iPad для изучения его архитектуры. Я извлек файл .ipa с помощью Unarchiver и из папки Payload запустил class-dump для файла .app Тем не менее, я получаю эту ошибку:

/*
 *     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
 */

Есть идеи?

Спасибо.

Ответы [ 3 ]

16 голосов
/ 09 августа 2011

Проблема в том, что полученный вами бинарный файл был подписан и зашифрован для использования в App Store.Чтобы классифицировать dump или дизассемблировать его, вам нужно получить незашифрованный бинарный файл.Самый простой способ получить это - использовать GDB для выгрузки исполняемого файла во время его работы (так как iPhone расшифровывает исполняемый файл для его запуска).

Конечно, для этого потребуется устройство с джейлбрейком.

5 голосов
/ 06 января 2014

Я написал статью о том, как вы можете использовать gdb и другие средства отладки для расшифровки приложения IOS, чтобы вы могли вывести информацию о классе с помощью class-dump-z

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

0 голосов
/ 01 февраля 2011

Вы можете попытаться разобрать его, например, с помощью IDA Pro.У него есть поддержка для руки.

...