3

これに対する答えは、「インポート アドレス テーブルを参照してください」ではありません。

特に、使用しているライブラリと Windows API 関数をよりよく理解するために、生成しているいくつかのバイナリを分析したいと考えています。私は Dependency Walker を使用してこれを調べましたが、私が行ったテストのいくつかは、たとえ呼び出されていなくても、IAT に追加の関数呼び出しが多数含まれている可能性があることを示しています。

私が探しているのは、IAT に入れられているものだけでなく、呼び出されている関数を特定する方法です。

最善の方法は、おそらくそれを逆にしてすべての「CALL」を調べることですが、それを行う良い方法もわかりません。

これを行う最善の方法は何ですか?

4

3 に答える 3

1
  1. WinDbg (Windows のデバッグ ツール) を起動します。
  2. 分析する実行可能ファイルを開きます。
  3. 次のコマンドを実行します

    • !logexts.loge
    • !logexts.logo ev (詳細ログを有効にします)
    • !logexts.logo et (テキスト ログを有効にします)
    • g

Windows のデバッグ ツールに付属しているログ ビューアー ツールを開いて、API を確認します。デフォルトのログ パスは、desktop\logexts です。

于 2013-10-21T14:20:43.173 に答える
0

それが「最善の方法」かどうかはわかりませんが、すべての CALL で概要がよくわかるという提案には同意します。

「Ollydbg」デバッガーを使用すると、プログラムをロードし、プロセスのexeモジュールに移動して、右クリック->検索->すべてのモジュール間呼び出しを実行できます。

これにより、モジュールに表示され、他のモジュールにつながるすべての「CALL」のソート可能で検索可能なリストが表示されます。

于 2013-10-16T23:17:17.697 に答える