題:
通過IDAPython實現IDA Pro / IDAPython自動化
user3119546
2013-12-30 23:38:03 UTC
view on stackexchange narkive permalink

我一直在嘗試通過IDAPython使用IDA Pro(帶有bindiff)來自動執行bios.dump文件的分析過程,同時將結果輸出到.txt / .asm文件。從這裡開始,我想使用bindiff函數將該數據庫與另一個數據庫進行比較,並將所有差異輸出到文件中。有什麼建議嗎?

二 答案:
tmr232
2016-10-12 01:23:11 UTC
view on stackexchange narkive permalink

使用現在免費的 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數據庫)。

joxeankoret
2013-12-31 00:17:42 UTC
view on stackexchange narkive permalink

如果您詢問以批處理模式使用BinDiff:抱歉,您不能。這是有意限制的。

由於什麼原因受到限制?
我猜是VxClass。但是我不知道原因,對不起。
您是否知道我可能要研究的其他軟件,可以用來遠程比較兩個二進製文件/ BIOS文件?
有很多比較工具(kdiff等),但是它們不像BinDiff。
無論如何,我可以將bindiff結果導出到可讀文本(.txt)文件中嗎?我似乎只能通過IDA GUI查看結果,而在發送報告時,BinExports不是我想要的。


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...