2011-01-23 14 views
8

iPadアプリのクラスダンプを実行してそのアーキテクチャを調べようとしています。私はThe Unarchiverを使って.ipaファイルを展開し、Payloadフォルダの中から.appファイルにclass-dumpを実行しました。しかし、私はこのエラーが表示されます:iPadアプリをクラスダンプする方法は?

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

アイデアはありますか?

ありがとうございました。

+9

を使用してクラス情報をダンプすることができますので、あなたがiOSアプリケーションを解読するためにGDBや他のデバッグツールを使用する方法についての記事を書かれている「このファイルは暗号化されています"ヒントになるはずです... –

+1

これを回避する方法はありますか? – jasonbogd

+3

@jasonbogd:理由のために暗号化されています... – aqua

答えて

0

IDA Proなどで分解することができます。それは腕をサポートしています。

+0

それはそれを解読するのに役立ちません... –

16

ここで問題となるのは、取得したバイナリが署名され、App Storeで使用するために暗号化されていることです。クラスをダンプまたは逆アセンブルするには、暗号化されていないバイナリを取得する必要があります。これを取得する最も簡単な方法は、実行中のとき(iPhoneがバイナリを復号化して実行するため)、use GDB to dump the executableです。

もちろん、これにはjailbrokenデバイスが必要です。

+1

+1あなたがそうしなければならないという警告があります。a)これを行うには、b)単に見るためのソースの直接コピーを得ることができませんでした。そして、それでもそれはちょっとしたことです。 – darvids0n

+1

私は_personally_このような機密情報はSOのようなサイトには与えてはならないと考えています。私のアプリがこのように悪用されないようにするために余計な作業が必要であり、第2にソフトウェア工学の倫理に反しています。戦争は意図されておらず、ただ言います。 – Viren

+2

@Viren Securityは、メソッドやあいまいさを隠すことに依存せず、実際には機能しません。 – zaph

関連する問題