对于每个选定的字节,Ida Pro 会在输入文件中显示可以找到该字节的偏移量(显示在 Ida-View 和 Hex-View 的底部栏中)。使用 idapython API 时如何检索此信息?
如何在idapython中提取一个字节的输入文件偏移量?
逆向工程
艾达
蟒蛇
2021-06-24 10:27:46
1个回答
在查找函数时,您应该始终检查 SDK 标头。这两个列在loader.hpp
:
// Get offset in the input file which corresponds to the given ea
// If the specified ea can't be mapped into the input file offset,
// return -1.
idaman int32 ida_export get_fileregion_offset(ea_t ea);
// Get linear address which corresponds to the specified input file offset.
// If can't be found, then return BADADDR
idaman ea_t ida_export get_fileregion_ea(int32 offset);
所以你可以像这样从 IDAPython 使用它们:
offset = idaapi.get_fileregion_offset(ea)
ea = idaapi.get_fileregion_ea(offset)
注意:并非所有 SDK 功能都在 Python 中公开。如果您绝对需要仅在 C API 中可用的东西,您可以使用ctypes
调用它。