1

文書化されていない API の .h ファイルの取得に関する情報を読みました。ほとんどの情報源は class-dump (または class-dump-x と class-dump-z) を推奨しています。

ただし、iPhone Security.framework では機能しません。Objective-C ランタイム情報は含まれません。

私が見つけた他の唯一の方法は、nmまたはを使用することotoolです。これにより、関数の名前とそれらの逆アセンブリが得られます。

逆アセンブルを読んで、どのパラメーターがどこに行き、それが何であるかを理解しようとするよりも、文書化されていない関数の署名を取得するためのより速い方法を知っている人はいますか?

4

2 に答える 2

3

これは、ここに文書化されている、文書化されていないAPIを意味します。

Security.frameworkは、非公開または文書化されていません。

ヘッダーに関する限り、3.2sdkのハードドライブにインストールされています。

/Security.framework/Headers/Security.h /Security.framework/Headers/Secbase.h /Security.framework/Headers/SecCertificate.h /Security.framework/Headers/SecIdentitiy.h /Security.framework/Headers/SecImportExport.h /Security.framework/Headers/SecItem.h /Security.framework/Headers/SecKey.h /Security.framework/Headers/SecPolicy.h /Security.framework/Headers/SecRandom.h /Security.framework/Headers/SecTrust.h

少しリバースエンジニアリング101に関しては、フレームワークにヘッダーファイルや関数シグネチャが含まれていないか、とにかく使用されていないことを理解する必要があります。提供される場合、それらは開発者の利益のためだけにあります。コンパイルされたフレームワークにはC、C ++、またはObjective-Cコードはなく、生のマシンコードのみが含まれます。

ご覧のとおり、objective-cが使用された場合、Class-Dumpは、Objective-cシンボルをヘッダーファイルのようなものに配置するのに非常に優れた仕事をすることができますが、実行時に使用されないタイプ情報のみが欠落しているため、便利です。

ソース言語がCだった場合、あなたは困惑しています。関数名のシンボルがあるかもしれませんが、引数や戻り値のタイプに関する情報はありません。

于 2010-11-17T15:18:26.173 に答える
1

公式ドキュメントに記載されていない、ドキュメント化されていない追加の API がたくさんあります。例として、それらの一部を以下に示します。

http://www.opensource.apple.com/source/Security/Security-55163.44/sec/Security/

于 2013-03-04T20:36:20.210 に答える