BinDiff
评估大量二进制文件(数千个),目前我只需要BinDiff的某些指令级统计信息,可以从其转储的sqlite
文件中轻松获取这些信息。 但是我的问题是,使用IDA / BinDiff的GUI测试成千上万的二进制文件似乎很耗时。特别是
BinDiff
,从命令行将其输出转储出来吗?有可能这样做吗? 我有一些使用命令行ida的经验,但这仅限于执行某些IDAPython脚本。
该测试是在Windows 7和IDA-Pro 6.6和BinDiff 4.1上进行的。
#1 楼
您可以尝试以下步骤:将二进制文件转换为IDB:
$IDA_PATH\idaq.exe -B -p+ $FILE_TO_CONVERT
从idb创建
BinExport
$IDA_PATH\idaq.exe -A -SC:\bindiff_export.idc
其中
bindiff_export.idc
如下所示:要比较文件,可以直接在BinExports
上使用BinDiff:#include <idc.idc>
static main()
{
Batch(0);
Wait();
Exit( 1 - RunPlugin("zynamics_binexport_5", 2 ));
}
评论
这可能会有所帮助:zynamics.com/kb/kb0004.html吗?我知道我在某处读过它。您仍然必须启动IDA来生成idb文件,但是据我所知,也可以通过命令行来完成。 hex-rays.com/products/ida/support/idadoc/417.shtml似乎涵盖了这一点,请检查-B参数。