2011-01-23 11 views
8

Sto cercando di eseguire class-dump un'app per iPad per esplorare la sua architettura. Ho estratto il file .ipa usando The Unarchiver e dall'interno della cartella Payload, ho eseguito il dump di classe sul file .app. Tuttavia, ottengo questo errore:Come scaricare le app per iPad dalla classe?

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

Qualche idea?

Grazie.

+9

"Questo file è crittografato "dovrebbe essere un suggerimento ... –

+1

C'è un modo per aggirare questo? – jasonbogd

+3

@jasonbogd: è crittografato per un motivo ... – aqua

risposta

0

È possibile provare a smontarlo, ad esempio con IDA Pro. Ha il supporto per il braccio.

+0

Che non ti aiuterà a descriverlo ... –

16

Il problema qui è che il file binario ottenuto è stato firmato e crittografato per essere utilizzato su App Store. Per classificare la discarica o disassemblarla, è necessario ottenere un binario non crittografato. Il modo più semplice per ottenere questo è use GDB to dump the executable quando è in esecuzione (poiché l'iPhone decodifica il file binario per eseguirlo).

Ovviamente, ciò richiede un dispositivo jailbroken.

+1

+1 Ma con l'avvertenza che non dovresti fare questo a meno che tu a) abbia il permesso esplicito dall'autore (s) dell'applicazione per farlo eb) non erano in grado di ottenere semplicemente una copia diretta della fonte da guardare. E anche allora è un po 'incerto. – darvids0n

+1

io personalmente penso che questo tipo di informazioni sensibili non dovrebbe essere dato su siti come SO. per esempio, ho sempre del lavoro extra da fare per assicurarmi che la mia app non venga sfruttata in questo modo, e in secondo luogo, è l'etica dell'ingegneria del software. nessuna guerra intesa, solo dicendo. – Viren

+2

@Viren Security non si basa sui metodi di occultamento o sull'oscurità e ciò non funziona nella pratica. – zaph

5

ho scritto un articolo su come è possibile utilizzare gdb e gli altri strumenti di debug per decifrare un'applicazione IOS in modo da poter scaricare le informazioni di classe utilizzando la classe-dump-z

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

+0

Eccellente articolo! Molto utile :) – Fitblip

+0

Grazie @Firblip, felice che tu l'abbia trovato utile – PhoenixCoder

Problemi correlati