使用現在免費的 BinDiff 4.2,您可以完成一些工作。
在BinDiff安裝目錄中( zynamics / BinDiff 4.2
),您會找到 bin / differ.exe
和 bin / differ64.exe
。這些是用於IDB和 .BinExport
文件的批量差異的二進製文件。
基本用法為:
differ --primary = <directory- with-IDBs> --output-dir = <輸出目錄>
不幸的是,由於 differ.exe
找不到,這不起作用(至少在我的機器上) IDA的可執行文件並嘗試執行該目錄。
為解決此問題,我們將使用以下命令導出IDB:
“ <path-to-idaq.exe>”- -OExporterModule:<result-directory> -S“ <path-to-export-script>”“ <path-to-idb>”
export-script
是一個 .idc :
#include <idc.idc>static main(){Batch(0);等待(); Exit(1-RunPlugin(“ zynamics_binexport_8”,2));}
將所有 .BinExport
文件放在一個目錄中後,運行原始的該目錄上的> differ.exe
命令(為該目錄提供 .BinExport
文件而不是 .idb
文件),您將獲得 .BinDiff 文件。這些可以在IDA中打開,也可以手動解析(它們是SQLite數據庫)。