質問:
idapythonでバイトの入力ファイルオフセットを抽出する方法は?
Christopher Mann
2013-09-25 18:35:03 UTC
view on stackexchange narkive permalink

選択したバイトごとに、Ida Proは、バイトを見つけることができる入力ファイルのオフセットを表示します(Ida-ViewとHex-Viewのボタンバーに表示されます)。 idapython APIを使用しているときにこの情報を取得するにはどうすればよいですか?

1 回答:
Igor Skochinsky
2013-09-25 19:35:25 UTC
view on stackexchange narkive permalink

関数を探すときは、常にSDKヘッダーを確認する必要があります。これら2つは loader.hpp にリストされています。

  //指定されたeaに対応する入力ファイルのオフセットを取得します//指定されたeaができない場合入力ファイルオフセットにマップされ、//-1を返します。 idaman int32 ida_export get_fileregion_offset(ea_t ea); //指定された入力ファイルオフセットに対応する線形アドレスを取得します。//見つからない場合は、BADADDRを返します。idamanea_tida_export get_fileregion_ea(int32 offset);  

これらはIDAPythonから次のようになります:

  offset = idaapi.get_fileregion_offset(ea)ea = idaapi.get_fileregion_ea(offset) 

注:すべてのSDK関数がPythonで公開されています。 C APIでのみ利用可能なものがどうしても必要な場合は、 ctypes を使用して呼び出すことができます。



このQ&Aは英語から自動的に翻訳されました。オリジナルのコンテンツはstackexchangeで入手できます。これは、配布されているcc by-sa 3.0ライセンスに感謝します。
Loading...