0

IDA で現在のバイナリにコードを追加し、保存してからバイナリを再コンパイルすることはできますか? 私はGoogleを調べましたが、IDAがこれを行うことができるかどうかについての提案はありません. そうでない場合、時代遅れのファームウェアにかなり重い変更を加えるのに最適なものは何ですか?

ファイルから追加のクラス/関数をロードする必要がありますか?

4

2 に答える 2

0

IDAを使用してソースデータファイルを再コンパイルすることはできません(メインメインにあるプログラムの「EXEファイルの作成」ツールは何もしません-基本的に、選択した出力ファイルタイプが使用されていないことを使用者に通知するメッセージボックスでスタブされますサポートされています)。

唯一のオプションは、ソースファイルのコンパイラでコードをコンパイルし、カスタム(コンパイル済み)コードをダンプするソースファイルのイメージに新しいセグメントを追加し、元のコード(.text)セグメントの適切な場所にパッチを適用して呼び出すことです。あなたのコード。IDAがステップ#2と#3に必要な種類の静的パッチをサポートしているかどうかはわかりませんが、おそらくそれを支援する他のツールが見つかります(OllyDbgから始めることができます)。

私はこれまでそのようなことをしようとしたことがないので、塩を少し入れて提案してください。ただし、任意のセグメントがアタッチされているさまざまなバイナリを見てきました。

編集:あなたがそれにいる間にこの質問を見てください-IDAproasmの指示が変更されます

于 2011-11-22T11:23:21.203 に答える