2

iOS .appファイルを逆コンパイルしてから、コードを挿入してから、ipaファイルに再パッケージ化する必要があります。

それを行う方法についていくつかの指針を提案していただけますか?

4

2 に答える 2

5

あなたは単にこれを行うことはできません.

アプリがマシン コードにコンパイルされると、リバース エンジニアリングから得られる最善の方法はアセンブリに過ぎず、修正をアセンブリに記述しない限り、コードをどのように統合するのかわかりません。

また、これを行うとコード署名が破損します。マシンに有効なプロビジョニングが設定されていない限り、元のコード署名でアプリを再パッケージ化することはできません。

ソースまたは類似のソースを入手して、必要な機能を備えたアプリを作成してください。

于 2012-06-28T16:01:27.663 に答える
3

はい、デバイスがジェイルブレイクされていて、署名チェックが削除されている場合は可能です。

ここに 1 つのケースがあります。

iOS バイナリを編集して再コンパイルすることはできますか?

返信では、変更がバイナリで直接行われたことが示唆されています (一部の関数を同じサイズの他の関数に置き換えることによって)。でも、もっと高度なことはできると思います。

たとえば、XCode を使用して、アプリケーションのアセンブリを独自の Objective-C コードに含めることができます。

iPhone プロジェクトと一緒にアセンブリ (.S) ファイルをコンパイルする

または、変更したアセンブリをバイナリ (mach-o) に直接コンパイルしてから、再パッケージ化します。

iPhoneのマッチョファイルを作成するには?

おそらく、 GNU ARMまたはLLVM ツールチェーンがこれを行うのに役立つでしょう: LLVM ツールチェーンを使用してコンパイル、アセンブル、および逆アセンブル

私が現在調査しているいくつかのアプローチがあります。簡単ではないので、このトピックに関する他のノウハウがあれば非常に高く評価されます。

于 2012-08-20T15:12:16.157 に答える